@ms-cloudpack/package-utilities 0.1.7 → 0.2.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/CHANGELOG.json CHANGED
@@ -2,7 +2,28 @@
2
2
  "name": "@ms-cloudpack/package-utilities",
3
3
  "entries": [
4
4
  {
5
- "date": "Thu, 19 May 2022 21:03:49 GMT",
5
+ "date": "Fri, 20 May 2022 04:25:53 GMT",
6
+ "tag": "@ms-cloudpack/package-utilities_v0.2.0",
7
+ "version": "0.2.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "dzearing@microsoft.com",
12
+ "package": "@ms-cloudpack/package-utilities",
13
+ "commit": "b39bb143fc53e622c39f9e9fd349f71c9ebadd77",
14
+ "comment": "Updating createResolveMap logic."
15
+ },
16
+ {
17
+ "author": "beachball",
18
+ "package": "@ms-cloudpack/package-utilities",
19
+ "comment": "Bump @ms-cloudpack/path-utilities to v0.2.0",
20
+ "commit": "b39bb143fc53e622c39f9e9fd349f71c9ebadd77"
21
+ }
22
+ ]
23
+ }
24
+ },
25
+ {
26
+ "date": "Thu, 19 May 2022 21:04:02 GMT",
6
27
  "tag": "@ms-cloudpack/package-utilities_v0.1.7",
7
28
  "version": "0.1.7",
8
29
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,21 @@
1
1
  # Change Log - @ms-cloudpack/package-utilities
2
2
 
3
- This log was last generated on Thu, 19 May 2022 21:03:49 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 20 May 2022 04:25:53 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 0.2.0
8
+
9
+ Fri, 20 May 2022 04:25:53 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Updating createResolveMap logic. (dzearing@microsoft.com)
14
+ - Bump @ms-cloudpack/path-utilities to v0.2.0
15
+
7
16
  ## 0.1.7
8
17
 
9
- Thu, 19 May 2022 21:03:49 GMT
18
+ Thu, 19 May 2022 21:04:02 GMT
10
19
 
11
20
  ### Patches
12
21
 
@@ -1,19 +1,16 @@
1
- import type { InstalledPackagesResult } from './getInstalledPackages.js';
1
+ export declare type PackageNameVersion = `${string}@${string}`;
2
2
  export declare type ResolveMapEntry = {
3
+ name: string;
3
4
  version: string;
4
5
  path: string;
5
- entry: string;
6
6
  scopedVersions?: {
7
- [packageNameAndVersion: `${string}@${string}`]: ResolveMapEntry;
7
+ [packageId: PackageNameVersion]: PackageNameVersion;
8
8
  };
9
9
  };
10
10
  export declare type ResolveMap = {
11
- [packageName: string]: ResolveMapEntry;
11
+ [packageId: PackageNameVersion | string]: ResolveMapEntry;
12
12
  };
13
13
  export declare function createResolveMap(options: {
14
14
  appPath: string;
15
15
  additionalPaths?: string[];
16
- }): Promise<{
17
- resolveMap: ResolveMap;
18
- stats: InstalledPackagesResult['stats'];
19
- }>;
16
+ }): Promise<ResolveMap>;
@@ -1,116 +1,65 @@
1
- import { getInstalledPackages } from './getInstalledPackages.js';
2
- // import fs from 'fs';
3
- // import path from 'path';
4
- import { resolveImportFromPackagePath } from './resolveImportFromPackagePath.js';
5
- /*
6
- For each package:
7
-
8
- 1. Resolve the version required from the lockfile.
9
- 2. Determine what version is installed.
10
- 3. If version required was not found, default to the version installed.
11
- 4. If no lockfile version is installed, get metadata and use the latest.
12
- 5. If there is no installed version, or the version installed does not
13
- satisfy the required version, install the version required.
14
-
15
- Repeat this process for each *unique* version resolved.
16
-
17
- {
18
- react: {
19
- '7.1.0': { path: '...', requiredBy: [ { name: 'foo', version: '1.1.1' }, { name: 'bar'}],
20
- '6.9.0': [ { name: 'baz' } ]
21
- },
22
- etc...
23
- }
24
-
25
- This should be enough to know which dependencies have dupes.
26
-
27
- Then, optimize the resolve map to top-level the most common/latest versions. This map will provide
28
- physical paths for resolving dependencies, where each key in the package object represents the scope.
29
- This is useful because at esbuild resolve time, we can quickly identify which package the import source
30
- is coming from, and quickly look up the package resolution by:
31
-
32
- `const packageDetails = resolveMap[requestPackage][sourcePackage] || resolveMap[requestPackage].default`
33
-
34
- {
35
- react: {
36
- version: string;
37
- path: '/tmp/react/7.1.0',
38
- entry: './lib/index.js'
39
-
40
- scopedVersions: {
41
- baz: { // when bar imports 'react', resolve to this other location.
42
- path: '/tmp/react/6.9.0'
43
- entry: './lib/index.js'
44
- }
45
- }
46
- },
47
- etc: ...
48
- }
49
-
50
- By optimizing the default to be the most common package, we can reduce the scope entries.
51
-
52
- Note that when we have dupes, this will keep them intact and will not try to optimize. It could be that
53
- holding back one package could dedupe. In the example above, perhaps "foo" and "bar" packages could be
54
- downgraded to a build which accepts 6.9.0. But it could also introduce other dupes.
55
- */
1
+ import { getPackageDefinition } from './getPackageDefinition.js';
2
+ import { findPackagePath } from './findPackagePath.js';
56
3
  export async function createResolveMap(options) {
57
4
  const { appPath, additionalPaths = [] } = options;
58
- // First, create a merged dependency list.
59
- // const dependencies = {};
60
- // Grab what's installed, so that we can default to use those packages.
61
- const { installedPackages, stats } = await getInstalledPackages([appPath, ...additionalPaths]);
62
- // await writeFile(
63
- // path.join(appPath, "install-map.json"),
64
- // JSON.stringify({ installedPackages, stats }, null, 2),
65
- // "utf8"
66
- // );
67
- // // Add the dependencies for the appPath.
68
- // await addDependencies(dependencies, appPath, installedPackages);
69
- // // Add deps for additional paths.
70
- // for (let additionalPath of additionalPaths) {
71
- // await addDependencies(dependencies, additionalPath, installedPackages);
72
- // }
73
- // Now that we have the resolved dependency list, optimize it as the resolveMap.
5
+ const visitedPaths = new Set([appPath, ...additionalPaths]);
6
+ const pathsToVisit = [appPath, ...additionalPaths];
7
+ const relationships = {};
8
+ const allEntries = {};
9
+ while (pathsToVisit.length) {
10
+ const packagePath = pathsToVisit.shift();
11
+ if (packagePath) {
12
+ const definition = await getPackageDefinition(packagePath, true);
13
+ if (definition) {
14
+ const packageId = `${definition.name}@${definition.version}`;
15
+ allEntries[packageId] = createMapEntry(definition, packagePath);
16
+ for (const depName of Object.keys(definition?.dependencies || {})) {
17
+ const dependencyPath = findPackagePath(depName, packagePath);
18
+ const dependencyDefinition = await getPackageDefinition(dependencyPath, true);
19
+ if (dependencyDefinition) {
20
+ const depVersionList = (relationships[dependencyDefinition.name] =
21
+ relationships[dependencyDefinition.name] || {});
22
+ const relationshipList = (depVersionList[dependencyDefinition.version] =
23
+ depVersionList[dependencyDefinition.version] || []);
24
+ relationshipList.push(packageId);
25
+ if (!visitedPaths.has(dependencyPath)) {
26
+ visitedPaths.add(dependencyPath);
27
+ pathsToVisit.push(dependencyPath);
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
33
+ }
34
+ // Now we have all entries and relationships. Iterate through the relationships to build
35
+ // The final resolve map.
74
36
  const resolveMap = {};
75
- // Iterate through installed packages.
76
- for (const packageName of Object.keys(installedPackages)) {
77
- // Get installed versions, sorted by the number of dependencies (greatest to least)
78
- const versions = Object.keys(installedPackages[packageName]).sort((a, b) => installedPackages[packageName][a].requiredBy?.length > installedPackages[packageName][b].requiredBy.length
79
- ? -1
80
- : 1);
81
- // Default to the most used version to dedupe. All other versions scope to specifics.
82
- const defaultVersionEntry = installedPackages[packageName][versions[0]];
83
- // Define the default resolved version for the package.
84
- const depResolveEntry = (resolveMap[packageName] = {
85
- version: versions[0],
86
- path: defaultVersionEntry.path,
87
- entry: await resolveImportFromPackagePath(defaultVersionEntry.path, '', {
88
- preferSource: false,
89
- }),
37
+ for (const [name, versions] of Object.entries(relationships)) {
38
+ const [dominantVersion, ...otherVersions] = Object.keys(versions).sort((a, b) => {
39
+ return versions[a].length < versions[b].length ? 1 : -1;
90
40
  });
91
- // If we have additional versions, scope each of those to their specific parents
92
- if (versions.length > 1) {
93
- const scopedVersionEntries = (depResolveEntry.scopedVersions = {});
94
- for (let i = 1; i < versions.length; i++) {
95
- const scopedVersion = versions[i];
96
- const scopedPackage = installedPackages[packageName][scopedVersion];
97
- for (const dep of scopedPackage.requiredBy) {
98
- scopedVersionEntries[`${dep.name}@${dep.version}`] = {
99
- version: scopedVersion,
100
- path: scopedPackage.path,
101
- entry: await resolveImportFromPackagePath(scopedPackage.path, '', {
102
- preferSource: false,
103
- }),
104
- };
41
+ const dominantId = `${name}@${dominantVersion}`;
42
+ const entry = (resolveMap[name] = resolveMap[dominantId] = allEntries[dominantId]);
43
+ if (otherVersions?.length) {
44
+ entry.scopedVersions = {};
45
+ for (const otherVersion of otherVersions) {
46
+ const scopedId = `${name}@${otherVersion}`;
47
+ const dependents = relationships[name][otherVersion];
48
+ resolveMap[scopedId] = allEntries[scopedId];
49
+ for (const dependentId of dependents) {
50
+ entry.scopedVersions[dependentId] = scopedId;
105
51
  }
106
52
  }
107
53
  }
108
54
  }
109
- // await writeFile(
110
- // path.join(appPath, 'resolve-map.json'),
111
- // JSON.stringify(resolveMap, null, 2),
112
- // 'utf8'
113
- // );
114
- return { resolveMap, stats };
55
+ return resolveMap;
56
+ }
57
+ function createMapEntry(packageDefinition, packagePath) {
58
+ const { name, version } = packageDefinition;
59
+ return {
60
+ name,
61
+ version,
62
+ path: packagePath,
63
+ };
115
64
  }
116
65
  //# sourceMappingURL=createResolveMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAA0B,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAiBvD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAAwD;IAC7F,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAClD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;IACpE,MAAM,YAAY,GAAa,CAAC,OAAO,EAAE,GAAG,eAAe,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAyD,EAAE,CAAC;IAC/E,MAAM,UAAU,GAAoC,EAAE,CAAC;IAEvD,OAAO,YAAY,CAAC,MAAM,EAAE;QAC1B,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC;QAEzC,IAAI,WAAW,EAAE;YACf,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAEjE,IAAI,UAAU,EAAE;gBACd,MAAM,SAAS,GAAuB,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBAEjF,UAAU,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAEhE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,IAAI,EAAE,CAAC,EAAE;oBACjE,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;oBAC7D,MAAM,oBAAoB,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;oBAE9E,IAAI,oBAAoB,EAAE;wBACxB,MAAM,cAAc,GAAG,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC;4BAC9D,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;wBAClD,MAAM,gBAAgB,GAAG,CAAC,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC;4BACpE,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBAEtD,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAEjC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;4BACrC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;4BACjC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;yBACnC;qBACF;iBACF;aACF;SACF;KACF;IAED,wFAAwF;IACxF,yBAAyB;IACzB,MAAM,UAAU,GAAe,EAAE,CAAC;IAElC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;QAC5D,MAAM,CAAC,eAAe,EAAE,GAAG,aAAa,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9E,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,GAAG,IAAI,IAAI,eAAe,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QAEnF,IAAI,aAAa,EAAE,MAAM,EAAE;YACzB,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC;YAE1B,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE;gBACxC,MAAM,QAAQ,GAAuB,GAAG,IAAI,IAAI,YAAY,EAAE,CAAC;gBAC/D,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;gBAErD,UAAU,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAE5C,KAAK,MAAM,WAAW,IAAI,UAAU,EAAE;oBACpC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC;iBAC9C;aACF;SACF;KACF;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,iBAAoC,EAAE,WAAmB;IAC/E,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;IAE5C,OAAO;QACL,IAAI;QACJ,OAAO;QACP,IAAI,EAAE,WAAW;KAClB,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function findPackagePath(dependencyName: string, cwd: string): string;
@@ -0,0 +1,14 @@
1
+ import path from 'path';
2
+ import fs from 'fs';
3
+ export function findPackagePath(dependencyName, cwd) {
4
+ let packagePath = cwd;
5
+ while (path.dirname(packagePath) !== packagePath) {
6
+ const resolvedPath = path.join(packagePath, 'node_modules', dependencyName);
7
+ if (fs.existsSync(path.join(resolvedPath, 'package.json'))) {
8
+ return fs.realpathSync(resolvedPath);
9
+ }
10
+ packagePath = path.dirname(packagePath);
11
+ }
12
+ throw new Error(`Could not resolve "${dependencyName}" from "${cwd}"`);
13
+ }
14
+ //# sourceMappingURL=findPackagePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findPackagePath.js","sourceRoot":"","sources":["../src/findPackagePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,UAAU,eAAe,CAAC,cAAsB,EAAE,GAAW;IACjE,IAAI,WAAW,GAAG,GAAG,CAAC;IAEtB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,WAAW,EAAE;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAE5E,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE;YAC1D,OAAO,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;SACtC;QAED,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;KACzC;IAED,MAAM,IAAI,KAAK,CAAC,sBAAsB,cAAc,WAAW,GAAG,GAAG,CAAC,CAAC;AACzE,CAAC"}
@@ -15,7 +15,7 @@ export interface ResolveImportFromPackageOptions {
15
15
  */
16
16
  export declare function resolveImportFromPackagePath(packagePath: string, requestedPath?: string, options?: ResolveImportFromPackageOptions): Promise<string>;
17
17
  /**
18
- * Resolves a requested import path from a package located at the given path. Gives prescedence
18
+ * Resolves a requested import path from a package located at the given path. Gives precedence
19
19
  * to browser/esm options. This may change in a future iteration.
20
20
  */
21
21
  export declare function resolveImportFromPackage(packagePath: string, packageDefinition: PackageDefinition, importPath?: string, options?: ResolveImportFromPackageOptions): Promise<string>;
@@ -16,7 +16,7 @@ export async function resolveImportFromPackagePath(packagePath, requestedPath =
16
16
  return resolveImportFromPackage(packagePath, packageDefinition, requestedPath, options);
17
17
  }
18
18
  /**
19
- * Resolves a requested import path from a package located at the given path. Gives prescedence
19
+ * Resolves a requested import path from a package located at the given path. Gives precedence
20
20
  * to browser/esm options. This may change in a future iteration.
21
21
  */
22
22
  export async function resolveImportFromPackage(packagePath, packageDefinition, importPath = '', options = {}) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/package-utilities",
3
- "version": "0.1.7",
3
+ "version": "0.2.0",
4
4
  "description": "Utilities for resolving/parsing packages and their imports.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,7 +15,7 @@
15
15
  "dependencies": {
16
16
  "@babel/parser": "^7.16.12",
17
17
  "@babel/traverse": "^7.16.10",
18
- "@ms-cloudpack/path-utilities": "^0.1.0",
18
+ "@ms-cloudpack/path-utilities": "^0.2.0",
19
19
  "resolve": "^1.22.0"
20
20
  },
21
21
  "devDependencies": {
@@ -1,11 +0,0 @@
1
- // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
- // It should be published with your NPM package. It should not be tracked by Git.
3
- {
4
- "tsdocVersion": "0.12",
5
- "toolPackages": [
6
- {
7
- "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.24.0"
9
- }
10
- ]
11
- }