@pnpm/build-modules 10.0.7 → 10.1.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/lib/index.d.ts +1 -0
- package/lib/index.js +25 -0
- package/lib/index.js.map +1 -1
- package/package.json +10 -8
package/lib/index.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ export declare function buildModules(depGraph: DependenciesGraph, rootDepPaths:
|
|
|
22
22
|
sideEffectsCacheWrite: boolean;
|
|
23
23
|
storeController: StoreController;
|
|
24
24
|
rootModulesDir: string;
|
|
25
|
+
hoistedLocations?: Record<string, string[]>;
|
|
25
26
|
}): Promise<void>;
|
|
26
27
|
export declare function linkBinsOfDependencies(depNode: DependenciesGraphNode, depGraph: DependenciesGraph, opts: {
|
|
27
28
|
extraNodePaths?: string[];
|
package/lib/index.js
CHANGED
|
@@ -11,7 +11,9 @@ const error_1 = require("@pnpm/error");
|
|
|
11
11
|
const lifecycle_1 = require("@pnpm/lifecycle");
|
|
12
12
|
const link_bins_1 = require("@pnpm/link-bins");
|
|
13
13
|
const logger_1 = require("@pnpm/logger");
|
|
14
|
+
const fs_hard_link_dir_1 = require("@pnpm/fs.hard-link-dir");
|
|
14
15
|
const read_package_json_1 = require("@pnpm/read-package-json");
|
|
16
|
+
const p_defer_1 = __importDefault(require("p-defer"));
|
|
15
17
|
const applyPatches_1 = require("patch-package/dist/applyPatches");
|
|
16
18
|
const pickBy_1 = __importDefault(require("ramda/src/pickBy"));
|
|
17
19
|
const run_groups_1 = __importDefault(require("run-groups"));
|
|
@@ -20,6 +22,9 @@ async function buildModules(depGraph, rootDepPaths, opts) {
|
|
|
20
22
|
const warn = (message) => logger_1.logger.warn({ message, prefix: opts.lockfileDir });
|
|
21
23
|
// postinstall hooks
|
|
22
24
|
const buildDepOpts = { ...opts, warn };
|
|
25
|
+
if (opts.hoistedLocations) {
|
|
26
|
+
buildDepOpts['builtHoistedDeps'] = {};
|
|
27
|
+
}
|
|
23
28
|
const chunks = (0, buildSequence_1.buildSequence)(depGraph, rootDepPaths);
|
|
24
29
|
const groups = chunks.map((chunk) => {
|
|
25
30
|
chunk = chunk.filter((depPath) => {
|
|
@@ -36,6 +41,13 @@ async function buildModules(depGraph, rootDepPaths, opts) {
|
|
|
36
41
|
exports.buildModules = buildModules;
|
|
37
42
|
async function buildDependency(depPath, depGraph, opts) {
|
|
38
43
|
const depNode = depGraph[depPath];
|
|
44
|
+
if (opts.builtHoistedDeps) {
|
|
45
|
+
if (opts.builtHoistedDeps[depNode.depPath]) {
|
|
46
|
+
await opts.builtHoistedDeps[depNode.depPath].promise;
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
opts.builtHoistedDeps[depNode.depPath] = (0, p_defer_1.default)();
|
|
50
|
+
}
|
|
39
51
|
try {
|
|
40
52
|
await linkBinsOfDependencies(depNode, depGraph, opts);
|
|
41
53
|
const isPatched = depNode.patchFile?.path != null;
|
|
@@ -102,6 +114,19 @@ async function buildDependency(depPath, depGraph, opts) {
|
|
|
102
114
|
}
|
|
103
115
|
throw err;
|
|
104
116
|
}
|
|
117
|
+
finally {
|
|
118
|
+
const hoistedLocationsOfDep = opts.hoistedLocations?.[depNode.depPath];
|
|
119
|
+
if (hoistedLocationsOfDep) {
|
|
120
|
+
// There is no need to build the same package in every location.
|
|
121
|
+
// We just copy the built package to every location where it is present.
|
|
122
|
+
const currentHoistedLocation = path_1.default.relative(opts.lockfileDir, depNode.dir);
|
|
123
|
+
const nonBuiltHoistedDeps = hoistedLocationsOfDep?.filter((hoistedLocation) => hoistedLocation !== currentHoistedLocation);
|
|
124
|
+
await (0, fs_hard_link_dir_1.hardLinkDir)(depNode.dir, nonBuiltHoistedDeps);
|
|
125
|
+
}
|
|
126
|
+
if (opts.builtHoistedDeps) {
|
|
127
|
+
opts.builtHoistedDeps[depNode.depPath].resolve();
|
|
128
|
+
}
|
|
129
|
+
}
|
|
105
130
|
}
|
|
106
131
|
function applyPatchToDep(patchDir, patchFilePath) {
|
|
107
132
|
// Ideally, we would just run "patch" or "git apply".
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,yDAAmE;AACnE,qDAAoE;AACpE,uCAAuC;AACvC,+CAAqD;AACrD,+CAA8D;AAC9D,yCAAqC;AACrC,+DAA4F;AAG5F,kEAA4D;AAC5D,8DAAqC;AACrC,4DAAkC;AAClC,mDAAyF;AAIlF,KAAK,UAAU,YAAY,CAChC,QAA2B,EAC3B,YAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnpm/build-modules",
|
|
3
|
-
"version": "10.0
|
|
3
|
+
"version": "10.1.0",
|
|
4
4
|
"description": "Build packages in node_modules",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -28,21 +28,23 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@pnpm/graph-sequencer": "1.0.0",
|
|
31
|
+
"p-defer": "^3.0.0",
|
|
31
32
|
"patch-package": "^6.5.0",
|
|
32
33
|
"ramda": "npm:@pnpm/ramda@0.28.1",
|
|
33
34
|
"run-groups": "^3.0.1",
|
|
34
35
|
"@pnpm/calc-dep-state": "3.0.1",
|
|
35
|
-
"@pnpm/core-loggers": "8.0.
|
|
36
|
+
"@pnpm/core-loggers": "8.0.3",
|
|
36
37
|
"@pnpm/error": "4.0.0",
|
|
37
|
-
"@pnpm/
|
|
38
|
-
"@pnpm/
|
|
39
|
-
"@pnpm/
|
|
40
|
-
"@pnpm/
|
|
41
|
-
"@pnpm/types": "
|
|
38
|
+
"@pnpm/fs.hard-link-dir": "1.0.0",
|
|
39
|
+
"@pnpm/lifecycle": "14.1.4",
|
|
40
|
+
"@pnpm/link-bins": "8.0.5",
|
|
41
|
+
"@pnpm/read-package-json": "7.0.4",
|
|
42
|
+
"@pnpm/store-controller-types": "14.2.0",
|
|
43
|
+
"@pnpm/types": "8.10.0"
|
|
42
44
|
},
|
|
43
45
|
"devDependencies": {
|
|
44
46
|
"@types/ramda": "0.28.20",
|
|
45
|
-
"@pnpm/build-modules": "10.0
|
|
47
|
+
"@pnpm/build-modules": "10.1.0"
|
|
46
48
|
},
|
|
47
49
|
"funding": "https://opencollective.com/pnpm",
|
|
48
50
|
"exports": {
|