@theia/native-webpack-plugin 1.42.1 → 1.43.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.
|
@@ -9,7 +9,6 @@ export interface NativeWebpackPluginOptions {
|
|
|
9
9
|
export declare class NativeWebpackPlugin {
|
|
10
10
|
private bindings;
|
|
11
11
|
private options;
|
|
12
|
-
private tracker;
|
|
13
12
|
constructor(options: NativeWebpackPluginOptions);
|
|
14
13
|
nativeBinding(dependency: string, nodePath: string): void;
|
|
15
14
|
apply(compiler: Compiler): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-webpack-plugin.d.ts","sourceRoot":"","sources":["../src/native-webpack-plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"native-webpack-plugin.d.ts","sourceRoot":"","sources":["../src/native-webpack-plugin.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOxC,MAAM,WAAW,0BAA0B;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,OAAO,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3C;AAED,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,OAAO,CAA6B;gBAEhC,OAAO,EAAE,0BAA0B;IAO/C,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIzD,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;cAwDf,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;cAO9C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;cAgBzD,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;cAelD,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMhF"}
|
|
@@ -19,7 +19,6 @@ exports.NativeWebpackPlugin = void 0;
|
|
|
19
19
|
const path = require("path");
|
|
20
20
|
const fs = require("fs");
|
|
21
21
|
const os = require("os");
|
|
22
|
-
const temp = require("temp");
|
|
23
22
|
const REQUIRE_RIPGREP = '@vscode/ripgrep';
|
|
24
23
|
const REQUIRE_VSCODE_WINDOWS_CA_CERTS = '@vscode/windows-ca-certs';
|
|
25
24
|
const REQUIRE_BINDINGS = 'bindings';
|
|
@@ -29,7 +28,6 @@ class NativeWebpackPlugin {
|
|
|
29
28
|
var _a;
|
|
30
29
|
this.bindings = new Map();
|
|
31
30
|
this.options = options;
|
|
32
|
-
this.tracker = temp.track();
|
|
33
31
|
for (const [name, value] of Object.entries((_a = options.nativeBindings) !== null && _a !== void 0 ? _a : {})) {
|
|
34
32
|
this.nativeBinding(name, value);
|
|
35
33
|
}
|
|
@@ -39,13 +37,20 @@ class NativeWebpackPlugin {
|
|
|
39
37
|
}
|
|
40
38
|
apply(compiler) {
|
|
41
39
|
let replacements = {};
|
|
42
|
-
compiler.hooks.initialize.tap(NativeWebpackPlugin.name, () => {
|
|
40
|
+
compiler.hooks.initialize.tap(NativeWebpackPlugin.name, async () => {
|
|
43
41
|
var _a;
|
|
44
|
-
const directory =
|
|
45
|
-
|
|
42
|
+
const directory = path.resolve(compiler.outputPath, 'native-webpack-plugin');
|
|
43
|
+
if (fs.existsSync(directory)) {
|
|
44
|
+
await fs.promises.rm(directory, {
|
|
45
|
+
force: true,
|
|
46
|
+
recursive: true
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
await fs.promises.mkdir(directory, {
|
|
50
|
+
recursive: true
|
|
46
51
|
});
|
|
47
|
-
const bindingsFile = buildFile(directory, 'bindings.js', bindingsReplacement(Array.from(this.bindings.entries())));
|
|
48
|
-
const ripgrepFile = buildFile(directory, 'ripgrep.js', ripgrepReplacement(this.options.out));
|
|
52
|
+
const bindingsFile = await buildFile(directory, 'bindings.js', bindingsReplacement(Array.from(this.bindings.entries())));
|
|
53
|
+
const ripgrepFile = await buildFile(directory, 'ripgrep.js', ripgrepReplacement(this.options.out));
|
|
49
54
|
const keymappingFile = './build/Release/keymapping.node';
|
|
50
55
|
const windowsCaCertsFile = '@vscode/windows-ca-certs/build/Release/crypt32.node';
|
|
51
56
|
replacements = {
|
|
@@ -73,7 +78,7 @@ class NativeWebpackPlugin {
|
|
|
73
78
|
}
|
|
74
79
|
});
|
|
75
80
|
});
|
|
76
|
-
compiler.hooks.afterEmit.
|
|
81
|
+
compiler.hooks.afterEmit.tapPromise(NativeWebpackPlugin.name, async () => {
|
|
77
82
|
await this.copyTrashHelper(compiler);
|
|
78
83
|
if (this.options.ripgrep) {
|
|
79
84
|
await this.copyRipgrep(compiler);
|
|
@@ -81,10 +86,6 @@ class NativeWebpackPlugin {
|
|
|
81
86
|
if (this.options.pty) {
|
|
82
87
|
await this.copyNodePtySpawnHelper(compiler);
|
|
83
88
|
}
|
|
84
|
-
this.tracker.cleanupSync();
|
|
85
|
-
});
|
|
86
|
-
compiler.hooks.failed.tap(NativeWebpackPlugin.name, async () => {
|
|
87
|
-
this.tracker.cleanupSync();
|
|
88
89
|
});
|
|
89
90
|
}
|
|
90
91
|
async copyRipgrep(compiler) {
|
|
@@ -132,9 +133,9 @@ class NativeWebpackPlugin {
|
|
|
132
133
|
}
|
|
133
134
|
}
|
|
134
135
|
exports.NativeWebpackPlugin = NativeWebpackPlugin;
|
|
135
|
-
function buildFile(root, name, content) {
|
|
136
|
+
async function buildFile(root, name, content) {
|
|
136
137
|
const tmpFile = path.join(root, name);
|
|
137
|
-
fs.
|
|
138
|
+
await fs.promises.writeFile(tmpFile, content);
|
|
138
139
|
return tmpFile;
|
|
139
140
|
}
|
|
140
141
|
const ripgrepReplacement = (nativePath = '.') => `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-webpack-plugin.js","sourceRoot":"","sources":["../src/native-webpack-plugin.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,6BAA6B;AAC7B,yBAAyB;AACzB,yBAAyB;
|
|
1
|
+
{"version":3,"file":"native-webpack-plugin.js","sourceRoot":"","sources":["../src/native-webpack-plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/native-webpack-plugin",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.43.0",
|
|
4
4
|
"description": "Webpack Plugin for native dependencies of Theia.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -29,8 +29,7 @@
|
|
|
29
29
|
"watch": "theiaext watch"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"temp": "^0.9.1",
|
|
33
32
|
"webpack": "^5.76.0"
|
|
34
33
|
},
|
|
35
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "c94caea7fe1cc7c9f05b1c3f55afb6b5eb69bbb2"
|
|
36
35
|
}
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
import * as path from 'path';
|
|
18
18
|
import * as fs from 'fs';
|
|
19
19
|
import * as os from 'os';
|
|
20
|
-
import * as temp from 'temp';
|
|
21
20
|
|
|
22
21
|
import type { Compiler } from 'webpack';
|
|
23
22
|
|
|
@@ -38,11 +37,9 @@ export class NativeWebpackPlugin {
|
|
|
38
37
|
|
|
39
38
|
private bindings = new Map<string, string>();
|
|
40
39
|
private options: NativeWebpackPluginOptions;
|
|
41
|
-
private tracker: typeof temp;
|
|
42
40
|
|
|
43
41
|
constructor(options: NativeWebpackPluginOptions) {
|
|
44
42
|
this.options = options;
|
|
45
|
-
this.tracker = temp.track();
|
|
46
43
|
for (const [name, value] of Object.entries(options.nativeBindings ?? {})) {
|
|
47
44
|
this.nativeBinding(name, value);
|
|
48
45
|
}
|
|
@@ -54,12 +51,19 @@ export class NativeWebpackPlugin {
|
|
|
54
51
|
|
|
55
52
|
apply(compiler: Compiler): void {
|
|
56
53
|
let replacements: Record<string, string> = {};
|
|
57
|
-
compiler.hooks.initialize.tap(NativeWebpackPlugin.name, () => {
|
|
58
|
-
const directory =
|
|
59
|
-
|
|
54
|
+
compiler.hooks.initialize.tap(NativeWebpackPlugin.name, async () => {
|
|
55
|
+
const directory = path.resolve(compiler.outputPath, 'native-webpack-plugin');
|
|
56
|
+
if (fs.existsSync(directory)) {
|
|
57
|
+
await fs.promises.rm(directory, {
|
|
58
|
+
force: true,
|
|
59
|
+
recursive: true
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
await fs.promises.mkdir(directory, {
|
|
63
|
+
recursive: true
|
|
60
64
|
});
|
|
61
|
-
const bindingsFile = buildFile(directory, 'bindings.js', bindingsReplacement(Array.from(this.bindings.entries())));
|
|
62
|
-
const ripgrepFile = buildFile(directory, 'ripgrep.js', ripgrepReplacement(this.options.out));
|
|
65
|
+
const bindingsFile = await buildFile(directory, 'bindings.js', bindingsReplacement(Array.from(this.bindings.entries())));
|
|
66
|
+
const ripgrepFile = await buildFile(directory, 'ripgrep.js', ripgrepReplacement(this.options.out));
|
|
63
67
|
const keymappingFile = './build/Release/keymapping.node';
|
|
64
68
|
const windowsCaCertsFile = '@vscode/windows-ca-certs/build/Release/crypt32.node';
|
|
65
69
|
replacements = {
|
|
@@ -90,7 +94,7 @@ export class NativeWebpackPlugin {
|
|
|
90
94
|
});
|
|
91
95
|
}
|
|
92
96
|
);
|
|
93
|
-
compiler.hooks.afterEmit.
|
|
97
|
+
compiler.hooks.afterEmit.tapPromise(NativeWebpackPlugin.name, async () => {
|
|
94
98
|
await this.copyTrashHelper(compiler);
|
|
95
99
|
if (this.options.ripgrep) {
|
|
96
100
|
await this.copyRipgrep(compiler);
|
|
@@ -98,10 +102,6 @@ export class NativeWebpackPlugin {
|
|
|
98
102
|
if (this.options.pty) {
|
|
99
103
|
await this.copyNodePtySpawnHelper(compiler);
|
|
100
104
|
}
|
|
101
|
-
this.tracker.cleanupSync();
|
|
102
|
-
});
|
|
103
|
-
compiler.hooks.failed.tap(NativeWebpackPlugin.name, async () => {
|
|
104
|
-
this.tracker.cleanupSync();
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
107
|
|
|
@@ -151,9 +151,9 @@ export class NativeWebpackPlugin {
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
function buildFile(root: string, name: string, content: string): string {
|
|
154
|
+
async function buildFile(root: string, name: string, content: string): Promise<string> {
|
|
155
155
|
const tmpFile = path.join(root, name);
|
|
156
|
-
fs.
|
|
156
|
+
await fs.promises.writeFile(tmpFile, content);
|
|
157
157
|
return tmpFile;
|
|
158
158
|
}
|
|
159
159
|
|