workspace-tools 0.31.0 → 0.33.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.
Files changed (67) hide show
  1. package/CHANGELOG.json +63 -1
  2. package/CHANGELOG.md +28 -2
  3. package/README.md +4 -0
  4. package/lib/dependencies/transitiveDeps.js +2 -1
  5. package/lib/dependencies/transitiveDeps.js.map +1 -1
  6. package/lib/getPackagePaths.d.ts +10 -2
  7. package/lib/getPackagePaths.js +32 -33
  8. package/lib/getPackagePaths.js.map +1 -1
  9. package/lib/graph/createDependencyMap.js +2 -1
  10. package/lib/graph/createDependencyMap.js.map +1 -1
  11. package/lib/graph/getPackageDependencies.d.ts +2 -2
  12. package/lib/graph/getPackageDependencies.js +23 -6
  13. package/lib/graph/getPackageDependencies.js.map +1 -1
  14. package/lib/index.d.ts +3 -3
  15. package/lib/index.js +10 -3
  16. package/lib/index.js.map +1 -1
  17. package/lib/lockfile/index.js +1 -1
  18. package/lib/lockfile/index.js.map +1 -1
  19. package/lib/logging.d.ts +5 -0
  20. package/lib/logging.js +15 -0
  21. package/lib/logging.js.map +1 -0
  22. package/lib/paths.js +7 -1
  23. package/lib/paths.js.map +1 -1
  24. package/lib/types/WorkspaceInfo.d.ts +7 -0
  25. package/lib/workspaces/findWorkspacePath.d.ts +7 -0
  26. package/lib/workspaces/findWorkspacePath.js +9 -4
  27. package/lib/workspaces/findWorkspacePath.js.map +1 -1
  28. package/lib/workspaces/getWorkspacePackageInfo.d.ts +22 -2
  29. package/lib/workspaces/getWorkspacePackageInfo.js +43 -22
  30. package/lib/workspaces/getWorkspacePackageInfo.js.map +1 -1
  31. package/lib/workspaces/getWorkspaceRoot.d.ts +8 -1
  32. package/lib/workspaces/getWorkspaceRoot.js +9 -18
  33. package/lib/workspaces/getWorkspaceRoot.js.map +1 -1
  34. package/lib/workspaces/getWorkspaces.d.ts +16 -0
  35. package/lib/workspaces/getWorkspaces.js +25 -28
  36. package/lib/workspaces/getWorkspaces.js.map +1 -1
  37. package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.d.ts +22 -0
  38. package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js +63 -0
  39. package/lib/workspaces/implementations/getWorkspaceManagerAndRoot.js.map +1 -0
  40. package/lib/workspaces/implementations/getWorkspaceUtilities.d.ts +18 -0
  41. package/lib/workspaces/implementations/getWorkspaceUtilities.js +26 -0
  42. package/lib/workspaces/implementations/getWorkspaceUtilities.js.map +1 -0
  43. package/lib/workspaces/implementations/index.d.ts +2 -14
  44. package/lib/workspaces/implementations/index.js +5 -55
  45. package/lib/workspaces/implementations/index.js.map +1 -1
  46. package/lib/workspaces/implementations/lerna.d.ts +6 -2
  47. package/lib/workspaces/implementations/lerna.js +17 -10
  48. package/lib/workspaces/implementations/lerna.js.map +1 -1
  49. package/lib/workspaces/implementations/npm.d.ts +10 -1
  50. package/lib/workspaces/implementations/npm.js +19 -8
  51. package/lib/workspaces/implementations/npm.js.map +1 -1
  52. package/lib/workspaces/implementations/packageJsonWorkspaces.d.ts +8 -1
  53. package/lib/workspaces/implementations/packageJsonWorkspaces.js +26 -24
  54. package/lib/workspaces/implementations/packageJsonWorkspaces.js.map +1 -1
  55. package/lib/workspaces/implementations/pnpm.d.ts +6 -0
  56. package/lib/workspaces/implementations/pnpm.js +16 -7
  57. package/lib/workspaces/implementations/pnpm.js.map +1 -1
  58. package/lib/workspaces/implementations/rush.d.ts +6 -0
  59. package/lib/workspaces/implementations/rush.js +16 -7
  60. package/lib/workspaces/implementations/rush.js.map +1 -1
  61. package/lib/workspaces/implementations/yarn.d.ts +11 -0
  62. package/lib/workspaces/implementations/yarn.js +20 -7
  63. package/lib/workspaces/implementations/yarn.js.map +1 -1
  64. package/lib/workspaces/workspaces.d.ts +11 -3
  65. package/lib/workspaces/workspaces.js +13 -5
  66. package/lib/workspaces/workspaces.js.map +1 -1
  67. package/package.json +1 -1
package/CHANGELOG.json CHANGED
@@ -2,7 +2,69 @@
2
2
  "name": "workspace-tools",
3
3
  "entries": [
4
4
  {
5
- "date": "Thu, 06 Apr 2023 19:44:29 GMT",
5
+ "date": "Thu, 13 Apr 2023 08:01:40 GMT",
6
+ "tag": "workspace-tools_v0.33.0",
7
+ "version": "0.33.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "elcraig@microsoft.com",
12
+ "package": "workspace-tools",
13
+ "commit": "2826670b707d724b5bddbdf67c06e307c87620d5",
14
+ "comment": "Improve workspace manager utility naming. None of the modified methods/types are exported from the root, but if you were deep importing them, the changes are as follows:\n - Change `getWorkspaceImplementationAndLockFile` to `getWorkspaceManagerAndRoot`, with return type `WorkspaceManagerAndRoot` (replacing `ImplementationAndLockFile`) to be more relevant for actual usage.\n - Remove `WorkspaceImplementations` type (use the identical existing type `WorkspaceManager` instead)"
15
+ },
16
+ {
17
+ "author": "elcraig@microsoft.com",
18
+ "package": "workspace-tools",
19
+ "commit": "2826670b707d724b5bddbdf67c06e307c87620d5",
20
+ "comment": "Rename `_resetCache` to `_resetPackageJsonFilesCache` to reflect what it does"
21
+ }
22
+ ],
23
+ "patch": [
24
+ {
25
+ "author": "elcraig@microsoft.com",
26
+ "package": "workspace-tools",
27
+ "commit": "bdfbb181a70336b2c53aa443edcf91c4ae858185",
28
+ "comment": "Add optional verbose logging for getWorkspaces helpers"
29
+ },
30
+ {
31
+ "author": "elcraig@microsoft.com",
32
+ "package": "workspace-tools",
33
+ "commit": "18d27beb3d030f2d482b1cd9bd2031fc9b1149d3",
34
+ "comment": "Add more doc comments for getWorkspaces and related"
35
+ },
36
+ {
37
+ "author": "elcraig@microsoft.com",
38
+ "package": "workspace-tools",
39
+ "commit": "b697288732789f631f51cbdc85fb48e41b3b0a76",
40
+ "comment": "Simplify workspace root utilities, and deprecate individual manager `get___WorkspaceRoot` utilities (use `getWorkspaceRoot` instead). This includes moving, deleting, or renaming certain private methods, but has no public-facing changes."
41
+ },
42
+ {
43
+ "author": "elcraig@microsoft.com",
44
+ "package": "workspace-tools",
45
+ "commit": "1dc1125ea5bd87a7496c8b7a1d1d317a5ec74dc1",
46
+ "comment": "Minor fixes to new async workspace/package methods"
47
+ }
48
+ ]
49
+ }
50
+ },
51
+ {
52
+ "date": "Thu, 06 Apr 2023 22:06:24 GMT",
53
+ "tag": "workspace-tools_v0.32.0",
54
+ "version": "0.32.0",
55
+ "comments": {
56
+ "minor": [
57
+ {
58
+ "author": "kchau@microsoft.com",
59
+ "package": "workspace-tools",
60
+ "commit": "2ce8ddc9819094b14fd1cadf7a5b92af3f61d626",
61
+ "comment": "making the dep graph generation to be much faster"
62
+ }
63
+ ]
64
+ }
65
+ },
66
+ {
67
+ "date": "Thu, 06 Apr 2023 19:44:34 GMT",
6
68
  "tag": "workspace-tools_v0.31.0",
7
69
  "version": "0.31.0",
8
70
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,38 @@
1
1
  # Change Log - workspace-tools
2
2
 
3
- This log was last generated on Thu, 06 Apr 2023 19:44:29 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 13 Apr 2023 08:01:40 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.33.0
8
+
9
+ Thu, 13 Apr 2023 08:01:40 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Improve workspace manager utility naming. None of the modified methods/types are exported from the root, but if you were deep importing them, the changes are as follows:
14
+ - Change `getWorkspaceImplementationAndLockFile` to `getWorkspaceManagerAndRoot`, with return type `WorkspaceManagerAndRoot` (replacing `ImplementationAndLockFile`) to be more relevant for actual usage.
15
+ - Remove `WorkspaceImplementations` type (use the identical existing type `WorkspaceManager` instead) (elcraig@microsoft.com)
16
+ - Rename `_resetCache` to `_resetPackageJsonFilesCache` to reflect what it does (elcraig@microsoft.com)
17
+
18
+ ### Patches
19
+
20
+ - Add optional verbose logging for getWorkspaces helpers (elcraig@microsoft.com)
21
+ - Add more doc comments for getWorkspaces and related (elcraig@microsoft.com)
22
+ - Simplify workspace root utilities, and deprecate individual manager `get___WorkspaceRoot` utilities (use `getWorkspaceRoot` instead). This includes moving, deleting, or renaming certain private methods, but has no public-facing changes. (elcraig@microsoft.com)
23
+ - Minor fixes to new async workspace/package methods (elcraig@microsoft.com)
24
+
25
+ ## 0.32.0
26
+
27
+ Thu, 06 Apr 2023 22:06:24 GMT
28
+
29
+ ### Minor changes
30
+
31
+ - making the dep graph generation to be much faster (kchau@microsoft.com)
32
+
7
33
  ## 0.31.0
8
34
 
9
- Thu, 06 Apr 2023 19:44:29 GMT
35
+ Thu, 06 Apr 2023 19:44:34 GMT
10
36
 
11
37
  ### Minor changes
12
38
 
package/README.md CHANGED
@@ -21,3 +21,7 @@ Override the `maxBuffer` value for git processes, for example if the repo is ver
21
21
  ### PREFERRED_WORKSPACE_MANAGER
22
22
 
23
23
  Sometimes if multiple workspace manager files are checked in, it's necessary to hint which manager is used: `npm`, `yarn`, `pnpm`, `rush`, or `lerna`.
24
+
25
+ ### VERBOSE
26
+
27
+ Log additional output from certain functions.
@@ -7,6 +7,7 @@ function memoizedKey(packages, scope = []) {
7
7
  return JSON.stringify({ packages, scope });
8
8
  }
9
9
  function getPackageGraph(packages, scope = []) {
10
+ const internalPackages = new Set(Object.keys(packages));
10
11
  const key = memoizedKey(packages, scope);
11
12
  if (graphCache.has(key)) {
12
13
  return graphCache.get(key);
@@ -21,7 +22,7 @@ function getPackageGraph(packages, scope = []) {
21
22
  }
22
23
  visited.add(pkg);
23
24
  const info = packages[pkg];
24
- const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, packages);
25
+ const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, internalPackages);
25
26
  if (deps.length > 0) {
26
27
  for (const dep of deps) {
27
28
  stack.push(dep);
@@ -1 +1 @@
1
- {"version":3,"file":"transitiveDeps.js","sourceRoot":"","sources":["../../src/dependencies/transitiveDeps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transitiveDeps.js","sourceRoot":"","sources":["../../src/dependencies/transitiveDeps.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,10 @@
1
- export declare function getPackagePaths(workspacesRoot: string, packages: string[], ignorePatterns?: string[]): string[];
2
- export declare function getPackagePathsAsync(workspacesRoot: string, packages: string[]): Promise<string[]>;
1
+ /**
2
+ * Given package folder globs (such as those from package.json `workspaces`) and a workspace root
3
+ * directory, get paths to actual package folders.
4
+ */
5
+ export declare function getPackagePaths(root: string, packageGlobs: string[]): string[];
6
+ /**
7
+ * Given package folder globs (such as those from package.json `workspaces`) and a workspace root
8
+ * directory, get paths to actual package folders.
9
+ */
10
+ export declare function getPackagePathsAsync(root: string, packageGlobs: string[]): Promise<string[]>;
@@ -7,43 +7,42 @@ exports.getPackagePathsAsync = exports.getPackagePaths = void 0;
7
7
  const path_1 = __importDefault(require("path"));
8
8
  const fast_glob_1 = __importDefault(require("fast-glob"));
9
9
  const packagePathsCache = {};
10
- function getPackagePaths(workspacesRoot, packages, ignorePatterns) {
11
- if (packagePathsCache[workspacesRoot]) {
12
- return packagePathsCache[workspacesRoot];
13
- }
14
- const packagePaths = fast_glob_1.default
15
- .sync(packages.map((glob) => path_1.default.join(glob, "package.json").replace(/\\/g, "/")), {
16
- cwd: workspacesRoot,
17
- absolute: true,
18
- ignore: ["**/node_modules/**", "**/__fixtures__/**"],
19
- stats: false,
20
- })
21
- .map((p) => path_1.default.dirname(p));
22
- if (path_1.default.sep === "/") {
23
- packagePathsCache[workspacesRoot] = packagePaths;
24
- }
25
- else {
26
- packagePathsCache[workspacesRoot] = packagePaths.map((p) => p.replace(/\//g, path_1.default.sep));
10
+ const globOptions = {
11
+ absolute: true,
12
+ ignore: ["**/node_modules/**", "**/__fixtures__/**"],
13
+ stats: false,
14
+ };
15
+ /**
16
+ * Given package folder globs (such as those from package.json `workspaces`) and a workspace root
17
+ * directory, get paths to actual package folders.
18
+ */
19
+ function getPackagePaths(root, packageGlobs) {
20
+ if (packagePathsCache[root]) {
21
+ return packagePathsCache[root];
27
22
  }
28
- return packagePathsCache[workspacesRoot];
23
+ packagePathsCache[root] = fast_glob_1.default
24
+ .sync(getPackageJsonGlobs(packageGlobs), { cwd: root, ...globOptions })
25
+ .map(getResultPackagePath);
26
+ return packagePathsCache[root];
29
27
  }
30
28
  exports.getPackagePaths = getPackagePaths;
31
- async function getPackagePathsAsync(workspacesRoot, packages) {
32
- if (packagePathsCache[workspacesRoot]) {
33
- return packagePathsCache[workspacesRoot];
34
- }
35
- const packagePaths = (await (0, fast_glob_1.default)(packages.map((glob) => path_1.default.join(glob, "package.json").replace(/\\/g, "/")), {
36
- cwd: workspacesRoot,
37
- ignore: ["**/node_modules/**", "**/__fixtures__/**"],
38
- stats: false,
39
- })).map((p) => path_1.default.join(workspacesRoot, path_1.default.dirname(p)));
40
- if (path_1.default.sep === "/") {
41
- packagePathsCache[workspacesRoot] = packagePaths;
29
+ /**
30
+ * Given package folder globs (such as those from package.json `workspaces`) and a workspace root
31
+ * directory, get paths to actual package folders.
32
+ */
33
+ async function getPackagePathsAsync(root, packageGlobs) {
34
+ if (packagePathsCache[root]) {
35
+ return packagePathsCache[root];
42
36
  }
43
- else {
44
- packagePathsCache[workspacesRoot] = packagePaths.map((p) => p.replace(/\//g, path_1.default.sep));
45
- }
46
- return packagePathsCache[workspacesRoot];
37
+ packagePathsCache[root] = (await (0, fast_glob_1.default)(getPackageJsonGlobs(packageGlobs), { cwd: root, ...globOptions })).map(getResultPackagePath);
38
+ return packagePathsCache[root];
47
39
  }
48
40
  exports.getPackagePathsAsync = getPackagePathsAsync;
41
+ function getPackageJsonGlobs(packageGlobs) {
42
+ return packageGlobs.map((glob) => path_1.default.join(glob, "package.json").replace(/\\/g, "/"));
43
+ }
44
+ function getResultPackagePath(packageJsonPath) {
45
+ const packagePath = path_1.default.dirname(packageJsonPath);
46
+ return path_1.default.sep === "/" ? packagePath : packagePath.replace(/\//g, path_1.default.sep);
47
+ }
49
48
  //# sourceMappingURL=getPackagePaths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPackagePaths.js","sourceRoot":"","sources":["../src/getPackagePaths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,0DAA6B;AAE7B,MAAM,iBAAiB,GAA2C,EAAE,CAAC;AAErE,SAAgB,eAAe,CAAC,cAAsB,EAAE,QAAkB,EAAE,cAAyB;IACnG,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE;QACrC,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;KAC1C;IAED,MAAM,YAAY,GAAG,mBAAI;SACtB,IAAI,CACH,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAC3E;QACE,GAAG,EAAE,cAAc;QACnB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;QACpD,KAAK,EAAE,KAAK;KACb,CACF;SACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/B,IAAI,cAAI,CAAC,GAAG,KAAK,GAAG,EAAE;QACpB,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC;KAClD;SAAM;QACL,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,cAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KACzF;IAED,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAC3C,CAAC;AAxBD,0CAwBC;AAEM,KAAK,UAAU,oBAAoB,CAAC,cAAsB,EAAE,QAAkB;IACnF,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE;QACrC,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;KAC1C;IAED,MAAM,YAAY,GAAG,CACnB,MAAM,IAAA,mBAAI,EACR,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAC3E;QACE,GAAG,EAAE,cAAc;QACnB,MAAM,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;QACpD,KAAK,EAAE,KAAK;KACb,CACF,CACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzD,IAAI,cAAI,CAAC,GAAG,KAAK,GAAG,EAAE;QACpB,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC;KAClD;SAAM;QACL,iBAAiB,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,cAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KACzF;IAED,OAAO,iBAAiB,CAAC,cAAc,CAAC,CAAC;AAC3C,CAAC;AAvBD,oDAuBC"}
1
+ {"version":3,"file":"getPackagePaths.js","sourceRoot":"","sources":["../src/getPackagePaths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,0DAA8D;AAE9D,MAAM,iBAAiB,GAAiC,EAAE,CAAC;AAC3D,MAAM,WAAW,GAAgB;IAC/B,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,KAAK,EAAE,KAAK;CACb,CAAC;AAEF;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAY,EAAE,YAAsB;IAClE,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;QAC3B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAChC;IAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,mBAAI;SAC3B,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;SACtE,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAE7B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAVD,0CAUC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CAAC,IAAY,EAAE,YAAsB;IAC7E,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE;QAC3B,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;KAChC;IAED,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAA,mBAAI,EAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAC1G,oBAAoB,CACrB,CAAC;IAEF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAVD,oDAUC;AAED,SAAS,mBAAmB,CAAC,YAAsB;IACjD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,oBAAoB,CAAC,eAAuB;IACnD,MAAM,WAAW,GAAG,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAClD,OAAO,cAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,cAAI,CAAC,GAAG,CAAC,CAAC;AAC/E,CAAC"}
@@ -7,8 +7,9 @@ function createDependencyMap(packages, options = { withDevDependencies: true, wi
7
7
  dependencies: new Map(),
8
8
  dependents: new Map(),
9
9
  };
10
+ const internalPackages = new Set(Object.keys(packages));
10
11
  for (const [pkg, info] of Object.entries(packages)) {
11
- const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, packages, options);
12
+ const deps = (0, getPackageDependencies_1.getPackageDependencies)(info, internalPackages, options);
12
13
  for (const dep of deps) {
13
14
  if (!map.dependencies.has(pkg)) {
14
15
  map.dependencies.set(pkg, new Set());
@@ -1 +1 @@
1
- {"version":3,"file":"createDependencyMap.js","sourceRoot":"","sources":["../../src/graph/createDependencyMap.ts"],"names":[],"mappings":";;;AAAA,qEAA8F;AAQ9F,SAAgB,mBAAmB,CACjC,QAAsB,EACtB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAEhG,MAAM,GAAG,GAAG;QACV,YAAY,EAAE,IAAI,GAAG,EAAuB;QAC5C,UAAU,EAAE,IAAI,GAAG,EAAuB;KAC3C,CAAC;IAEF,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAClD,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC9B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACtC;YACD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEpC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC5B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACpC;YACD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACnC;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAxBD,kDAwBC"}
1
+ {"version":3,"file":"createDependencyMap.js","sourceRoot":"","sources":["../../src/graph/createDependencyMap.ts"],"names":[],"mappings":";;;AAAA,qEAA8F;AAS9F,SAAgB,mBAAmB,CACjC,QAAsB,EACtB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE;IAEhG,MAAM,GAAG,GAAG;QACV,YAAY,EAAE,IAAI,GAAG,EAAuB;QAC5C,UAAU,EAAE,IAAI,GAAG,EAAuB;KAC3C,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAExD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAClD,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACrE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC9B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACtC;YACD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEpC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC5B,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aACpC;YACD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACnC;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA1BD,kDA0BC"}
@@ -1,6 +1,6 @@
1
- import { PackageInfo, PackageInfos } from "../types/PackageInfo";
1
+ import { PackageInfo } from "../types/PackageInfo";
2
2
  export interface PackageDependenciesOptions {
3
3
  withDevDependencies?: boolean;
4
4
  withPeerDependencies?: boolean;
5
5
  }
6
- export declare function getPackageDependencies(info: PackageInfo, packages: PackageInfos, options?: PackageDependenciesOptions): string[];
6
+ export declare function getPackageDependencies(info: PackageInfo, packages: Set<string>, options?: PackageDependenciesOptions): string[];
@@ -2,12 +2,29 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPackageDependencies = void 0;
4
4
  function getPackageDependencies(info, packages, options = { withDevDependencies: true }) {
5
- const deps = {
6
- ...info.dependencies,
7
- ...(options.withDevDependencies && info.devDependencies),
8
- ...(options.withPeerDependencies && info.peerDependencies),
9
- };
10
- return Object.keys(packages).filter((pkg) => !!deps[pkg]);
5
+ const deps = [];
6
+ if (info.dependencies) {
7
+ for (const dep of Object.keys(info.dependencies)) {
8
+ if (dep !== info.name && packages.has(dep)) {
9
+ deps.push(dep);
10
+ }
11
+ }
12
+ }
13
+ if (info.devDependencies && options.withDevDependencies) {
14
+ for (const dep of Object.keys(info.devDependencies)) {
15
+ if (dep !== info.name && packages.has(dep)) {
16
+ deps.push(dep);
17
+ }
18
+ }
19
+ }
20
+ if (info.peerDependencies && options.withPeerDependencies) {
21
+ for (const dep of Object.keys(info.peerDependencies)) {
22
+ if (dep !== info.name && packages.has(dep)) {
23
+ deps.push(dep);
24
+ }
25
+ }
26
+ }
27
+ return deps;
11
28
  }
12
29
  exports.getPackageDependencies = getPackageDependencies;
13
30
  //# sourceMappingURL=getPackageDependencies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPackageDependencies.js","sourceRoot":"","sources":["../../src/graph/getPackageDependencies.ts"],"names":[],"mappings":";;;AAOA,SAAgB,sBAAsB,CACpC,IAAiB,EACjB,QAAsB,EACtB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE;IAEnE,MAAM,IAAI,GAAG;QACX,GAAG,IAAI,CAAC,YAAY;QACpB,GAAG,CAAC,OAAO,CAAC,mBAAmB,IAAI,IAAI,CAAC,eAAe,CAAC;QACxD,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC,gBAAgB,CAAC;KAC3D,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5D,CAAC;AAXD,wDAWC"}
1
+ {"version":3,"file":"getPackageDependencies.js","sourceRoot":"","sources":["../../src/graph/getPackageDependencies.ts"],"names":[],"mappings":";;;AAOA,SAAgB,sBAAsB,CACpC,IAAiB,EACjB,QAAqB,EACrB,UAAsC,EAAE,mBAAmB,EAAE,IAAI,EAAE;IAEnE,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,IAAI,IAAI,CAAC,YAAY,EAAE;QACrB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAChD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,mBAAmB,EAAE;QACvD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;YACnD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,IAAI,IAAI,CAAC,gBAAgB,IAAI,OAAO,CAAC,oBAAoB,EAAE;QACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YACpD,IAAI,GAAG,KAAK,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAChB;SACF;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAhCD,wDAgCC"}
package/lib/index.d.ts CHANGED
@@ -11,9 +11,9 @@ export * from "./types/WorkspaceInfo";
11
11
  export * from "./workspaces/findWorkspacePath";
12
12
  export * from "./workspaces/getWorkspaces";
13
13
  export * from "./workspaces/getWorkspaceRoot";
14
- export * from "./workspaces/implementations/pnpm";
15
- export * from "./workspaces/implementations/rush";
16
- export * from "./workspaces/implementations/yarn";
14
+ export { getPnpmWorkspaceRoot, getPnpmWorkspaces } from "./workspaces/implementations/pnpm";
15
+ export { getRushWorkspaceRoot, getRushWorkspaces } from "./workspaces/implementations/rush";
16
+ export { getYarnWorkspaceRoot, getYarnWorkspaces } from "./workspaces/implementations/yarn";
17
17
  export * from "./workspaces/getChangedPackages";
18
18
  export * from "./workspaces/getPackagesByFiles";
19
19
  export * from "./workspaces/listOfWorkspacePackageNames";
package/lib/index.js CHANGED
@@ -10,6 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.getYarnWorkspaces = exports.getYarnWorkspaceRoot = exports.getRushWorkspaces = exports.getRushWorkspaceRoot = exports.getPnpmWorkspaces = exports.getPnpmWorkspaceRoot = void 0;
13
14
  __exportStar(require("./dependencies/index"), exports);
14
15
  __exportStar(require("./getPackageInfos"), exports);
15
16
  __exportStar(require("./git"), exports);
@@ -23,9 +24,15 @@ __exportStar(require("./types/WorkspaceInfo"), exports);
23
24
  __exportStar(require("./workspaces/findWorkspacePath"), exports);
24
25
  __exportStar(require("./workspaces/getWorkspaces"), exports);
25
26
  __exportStar(require("./workspaces/getWorkspaceRoot"), exports);
26
- __exportStar(require("./workspaces/implementations/pnpm"), exports);
27
- __exportStar(require("./workspaces/implementations/rush"), exports);
28
- __exportStar(require("./workspaces/implementations/yarn"), exports);
27
+ var pnpm_1 = require("./workspaces/implementations/pnpm");
28
+ Object.defineProperty(exports, "getPnpmWorkspaceRoot", { enumerable: true, get: function () { return pnpm_1.getPnpmWorkspaceRoot; } });
29
+ Object.defineProperty(exports, "getPnpmWorkspaces", { enumerable: true, get: function () { return pnpm_1.getPnpmWorkspaces; } });
30
+ var rush_1 = require("./workspaces/implementations/rush");
31
+ Object.defineProperty(exports, "getRushWorkspaceRoot", { enumerable: true, get: function () { return rush_1.getRushWorkspaceRoot; } });
32
+ Object.defineProperty(exports, "getRushWorkspaces", { enumerable: true, get: function () { return rush_1.getRushWorkspaces; } });
33
+ var yarn_1 = require("./workspaces/implementations/yarn");
34
+ Object.defineProperty(exports, "getYarnWorkspaceRoot", { enumerable: true, get: function () { return yarn_1.getYarnWorkspaceRoot; } });
35
+ Object.defineProperty(exports, "getYarnWorkspaces", { enumerable: true, get: function () { return yarn_1.getYarnWorkspaces; } });
29
36
  __exportStar(require("./workspaces/getChangedPackages"), exports);
30
37
  __exportStar(require("./workspaces/getPackagesByFiles"), exports);
31
38
  __exportStar(require("./workspaces/listOfWorkspacePackageNames"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAqC;AACrC,oDAAkC;AAClC,wCAAsB;AACtB,gDAA8B;AAC9B,6CAA2B;AAC3B,0CAAwB;AACxB,0CAAwB;AACxB,uDAAqC;AACrC,sDAAoC;AACpC,wDAAsC;AACtC,iEAA+C;AAC/C,6DAA2C;AAC3C,gEAA8C;AAC9C,oEAAkD;AAClD,oEAAkD;AAClD,oEAAkD;AAClD,kEAAgD;AAChD,kEAAgD;AAChD,2EAAyD;AACzD,0DAAwC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,uDAAqC;AACrC,oDAAkC;AAClC,wCAAsB;AACtB,gDAA8B;AAC9B,6CAA2B;AAC3B,0CAAwB;AACxB,0CAAwB;AACxB,uDAAqC;AACrC,sDAAoC;AACpC,wDAAsC;AACtC,iEAA+C;AAC/C,6DAA2C;AAC3C,gEAA8C;AAC9C,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,0DAA4F;AAAnF,4GAAA,oBAAoB,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAChD,kEAAgD;AAChD,kEAAgD;AAChD,2EAAyD;AACzD,0DAAwC"}
@@ -83,7 +83,7 @@ async function parseLockFile(packageRoot) {
83
83
  npmLockJson = fs_1.default.readFileSync(npmLockPath, "utf-8");
84
84
  }
85
85
  catch {
86
- throw new Error("Couldnt parse package-lock.json.");
86
+ throw new Error("Couldn't read package-lock.json");
87
87
  }
88
88
  const npmLock = JSON.parse(npmLockJson.toString());
89
89
  if (!(npmLock === null || npmLock === void 0 ? void 0 : npmLock.lockfileVersion) || npmLock.lockfileVersion < 2) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lockfile/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lockfile/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wGAAwG;AACxG,4CAAoB;AACpB,gDAAwB;AAExB,mDAAgD;AA2FvC,8FA3FA,6BAAa,OA2FA;AA1FtB,oCAAoC;AACpC,mDAAgD;AAChD,iDAA8C;AAC9C,yCAAsC;AACtC,qDAAkD;AAElD,MAAM,WAAW,GAAmC,EAAE,CAAC;AAEhD,KAAK,UAAU,aAAa,CAAC,WAAmB;IACrD,MAAM,YAAY,GAAG,IAAA,gBAAQ,EAAC,CAAC,WAAW,EAAE,8BAA8B,CAAC,EAAE,WAAW,CAAC,CAAC;IAE1F,8CAA8C;IAC9C,IAAI,YAAY,EAAE;QAChB,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;YAC7B,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;SAClC;QAED,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAExD,MAAM,OAAO,GACX,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAE/G,IAAI,MAAM,GAGN;YACF,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,MAAM,IAAI,GAAG,IAAA,mBAAQ,EAAgB,YAAY,CAAC,CAAC;YACnD,MAAM,GAAG,IAAA,+BAAc,EAAC,IAAI,CAAC,CAAC;SAC/B;aAAM;YACL,MAAM,aAAa,GAAG,CAAC,wDAAa,mBAAmB,GAAC,CAAC,CAAC,KAAK,CAAC;YAChE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;SAClC;QAED,WAAW,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;QAEnC,OAAO,MAAM,CAAC;KACf;IAED,+CAA+C;IAC/C,IAAI,YAAY,GAAG,IAAA,gBAAQ,EAAC,CAAC,gBAAgB,EAAE,mCAAmC,CAAC,EAAE,WAAW,CAAC,CAAC;IAElG,IAAI,YAAY,EAAE;QAChB,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;YAC7B,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;SAClC;QAED,MAAM,IAAI,GAAG,IAAA,mBAAQ,EAAe,YAAY,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAA,6BAAa,EAAC,IAAI,CAAC,CAAC;QACnC,WAAW,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;QAEnC,OAAO,WAAW,CAAC,YAAY,CAAC,CAAC;KAClC;IAED,gCAAgC;IAChC,IAAI,WAAW,GAAG,IAAA,gBAAQ,EAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;IAE7D,IAAI,WAAW,EAAE;QACf,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE;YAC5B,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC;SACjC;QAED,IAAI,WAAW,CAAC;QAChB,IAAI;YACF,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;SACrD;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;QAED,MAAM,OAAO,GAAgB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEhE,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,CAAA,IAAI,OAAO,CAAC,eAAe,GAAG,CAAC,EAAE;YAC5D,MAAM,IAAI,KAAK,CACb,uEAAuE,OAAO,CAAC,eAAe,mIAAmI,CAClO,CAAC;SACH;QAED,WAAW,CAAC,WAAW,CAAC,GAAG,IAAA,2BAAY,EAAC,OAAO,CAAC,CAAC;QACjD,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC;KACjC;IAED,MAAM,IAAI,KAAK,CACb,2GAA2G,CAC5G,CAAC;AACJ,CAAC;AAhFD,sCAgFC;AAGD,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,0CAAwB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Helper that logs an error to `console.warn` if `process.env.VERBOSE` is set.
3
+ * This should be replaced with a proper logging system eventually.
4
+ */
5
+ export declare function logVerboseWarning(description: string, err?: unknown): void;
package/lib/logging.js ADDED
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.logVerboseWarning = void 0;
4
+ /**
5
+ * Helper that logs an error to `console.warn` if `process.env.VERBOSE` is set.
6
+ * This should be replaced with a proper logging system eventually.
7
+ */
8
+ function logVerboseWarning(description, err) {
9
+ var _a;
10
+ if (process.env.VERBOSE) {
11
+ console.warn(`${description}${err ? ":\n" : ""}`, ((_a = err) === null || _a === void 0 ? void 0 : _a.stack) || err || "");
12
+ }
13
+ }
14
+ exports.logVerboseWarning = logVerboseWarning;
15
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,WAAmB,EAAE,GAAa;;IAClE,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE;QACvB,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAA,MAAC,GAAyB,0CAAE,KAAK,KAAI,GAAG,IAAI,EAAE,CAAC,CAAC;KACnG;AACH,CAAC;AAJD,8CAIC"}
package/lib/paths.js CHANGED
@@ -8,6 +8,7 @@ const path_1 = __importDefault(require("path"));
8
8
  const fs_1 = __importDefault(require("fs"));
9
9
  const getWorkspaceRoot_1 = require("./workspaces/getWorkspaceRoot");
10
10
  const git_1 = require("./git");
11
+ const logging_1 = require("./logging");
11
12
  /**
12
13
  * Starting from `cwd`, searches up the directory hierarchy for `filePath`.
13
14
  * If multiple strings are given, searches each directory level for any of them.
@@ -56,7 +57,12 @@ function findProjectRoot(cwd) {
56
57
  try {
57
58
  workspaceRoot = (0, getWorkspaceRoot_1.getWorkspaceRoot)(cwd);
58
59
  }
59
- catch { }
60
+ catch (err) {
61
+ (0, logging_1.logVerboseWarning)(`Error getting workspace root for ${cwd}`, err);
62
+ }
63
+ if (!workspaceRoot) {
64
+ (0, logging_1.logVerboseWarning)(`Could not find workspace root for ${cwd}. Falling back to git root.`);
65
+ }
60
66
  return workspaceRoot || findGitRoot(cwd);
61
67
  }
62
68
  exports.findProjectRoot = findProjectRoot;
package/lib/paths.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AACpB,oEAAiE;AACjE,+BAA4B;AAE5B;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,QAA2B,EAAE,GAAW;IAC/D,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,IAAI,GAAG,cAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAElC,IAAI,SAA6B,CAAC;IAElC,OAAO,CAAC,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;QACjC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,SAAS,EAAE;YACb,MAAM;SACP;QAED,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,SAAS,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAhBD,4BAgBC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,MAAM,GAAG,IAAA,SAAG,EAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,8BAA8B,CAAC,CAAC;KAClE;IAED,OAAO,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAPD,kCAOC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,QAAQ,IAAI,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAHD,0CAGC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,IAAI,aAAiC,CAAC;IACtC,IAAI;QACF,aAAa,GAAG,IAAA,mCAAgB,EAAC,GAAG,CAAC,CAAC;KACvC;IAAC,MAAM,GAAE;IAEV,OAAO,aAAa,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAPD,0CAOC;AAED,SAAgB,SAAS,CAAC,KAAa,EAAE,MAAc;IACrD,MAAM,YAAY,GAAG,cAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzC,CAAC;AAHD,8BAGC"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AACpB,oEAAiE;AACjE,+BAA4B;AAC5B,uCAA8C;AAE9C;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,QAA2B,EAAE,GAAW;IAC/D,MAAM,KAAK,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,MAAM,IAAI,GAAG,cAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAElC,IAAI,SAA6B,CAAC;IAElC,OAAO,CAAC,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;QACjC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,SAAS,EAAE;YACb,MAAM;SACP;QAED,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,SAAS,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAhBD,4BAgBC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,MAAM,GAAG,IAAA,SAAG,EAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,8BAA8B,CAAC,CAAC;KAClE;IAED,OAAO,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAPD,kCAOC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,QAAQ,IAAI,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAHD,0CAGC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAAC,GAAW;IACzC,IAAI,aAAiC,CAAC;IACtC,IAAI;QACF,aAAa,GAAG,IAAA,mCAAgB,EAAC,GAAG,CAAC,CAAC;KACvC;IAAC,OAAO,GAAG,EAAE;QACZ,IAAA,2BAAiB,EAAC,oCAAoC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;KACnE;IAED,IAAI,CAAC,aAAa,EAAE;QAClB,IAAA,2BAAiB,EAAC,qCAAqC,GAAG,6BAA6B,CAAC,CAAC;KAC1F;IACD,OAAO,aAAa,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAZD,0CAYC;AAED,SAAgB,SAAS,CAAC,KAAa,EAAE,MAAc;IACrD,MAAM,YAAY,GAAG,cAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACzC,CAAC;AAHD,8BAGC"}
@@ -1,4 +1,11 @@
1
1
  import { PackageInfo } from "./PackageInfo";
2
+ /**
3
+ * Array with names, paths, and package.json contents for each package in a workspace.
4
+ *
5
+ * The method name is somewhat misleading due to the double meaning of "workspace", but it's retained
6
+ * for compatibility. "Workspace" here refers to an individual package, in the sense of the `workspaces`
7
+ * package.json config used by npm/yarn (instead of referring to the entire monorepo).
8
+ */
2
9
  export declare type WorkspaceInfo = {
3
10
  name: string;
4
11
  path: string;
@@ -1,2 +1,9 @@
1
1
  import { WorkspaceInfo } from "../types/WorkspaceInfo";
2
+ /**
3
+ * Find the path for a particular package name from an array of info about packages within a workspace.
4
+ * (See `../getWorkspaces` for why it's named this way.)
5
+ * @param workspaces Array of info about packages within a workspace
6
+ * @param packageName Package name to find
7
+ * @returns Package path if found, or undefined
8
+ */
2
9
  export declare function findWorkspacePath(workspaces: WorkspaceInfo, packageName: string): string | undefined;
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findWorkspacePath = void 0;
4
+ /**
5
+ * Find the path for a particular package name from an array of info about packages within a workspace.
6
+ * (See `../getWorkspaces` for why it's named this way.)
7
+ * @param workspaces Array of info about packages within a workspace
8
+ * @param packageName Package name to find
9
+ * @returns Package path if found, or undefined
10
+ */
4
11
  function findWorkspacePath(workspaces, packageName) {
5
- const workspace = workspaces.find(({ name }) => name === packageName);
6
- if (workspace) {
7
- return workspace.path;
8
- }
12
+ var _a;
13
+ return (_a = workspaces.find(({ name }) => name === packageName)) === null || _a === void 0 ? void 0 : _a.path;
9
14
  }
10
15
  exports.findWorkspacePath = findWorkspacePath;
11
16
  //# sourceMappingURL=findWorkspacePath.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"findWorkspacePath.js","sourceRoot":"","sources":["../../src/workspaces/findWorkspacePath.ts"],"names":[],"mappings":";;;AAEA,SAAgB,iBAAiB,CAAC,UAAyB,EAAE,WAAmB;IAC9E,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;IAEtE,IAAI,SAAS,EAAE;QACb,OAAO,SAAS,CAAC,IAAI,CAAC;KACvB;AACH,CAAC;AAND,8CAMC"}
1
+ {"version":3,"file":"findWorkspacePath.js","sourceRoot":"","sources":["../../src/workspaces/findWorkspacePath.ts"],"names":[],"mappings":";;;AAEA;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAC,UAAyB,EAAE,WAAmB;;IAC9E,OAAO,MAAA,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,0CAAE,IAAI,CAAC;AACnE,CAAC;AAFD,8CAEC"}
@@ -1,3 +1,23 @@
1
1
  import { WorkspaceInfo } from "../types/WorkspaceInfo";
2
- export declare function getWorkspacePackageInfo(workspacePaths: string[]): WorkspaceInfo;
3
- export declare function getWorkspacePackageInfoAsync(workspacePaths: string[]): Promise<WorkspaceInfo>;
2
+ /**
3
+ * Get an array with names, paths, and package.json contents for each of the given package paths
4
+ * within a workspace.
5
+ *
6
+ * This is an internal helper used by `getWorkspaces` implementations for different managers.
7
+ * (See `../getWorkspaces` for why it's named this way.)
8
+ * @param packagePaths Paths to packages within a workspace
9
+ * @returns Array of workspace package infos
10
+ * @internal
11
+ */
12
+ export declare function getWorkspacePackageInfo(packagePaths: string[]): WorkspaceInfo;
13
+ /**
14
+ * Get an array with names, paths, and package.json contents for each of the given package paths
15
+ * within a workspace.
16
+ *
17
+ * This is an internal helper used by `getWorkspaces` implementations for different managers.
18
+ * (See `../getWorkspaces` for why it's named this way.)
19
+ * @param packagePaths Paths to packages within a workspace
20
+ * @returns Array of workspace package infos
21
+ * @internal
22
+ */
23
+ export declare function getWorkspacePackageInfoAsync(packagePaths: string[]): Promise<WorkspaceInfo>;