@scaleway/changesets-renovate 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/git-utils.d.ts +0 -7
- package/dist/git-utils.js +1 -27
- package/dist/handle-catalog.js +2 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +45 -11
- package/package.json +2 -1
package/dist/git-utils.d.ts
CHANGED
|
@@ -14,11 +14,4 @@ export declare function loadCatalogFromGit(revision?: string, filePath?: string)
|
|
|
14
14
|
*/
|
|
15
15
|
export declare function findChangedDependenciesFromGit(oldRevision: string, newRevision?: string, filePath?: string): Promise<Map<string, string>>;
|
|
16
16
|
export declare function getBumpsFromGit(files: string[]): Promise<Map<string, string>>;
|
|
17
|
-
/**
|
|
18
|
-
* Find packages affected by dependency changes
|
|
19
|
-
* @param changedDeps Array of changed dependency names
|
|
20
|
-
* @param packageJsonGlob Glob pattern to find package.json files
|
|
21
|
-
* @returns Set of package names that are affected by the changes
|
|
22
|
-
*/
|
|
23
|
-
export declare function findAffectedPackages(changedDeps: string[], packageJsonGlob?: string): Promise<Set<string>>;
|
|
24
17
|
export declare function handleChangesetFile(fileName: string): Promise<void>;
|
package/dist/git-utils.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { env } from "node:process";
|
|
2
2
|
import { simpleGit } from "simple-git";
|
|
3
|
-
import { readFile } from "node:fs/promises";
|
|
4
|
-
import { glob } from "tinyglobby";
|
|
5
3
|
import { parse } from "yaml";
|
|
6
4
|
//#region src/git-utils.ts
|
|
7
5
|
/**
|
|
@@ -45,30 +43,6 @@ async function getBumpsFromGit(files) {
|
|
|
45
43
|
await Promise.all(promises);
|
|
46
44
|
return bumps;
|
|
47
45
|
}
|
|
48
|
-
/**
|
|
49
|
-
* Find packages affected by dependency changes
|
|
50
|
-
* @param changedDeps Array of changed dependency names
|
|
51
|
-
* @param packageJsonGlob Glob pattern to find package.json files
|
|
52
|
-
* @returns Set of package names that are affected by the changes
|
|
53
|
-
*/
|
|
54
|
-
async function findAffectedPackages(changedDeps, packageJsonGlob = "packages/*/package.json") {
|
|
55
|
-
if (changedDeps.length === 0) return /* @__PURE__ */ new Set();
|
|
56
|
-
const packageJsonPaths = await glob(packageJsonGlob, { expandDirectories: false });
|
|
57
|
-
const affectedPackages = /* @__PURE__ */ new Set();
|
|
58
|
-
for (const pkgJsonPath of packageJsonPaths) try {
|
|
59
|
-
const json = JSON.parse(await readFile(pkgJsonPath, "utf8"));
|
|
60
|
-
const deps = {
|
|
61
|
-
...json.dependencies,
|
|
62
|
-
...json.devDependencies,
|
|
63
|
-
...json.peerDependencies
|
|
64
|
-
};
|
|
65
|
-
for (const dep of changedDeps) if (deps[dep]) {
|
|
66
|
-
affectedPackages.add(json.name);
|
|
67
|
-
break;
|
|
68
|
-
}
|
|
69
|
-
} catch {}
|
|
70
|
-
return affectedPackages;
|
|
71
|
-
}
|
|
72
46
|
async function handleChangesetFile(fileName) {
|
|
73
47
|
if (!env["SKIP_COMMIT"]) {
|
|
74
48
|
await simpleGit().add(fileName);
|
|
@@ -77,4 +51,4 @@ async function handleChangesetFile(fileName) {
|
|
|
77
51
|
}
|
|
78
52
|
}
|
|
79
53
|
//#endregion
|
|
80
|
-
export {
|
|
54
|
+
export { findChangedDependenciesFromGit, getBumpsFromGit, handleChangesetFile };
|
package/dist/handle-catalog.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createChangeset } from "./createChangeset.js";
|
|
2
|
+
import { findChangedDependenciesFromGit, handleChangesetFile } from "./git-utils.js";
|
|
3
|
+
import { findAffectedPackages } from "./utils.js";
|
|
2
4
|
import { simpleGit } from "simple-git";
|
|
3
5
|
//#region src/handle-catalog.ts
|
|
4
|
-
var { findChangedDependenciesFromGit, findAffectedPackages, handleChangesetFile } = await import("./git-utils.js");
|
|
5
6
|
/**
|
|
6
7
|
* Handle pnpm workspace catalog changes
|
|
7
8
|
*/
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
export declare function
|
|
1
|
+
import { read } from '@changesets/config';
|
|
2
|
+
export declare function getChangesetConfig(): ReturnType<typeof read>;
|
|
3
3
|
export declare function getPackagesNames(files: string[]): Promise<string[]>;
|
|
4
4
|
/**
|
|
5
5
|
* Load catalog from a YAML file
|
package/dist/utils.js
CHANGED
|
@@ -1,26 +1,60 @@
|
|
|
1
1
|
import { readFile } from "node:fs/promises";
|
|
2
|
-
import "tinyglobby";
|
|
3
2
|
import "yaml";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { read } from "@changesets/config";
|
|
5
|
+
import { glob } from "tinyglobby";
|
|
4
6
|
//#region src/utils.ts
|
|
5
|
-
function
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
});
|
|
7
|
+
function shouldSkipPackage(packageJson, { ignore, allowPrivatePackages }) {
|
|
8
|
+
if (ignore?.includes(packageJson.name)) return true;
|
|
9
|
+
if (packageJson.private && !allowPrivatePackages) return true;
|
|
10
|
+
return !packageJson.version;
|
|
10
11
|
}
|
|
11
|
-
async function
|
|
12
|
-
return
|
|
12
|
+
async function getChangesetConfig() {
|
|
13
|
+
return read(process.cwd());
|
|
13
14
|
}
|
|
14
15
|
async function getPackagesNames(files) {
|
|
15
|
-
const
|
|
16
|
+
const config = await getChangesetConfig();
|
|
16
17
|
const packages = [];
|
|
17
18
|
const promises = files.map(async (file) => {
|
|
18
19
|
const data = JSON.parse(await readFile(file, "utf8"));
|
|
19
|
-
if (
|
|
20
|
+
if (shouldSkipPackage(data, {
|
|
21
|
+
ignore: config.ignore,
|
|
22
|
+
allowPrivatePackages: config.privatePackages.version
|
|
23
|
+
})) return;
|
|
20
24
|
if (!data.workspaces && data.version) packages.push(data.name);
|
|
21
25
|
});
|
|
22
26
|
await Promise.all(promises);
|
|
23
27
|
return packages;
|
|
24
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Find packages affected by dependency changes
|
|
31
|
+
* @param changedDeps Array of changed dependency names
|
|
32
|
+
* @param packageJsonGlob Glob pattern to find package.json files
|
|
33
|
+
* @returns Set of package names that are affected by the changes
|
|
34
|
+
*/
|
|
35
|
+
async function findAffectedPackages(changedDeps, packageJsonGlob = "packages/*/package.json") {
|
|
36
|
+
if (changedDeps.length === 0) return /* @__PURE__ */ new Set();
|
|
37
|
+
const config = await getChangesetConfig();
|
|
38
|
+
const packageJsonPaths = await glob(packageJsonGlob, { expandDirectories: false });
|
|
39
|
+
const affectedPackages = /* @__PURE__ */ new Set();
|
|
40
|
+
for (const pkgJsonPath of packageJsonPaths) try {
|
|
41
|
+
const json = JSON.parse(await readFile(pkgJsonPath, "utf8"));
|
|
42
|
+
const deps = {
|
|
43
|
+
...json.dependencies,
|
|
44
|
+
...json.devDependencies,
|
|
45
|
+
...json.peerDependencies
|
|
46
|
+
};
|
|
47
|
+
if (shouldSkipPackage(json, {
|
|
48
|
+
ignore: config.ignore,
|
|
49
|
+
allowPrivatePackages: config.privatePackages.version
|
|
50
|
+
})) break;
|
|
51
|
+
for (const dep of changedDeps) if (deps[dep]) {
|
|
52
|
+
const dirName = path.basename(path.dirname(pkgJsonPath));
|
|
53
|
+
affectedPackages.add(dirName);
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
} catch {}
|
|
57
|
+
return affectedPackages;
|
|
58
|
+
}
|
|
25
59
|
//#endregion
|
|
26
|
-
export { getPackagesNames };
|
|
60
|
+
export { findAffectedPackages, getPackagesNames };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scaleway/changesets-renovate",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"description": "Automatically create changesets for Renovate and pnpm catalogs",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"catalogs",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
"access": "public"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
+
"@changesets/config": "3.1.4",
|
|
38
39
|
"simple-git": "3.36.0",
|
|
39
40
|
"tinyglobby": "0.2.16",
|
|
40
41
|
"yaml": "2.8.4"
|