@electron/rebuild 3.7.2 → 4.0.1
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/README.md +28 -15
- package/lib/arch.d.ts +1 -1
- package/lib/arch.js +4 -9
- package/lib/arch.js.map +1 -1
- package/lib/cache.d.ts +2 -2
- package/lib/cache.js +35 -41
- package/lib/cache.js.map +1 -1
- package/lib/clang-fetcher.js +26 -56
- package/lib/clang-fetcher.js.map +1 -1
- package/lib/cli.js +22 -52
- package/lib/cli.js.map +1 -1
- package/lib/constants.js +3 -29
- package/lib/constants.js.map +1 -1
- package/lib/electron-locator.js +12 -38
- package/lib/electron-locator.js.map +1 -1
- package/lib/fetcher.d.ts +2 -1
- package/lib/fetcher.js +5 -12
- package/lib/fetcher.js.map +1 -1
- package/lib/main.d.ts +1 -2
- package/lib/main.js +2 -9
- package/lib/main.js.map +1 -1
- package/lib/module-rebuilder.d.ts +1 -1
- package/lib/module-rebuilder.js +30 -52
- package/lib/module-rebuilder.js.map +1 -1
- package/lib/module-type/index.d.ts +3 -3
- package/lib/module-type/index.js +19 -22
- package/lib/module-type/index.js.map +1 -1
- package/lib/module-type/node-gyp/node-gyp.d.ts +1 -1
- package/lib/module-type/node-gyp/node-gyp.js +18 -26
- package/lib/module-type/node-gyp/node-gyp.js.map +1 -1
- package/lib/module-type/node-gyp/worker.js +2 -7
- package/lib/module-type/node-gyp/worker.js.map +1 -1
- package/lib/module-type/node-pre-gyp.d.ts +1 -1
- package/lib/module-type/node-pre-gyp.js +14 -22
- package/lib/module-type/node-pre-gyp.js.map +1 -1
- package/lib/module-type/prebuild-install.d.ts +1 -1
- package/lib/module-type/prebuild-install.js +12 -20
- package/lib/module-type/prebuild-install.js.map +1 -1
- package/lib/module-type/prebuildify.d.ts +1 -1
- package/lib/module-type/prebuildify.js +18 -27
- package/lib/module-type/prebuildify.js.map +1 -1
- package/lib/module-walker.d.ts +1 -1
- package/lib/module-walker.js +29 -27
- package/lib/module-walker.js.map +1 -1
- package/lib/node-api.js +5 -7
- package/lib/node-api.js.map +1 -1
- package/lib/prebuild-shim.d.ts +1 -0
- package/lib/prebuild-shim.js +2 -1
- package/lib/prebuild-shim.js.map +1 -1
- package/lib/promisifiedGracefulFs.d.ts +3 -0
- package/lib/promisifiedGracefulFs.js +9 -0
- package/lib/promisifiedGracefulFs.js.map +1 -0
- package/lib/read-package-json.js +6 -31
- package/lib/read-package-json.js.map +1 -1
- package/lib/rebuild.d.ts +6 -6
- package/lib/rebuild.js +42 -54
- package/lib/rebuild.js.map +1 -1
- package/lib/search-module.js +7 -36
- package/lib/search-module.js.map +1 -1
- package/lib/sysroot-fetcher.js +20 -50
- package/lib/sysroot-fetcher.js.map +1 -1
- package/lib/types.d.ts +4 -3
- package/lib/types.js +2 -5
- package/lib/types.js.map +1 -1
- package/package.json +21 -65
package/lib/read-package-json.js
CHANGED
|
@@ -1,35 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.readPackageJson = void 0;
|
|
27
|
-
const fs = __importStar(require("fs-extra"));
|
|
28
|
-
const path = __importStar(require("path"));
|
|
1
|
+
import { promisifiedGracefulFs } from './promisifiedGracefulFs.js';
|
|
2
|
+
import path from 'node:path';
|
|
29
3
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
30
|
-
async function readPackageJson(dir, safe = false) {
|
|
4
|
+
export async function readPackageJson(dir, safe = false) {
|
|
31
5
|
try {
|
|
32
|
-
return await
|
|
6
|
+
return JSON.parse(await promisifiedGracefulFs.readFile(path.resolve(dir, 'package.json'), {
|
|
7
|
+
encoding: 'utf-8',
|
|
8
|
+
}));
|
|
33
9
|
}
|
|
34
10
|
catch (err) {
|
|
35
11
|
if (safe) {
|
|
@@ -40,5 +16,4 @@ async function readPackageJson(dir, safe = false) {
|
|
|
40
16
|
}
|
|
41
17
|
}
|
|
42
18
|
}
|
|
43
|
-
exports.readPackageJson = readPackageJson;
|
|
44
19
|
//# sourceMappingURL=read-package-json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-package-json.js","sourceRoot":"","sources":["../src/read-package-json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"read-package-json.js","sourceRoot":"","sources":["../src/read-package-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW,EAAE,IAAI,GAAG,KAAK;IAC7D,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE;YACxF,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC"}
|
package/lib/rebuild.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { EventEmitter } from 'node:events';
|
|
4
|
+
import { BuildType, IRebuilder, RebuildMode } from './types.js';
|
|
5
|
+
import { ModuleType } from './module-walker.js';
|
|
5
6
|
export interface RebuildOptions {
|
|
6
7
|
/**
|
|
7
8
|
* The path to the `node_modules` directory to rebuild.
|
|
@@ -118,7 +119,6 @@ export interface RebuilderOptions extends RebuildOptions {
|
|
|
118
119
|
export declare class Rebuilder implements IRebuilder {
|
|
119
120
|
private ABIVersion;
|
|
120
121
|
private moduleWalker;
|
|
121
|
-
nodeGypPath: string;
|
|
122
122
|
rebuilds: (() => Promise<void>)[];
|
|
123
123
|
lifecycle: EventEmitter;
|
|
124
124
|
buildPath: string;
|
|
@@ -144,7 +144,7 @@ export declare class Rebuilder implements IRebuilder {
|
|
|
144
144
|
modulesToRebuild(): Promise<string[]>;
|
|
145
145
|
rebuildModuleAt(modulePath: string): Promise<void>;
|
|
146
146
|
}
|
|
147
|
-
export
|
|
147
|
+
export type RebuildResult = Promise<void> & {
|
|
148
148
|
lifecycle: EventEmitter;
|
|
149
149
|
};
|
|
150
150
|
export declare function rebuild(options: RebuildOptions): RebuildResult;
|
package/lib/rebuild.js
CHANGED
|
@@ -1,48 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.rebuild = exports.Rebuilder = void 0;
|
|
30
|
-
const debug_1 = __importDefault(require("debug"));
|
|
31
|
-
const events_1 = require("events");
|
|
32
|
-
const fs = __importStar(require("fs-extra"));
|
|
33
|
-
const nodeAbi = __importStar(require("node-abi"));
|
|
34
|
-
const os = __importStar(require("os"));
|
|
35
|
-
const path = __importStar(require("path"));
|
|
36
|
-
const cache_1 = require("./cache");
|
|
37
|
-
const types_1 = require("./types");
|
|
38
|
-
const module_rebuilder_1 = require("./module-rebuilder");
|
|
39
|
-
const module_walker_1 = require("./module-walker");
|
|
40
|
-
const d = (0, debug_1.default)('electron-rebuild');
|
|
1
|
+
import debug from 'debug';
|
|
2
|
+
import { EventEmitter } from 'node:events';
|
|
3
|
+
import fs from 'graceful-fs';
|
|
4
|
+
import { getAbi } from 'node-abi';
|
|
5
|
+
import os from 'node:os';
|
|
6
|
+
import path from 'node:path';
|
|
7
|
+
import { generateCacheKey, lookupModuleState } from './cache.js';
|
|
8
|
+
import { BuildType } from './types.js';
|
|
9
|
+
import { ModuleRebuilder } from './module-rebuilder.js';
|
|
10
|
+
import { ModuleWalker } from './module-walker.js';
|
|
11
|
+
const d = debug('electron-rebuild');
|
|
41
12
|
const defaultMode = 'sequential';
|
|
42
13
|
const defaultTypes = ['prod', 'optional'];
|
|
43
|
-
class Rebuilder {
|
|
14
|
+
export class Rebuilder {
|
|
15
|
+
ABIVersion;
|
|
16
|
+
moduleWalker;
|
|
17
|
+
rebuilds;
|
|
18
|
+
lifecycle;
|
|
19
|
+
buildPath;
|
|
20
|
+
electronVersion;
|
|
21
|
+
platform;
|
|
22
|
+
arch;
|
|
23
|
+
force;
|
|
24
|
+
headerURL;
|
|
25
|
+
mode;
|
|
26
|
+
debug;
|
|
27
|
+
useCache;
|
|
28
|
+
cachePath;
|
|
29
|
+
prebuildTagPrefix;
|
|
30
|
+
msvsVersion;
|
|
31
|
+
useElectronClang;
|
|
32
|
+
disablePreGypCopy;
|
|
33
|
+
buildFromSource;
|
|
34
|
+
ignoreModules;
|
|
44
35
|
constructor(options) {
|
|
45
|
-
var _a;
|
|
46
36
|
this.lifecycle = options.lifecycle;
|
|
47
37
|
this.buildPath = options.buildPath;
|
|
48
38
|
this.electronVersion = options.electronVersion;
|
|
@@ -76,23 +66,23 @@ class Rebuilder {
|
|
|
76
66
|
if (typeof this.electronVersion !== 'string') {
|
|
77
67
|
throw new Error(`Expected a string version for electron version, got a "${typeof this.electronVersion}"`);
|
|
78
68
|
}
|
|
79
|
-
this.ABIVersion =
|
|
69
|
+
this.ABIVersion = options.forceABI?.toString();
|
|
80
70
|
const onlyModules = options.onlyModules || null;
|
|
81
71
|
const extraModules = new Set(options.extraModules);
|
|
82
72
|
const types = options.types || defaultTypes;
|
|
83
|
-
this.moduleWalker = new
|
|
73
|
+
this.moduleWalker = new ModuleWalker(this.buildPath, options.projectRootPath, types, extraModules, onlyModules);
|
|
84
74
|
this.rebuilds = [];
|
|
85
75
|
d('rebuilding with args:', this.buildPath, this.electronVersion, this.platform, this.arch, extraModules, this.force, this.headerURL, types, this.debug);
|
|
86
76
|
}
|
|
87
77
|
get ABI() {
|
|
88
78
|
if (this.ABIVersion === undefined) {
|
|
89
|
-
this.ABIVersion =
|
|
79
|
+
this.ABIVersion = getAbi(this.electronVersion, 'electron');
|
|
90
80
|
}
|
|
91
81
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
92
82
|
return this.ABIVersion;
|
|
93
83
|
}
|
|
94
84
|
get buildType() {
|
|
95
|
-
return this.debug ?
|
|
85
|
+
return this.debug ? BuildType.Debug : BuildType.Release;
|
|
96
86
|
}
|
|
97
87
|
async rebuild() {
|
|
98
88
|
if (!path.isAbsolute(this.buildPath)) {
|
|
@@ -120,10 +110,10 @@ class Rebuilder {
|
|
|
120
110
|
return this.moduleWalker.modulesToRebuild;
|
|
121
111
|
}
|
|
122
112
|
async rebuildModuleAt(modulePath) {
|
|
123
|
-
if (!(
|
|
113
|
+
if (!(fs.existsSync(path.resolve(modulePath, 'binding.gyp')))) {
|
|
124
114
|
return;
|
|
125
115
|
}
|
|
126
|
-
const moduleRebuilder = new
|
|
116
|
+
const moduleRebuilder = new ModuleRebuilder(this, modulePath);
|
|
127
117
|
let moduleName = path.basename(modulePath);
|
|
128
118
|
const parentName = path.basename(path.dirname(modulePath));
|
|
129
119
|
if (parentName !== 'node_modules') {
|
|
@@ -149,7 +139,7 @@ class Rebuilder {
|
|
|
149
139
|
}
|
|
150
140
|
let cacheKey;
|
|
151
141
|
if (this.useCache) {
|
|
152
|
-
cacheKey = await
|
|
142
|
+
cacheKey = await generateCacheKey({
|
|
153
143
|
ABI: this.ABI,
|
|
154
144
|
arch: this.arch,
|
|
155
145
|
platform: this.platform,
|
|
@@ -158,7 +148,7 @@ class Rebuilder {
|
|
|
158
148
|
headerURL: this.headerURL,
|
|
159
149
|
modulePath,
|
|
160
150
|
});
|
|
161
|
-
const applyDiffFn = await
|
|
151
|
+
const applyDiffFn = await lookupModuleState(this.cachePath, cacheKey);
|
|
162
152
|
if (typeof applyDiffFn === 'function') {
|
|
163
153
|
await applyDiffFn(modulePath);
|
|
164
154
|
this.lifecycle.emit('module-done', moduleName);
|
|
@@ -170,16 +160,14 @@ class Rebuilder {
|
|
|
170
160
|
}
|
|
171
161
|
}
|
|
172
162
|
}
|
|
173
|
-
|
|
174
|
-
function rebuild(options) {
|
|
163
|
+
export function rebuild(options) {
|
|
175
164
|
// eslint-disable-next-line prefer-rest-params
|
|
176
165
|
d('rebuilding with args:', arguments);
|
|
177
|
-
const lifecycle = new
|
|
166
|
+
const lifecycle = new EventEmitter();
|
|
178
167
|
const rebuilderOptions = { ...options, lifecycle };
|
|
179
168
|
const rebuilder = new Rebuilder(rebuilderOptions);
|
|
180
169
|
const ret = rebuilder.rebuild();
|
|
181
170
|
ret.lifecycle = lifecycle;
|
|
182
171
|
return ret;
|
|
183
172
|
}
|
|
184
|
-
exports.rebuild = rebuild;
|
|
185
173
|
//# sourceMappingURL=rebuild.js.map
|
package/lib/rebuild.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../src/rebuild.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../src/rebuild.ts"],"names":[],"mappings":"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"}
|
package/lib/search-module.js
CHANGED
|
@@ -1,37 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.getProjectRootPath = exports.searchForNodeModules = exports.searchForModule = void 0;
|
|
27
|
-
const fs = __importStar(require("fs-extra"));
|
|
28
|
-
const path = __importStar(require("path"));
|
|
1
|
+
import fs from 'graceful-fs';
|
|
2
|
+
import path from 'node:path';
|
|
29
3
|
async function shouldContinueSearch(traversedPath, rootPath, stopAtPackageJSON) {
|
|
30
4
|
if (rootPath) {
|
|
31
5
|
return Promise.resolve(traversedPath !== path.dirname(rootPath));
|
|
32
6
|
}
|
|
33
7
|
else if (stopAtPackageJSON) {
|
|
34
|
-
return fs.
|
|
8
|
+
return fs.existsSync(path.join(traversedPath, 'package.json'));
|
|
35
9
|
}
|
|
36
10
|
else {
|
|
37
11
|
return true;
|
|
@@ -42,7 +16,7 @@ async function traverseAncestorDirectories(cwd, pathGenerator, rootPath, maxItem
|
|
|
42
16
|
let traversedPath = path.resolve(cwd);
|
|
43
17
|
while (await shouldContinueSearch(traversedPath, rootPath, stopAtPackageJSON)) {
|
|
44
18
|
const generatedPath = pathGenerator(traversedPath);
|
|
45
|
-
if (
|
|
19
|
+
if (fs.existsSync(generatedPath)) {
|
|
46
20
|
paths.push(generatedPath);
|
|
47
21
|
}
|
|
48
22
|
const parentPath = path.dirname(traversedPath);
|
|
@@ -61,29 +35,27 @@ async function traverseAncestorDirectories(cwd, pathGenerator, rootPath, maxItem
|
|
|
61
35
|
* @param moduleName the Node module name (should work for scoped modules as well)
|
|
62
36
|
* @param rootPath the project's root path. If provided, the traversal will stop at this path.
|
|
63
37
|
*/
|
|
64
|
-
async function searchForModule(cwd, moduleName, rootPath) {
|
|
38
|
+
export async function searchForModule(cwd, moduleName, rootPath) {
|
|
65
39
|
const pathGenerator = (traversedPath) => path.join(traversedPath, 'node_modules', moduleName);
|
|
66
40
|
return traverseAncestorDirectories(cwd, pathGenerator, rootPath, undefined, true);
|
|
67
41
|
}
|
|
68
|
-
exports.searchForModule = searchForModule;
|
|
69
42
|
/**
|
|
70
43
|
* Find all instances of node_modules subdirectories while traversing up ancestor directories.
|
|
71
44
|
*
|
|
72
45
|
* @param cwd the initial directory to traverse
|
|
73
46
|
* @param rootPath the project's root path. If provided, the traversal will stop at this path.
|
|
74
47
|
*/
|
|
75
|
-
async function searchForNodeModules(cwd, rootPath) {
|
|
48
|
+
export async function searchForNodeModules(cwd, rootPath) {
|
|
76
49
|
const pathGenerator = (traversedPath) => path.join(traversedPath, 'node_modules');
|
|
77
50
|
return traverseAncestorDirectories(cwd, pathGenerator, rootPath, undefined, true);
|
|
78
51
|
}
|
|
79
|
-
exports.searchForNodeModules = searchForNodeModules;
|
|
80
52
|
/**
|
|
81
53
|
* Determine the root directory of a given project, by looking for a directory with an
|
|
82
54
|
* NPM or yarn lockfile or pnpm lockfile.
|
|
83
55
|
*
|
|
84
56
|
* @param cwd the initial directory to traverse
|
|
85
57
|
*/
|
|
86
|
-
async function getProjectRootPath(cwd) {
|
|
58
|
+
export async function getProjectRootPath(cwd) {
|
|
87
59
|
for (const lockFilename of ['yarn.lock', 'package-lock.json', 'pnpm-lock.yaml']) {
|
|
88
60
|
const pathGenerator = (traversedPath) => path.join(traversedPath, lockFilename);
|
|
89
61
|
const lockPaths = await traverseAncestorDirectories(cwd, pathGenerator, undefined, 1);
|
|
@@ -93,5 +65,4 @@ async function getProjectRootPath(cwd) {
|
|
|
93
65
|
}
|
|
94
66
|
return cwd;
|
|
95
67
|
}
|
|
96
|
-
exports.getProjectRootPath = getProjectRootPath;
|
|
97
68
|
//# sourceMappingURL=search-module.js.map
|
package/lib/search-module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-module.js","sourceRoot":"","sources":["../src/search-module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"search-module.js","sourceRoot":"","sources":["../src/search-module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,KAAK,UAAU,oBAAoB,CAAC,aAAqB,EAAE,QAAiB,EAAE,iBAA2B;IACvG,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;SAAM,IAAI,iBAAiB,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAID,KAAK,UAAU,2BAA2B,CACxC,GAAW,EACX,aAAoC,EACpC,QAAiB,EACjB,QAAiB,EACjB,iBAA2B;IAE3B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEtC,OAAO,MAAM,oBAAoB,CAAC,aAAa,EAAE,QAAQ,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC9E,MAAM,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,UAAU,KAAK,aAAa,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,EAAE,CAAC;YAC3E,MAAM;QACR,CAAC;QACD,aAAa,GAAG,UAAU,CAAC;IAC7B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,UAAkB,EAClB,QAAiB;IAEjB,MAAM,aAAa,GAA0B,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IACrH,OAAO,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACpF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,GAAW,EAAE,QAAiB;IACvE,MAAM,aAAa,GAA0B,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IACzG,OAAO,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACpF,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAClD,KAAK,MAAM,YAAY,IAAI,CAAC,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAChF,MAAM,aAAa,GAA0B,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACvG,MAAM,SAAS,GAAG,MAAM,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QACtF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/lib/sysroot-fetcher.js
CHANGED
|
@@ -1,70 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.downloadLinuxSysroot = void 0;
|
|
30
|
-
const cross_spawn_promise_1 = require("@malept/cross-spawn-promise");
|
|
31
|
-
const crypto = __importStar(require("crypto"));
|
|
32
|
-
const debug_1 = __importDefault(require("debug"));
|
|
33
|
-
const fs = __importStar(require("fs-extra"));
|
|
34
|
-
const path = __importStar(require("path"));
|
|
35
|
-
const constants_1 = require("./constants");
|
|
36
|
-
const fetcher_1 = require("./fetcher");
|
|
37
|
-
const d = (0, debug_1.default)('electron-rebuild');
|
|
1
|
+
import { spawn } from '@malept/cross-spawn-promise';
|
|
2
|
+
import crypto from 'node:crypto';
|
|
3
|
+
import debug from 'debug';
|
|
4
|
+
import fs from 'graceful-fs';
|
|
5
|
+
import path from 'node:path';
|
|
6
|
+
import { ELECTRON_GYP_DIR } from './constants.js';
|
|
7
|
+
import { fetch } from './fetcher.js';
|
|
8
|
+
import { promisifiedGracefulFs } from './promisifiedGracefulFs.js';
|
|
9
|
+
const d = debug('electron-rebuild');
|
|
38
10
|
const sysrootArchAliases = {
|
|
39
11
|
x64: 'amd64',
|
|
40
12
|
ia32: 'i386',
|
|
41
13
|
};
|
|
42
14
|
const SYSROOT_BASE_URL = 'https://dev-cdn.electronjs.org/linux-sysroots';
|
|
43
|
-
async function downloadLinuxSysroot(electronVersion, targetArch) {
|
|
15
|
+
export async function downloadLinuxSysroot(electronVersion, targetArch) {
|
|
44
16
|
d('fetching sysroot for Electron:', electronVersion);
|
|
45
|
-
const sysrootDir = path.resolve(
|
|
46
|
-
if (
|
|
17
|
+
const sysrootDir = path.resolve(ELECTRON_GYP_DIR, `${electronVersion}-sysroot`);
|
|
18
|
+
if (fs.existsSync(path.resolve(sysrootDir, 'lib')))
|
|
47
19
|
return sysrootDir;
|
|
48
|
-
|
|
49
|
-
await fs.mkdirp(sysrootDir);
|
|
20
|
+
await fs.promises.mkdir(sysrootDir, { recursive: true });
|
|
50
21
|
const linuxArch = sysrootArchAliases[targetArch] || targetArch;
|
|
51
|
-
const electronSysroots = JSON.parse(await
|
|
22
|
+
const electronSysroots = JSON.parse(await fetch(`https://raw.githubusercontent.com/electron/electron/v${electronVersion}/script/sysroots.json`, 'text'));
|
|
52
23
|
const { Sha1Sum: sha, Tarball: fileName } = electronSysroots[`sid_${linuxArch}`] || electronSysroots[`bullseye_${linuxArch}`];
|
|
53
24
|
const sysrootURL = `${SYSROOT_BASE_URL}/${sha}/${fileName}`;
|
|
54
|
-
const sysrootBuffer = await
|
|
25
|
+
const sysrootBuffer = await fetch(sysrootURL, 'buffer');
|
|
55
26
|
const actualSha = crypto.createHash('SHA1').update(sysrootBuffer).digest('hex');
|
|
56
27
|
d('expected sha:', sha);
|
|
57
28
|
d('actual sha:', actualSha);
|
|
58
29
|
if (sha !== actualSha)
|
|
59
30
|
throw new Error(`Attempted to download the linux sysroot for ${electronVersion} but the SHA checksum did not match`);
|
|
60
31
|
d('writing sysroot to disk');
|
|
61
|
-
const tmpTarFile = path.resolve(
|
|
62
|
-
if (
|
|
63
|
-
await fs.
|
|
64
|
-
await
|
|
32
|
+
const tmpTarFile = path.resolve(ELECTRON_GYP_DIR, `${electronVersion}-${fileName}`);
|
|
33
|
+
if (fs.existsSync(tmpTarFile))
|
|
34
|
+
await fs.promises.rm(tmpTarFile, { recursive: true, force: true });
|
|
35
|
+
await promisifiedGracefulFs.writeFile(tmpTarFile, sysrootBuffer);
|
|
65
36
|
d('decompressing sysroot');
|
|
66
|
-
await
|
|
37
|
+
await spawn('tar', ['-xf', tmpTarFile, '-C', sysrootDir], { stdio: 'ignore' });
|
|
67
38
|
return sysrootDir;
|
|
68
39
|
}
|
|
69
|
-
exports.downloadLinuxSysroot = downloadLinuxSysroot;
|
|
70
40
|
//# sourceMappingURL=sysroot-fetcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sysroot-fetcher.js","sourceRoot":"","sources":["../src/sysroot-fetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sysroot-fetcher.js","sourceRoot":"","sources":["../src/sysroot-fetcher.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { EventEmitter } from 'node:events';
|
|
3
4
|
export declare enum BuildType {
|
|
4
5
|
Debug = "Debug",
|
|
5
6
|
Release = "Release"
|
|
6
7
|
}
|
|
7
|
-
export
|
|
8
|
+
export type RebuildMode = 'sequential' | 'parallel';
|
|
8
9
|
export interface IRebuilder {
|
|
9
10
|
ABI: string;
|
|
10
11
|
arch: string;
|
package/lib/types.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BuildType = void 0;
|
|
4
|
-
var BuildType;
|
|
1
|
+
export var BuildType;
|
|
5
2
|
(function (BuildType) {
|
|
6
3
|
BuildType["Debug"] = "Debug";
|
|
7
4
|
BuildType["Release"] = "Release";
|
|
8
|
-
})(BuildType
|
|
5
|
+
})(BuildType || (BuildType = {}));
|
|
9
6
|
//# sourceMappingURL=types.js.map
|
package/lib/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,gCAAmB,CAAA;AACrB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB"}
|