@theia/cli 1.26.0-next.7 → 1.26.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/README.md CHANGED
@@ -313,12 +313,15 @@ The property `theiaPlugins` describes the list of plugins to download, for examp
313
313
 
314
314
  ```json
315
315
  "theiaPlugins": {
316
+ "vscode.theme-defaults": "https://open-vsx.org/api/vscode/theme-defaults/1.62.3/file/vscode.theme-defaults-1.62.3.vsix",
316
317
  "vscode-builtin-extension-pack": "https://open-vsx.org/api/eclipse-theia/builtin-extension-pack/1.50.0/file/eclipse-theia.builtin-extension-pack-1.50.0.vsix",
317
318
  "vscode-editorconfig": "https://open-vsx.org/api/EditorConfig/EditorConfig/0.14.4/file/EditorConfig.EditorConfig-0.14.4.vsix",
318
319
  "vscode-eslint": "https://open-vsx.org/api/dbaeumer/vscode-eslint/2.1.1/file/dbaeumer.vscode-eslint-2.1.1.vsix",
319
320
  }
320
321
  ```
321
322
 
323
+ Please note that in order to use `extensionPacks` properly you should use `namespace.name` as the `id` you give extensions so that when resolving the pack we do not re-download an existing plugin under a different name.
324
+
322
325
  The property `theiaPluginsExcludeIds` can be used to declare the list of plugin `ids` to exclude when using extension-packs.
323
326
  The `ids` referenced by the property will not be downloaded when resolving extension-packs, and can be used to omit extensions which are problematic or unwanted. The format of the property is as follows:
324
327
 
@@ -3,7 +3,6 @@ declare global {
3
3
  flat(depth?: number): any;
4
4
  }
5
5
  }
6
- import { RequestInit, Response } from 'node-fetch';
7
6
  /**
8
7
  * Available options when downloading.
9
8
  */
@@ -27,10 +26,13 @@ export interface DownloadPluginsOptions {
27
26
  * The open-vsx registry API url.
28
27
  */
29
28
  apiUrl?: string;
29
+ /**
30
+ * Fetch plugins in parallel
31
+ */
32
+ parallel?: boolean;
33
+ proxyUrl?: string;
34
+ proxyAuthorization?: string;
35
+ strictSsl?: boolean;
30
36
  }
31
37
  export default function downloadPlugins(options?: DownloadPluginsOptions): Promise<void>;
32
- /**
33
- * Follow HTTP(S)_PROXY, ALL_PROXY and NO_PROXY environment variables.
34
- */
35
- export declare function xfetch(url: string, options?: RequestInit): Promise<Response>;
36
38
  //# sourceMappingURL=download-plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"download-plugins.d.ts","sourceRoot":"","sources":["../src/download-plugins.ts"],"names":[],"mappings":"AAkBA,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAC5B;CACJ;AAOD,OAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAY1D;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAA8B,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAgFjG;AA8FD;;GAEG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAO5E"}
1
+ {"version":3,"file":"download-plugins.d.ts","sourceRoot":"","sources":["../src/download-plugins.ts"],"names":[],"mappings":"AAkBA,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;KAC5B;CACJ;AAcD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAUD,wBAA8B,eAAe,CAAC,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAqGjG"}
@@ -15,23 +15,23 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.xfetch = void 0;
19
18
  const ovsx_client_1 = require("@theia/ovsx-client/lib/ovsx-client");
20
19
  const chalk = require("chalk");
21
20
  const decompress = require("decompress");
22
21
  const fs_1 = require("fs");
23
- const https_proxy_agent_1 = require("https-proxy-agent");
24
- const node_fetch_1 = require("node-fetch");
25
22
  const path = require("path");
26
- const proxy_from_env_1 = require("proxy-from-env");
27
- const stream = require("stream");
28
23
  const temp = require("temp");
29
- const util_1 = require("util");
24
+ const node_request_service_1 = require("@theia/request/lib/node-request-service");
30
25
  const api_1 = require("@theia/application-package/lib/api");
31
- const pipelineAsPromised = (0, util_1.promisify)(stream.pipeline);
32
26
  temp.track();
27
+ const requestService = new node_request_service_1.NodeRequestService();
33
28
  async function downloadPlugins(options = {}) {
34
- const { packed = false, ignoreErrors = false, apiVersion = api_1.DEFAULT_SUPPORTED_API_VERSION, apiUrl = 'https://open-vsx.org/api' } = options;
29
+ const { packed = false, ignoreErrors = false, apiVersion = api_1.DEFAULT_SUPPORTED_API_VERSION, apiUrl = 'https://open-vsx.org/api', parallel = true, proxyUrl, proxyAuthorization, strictSsl } = options;
30
+ requestService.configure({
31
+ proxyUrl,
32
+ proxyAuthorization,
33
+ strictSSL: strictSsl
34
+ });
35
35
  // Collect the list of failures to be appended at the end of the script.
36
36
  const failures = [];
37
37
  // Resolve the `package.json` at the current working directory.
@@ -40,6 +40,21 @@ async function downloadPlugins(options = {}) {
40
40
  const pluginsDir = pck.theiaPluginsDir || 'plugins';
41
41
  // Excluded extension ids.
42
42
  const excludedIds = new Set(pck.theiaPluginsExcludeIds || []);
43
+ const parallelOrSequence = async (...tasks) => {
44
+ if (parallel) {
45
+ await Promise.all(tasks.map(task => task()));
46
+ }
47
+ else {
48
+ for (const task of tasks) {
49
+ await task();
50
+ }
51
+ }
52
+ };
53
+ // Downloader wrapper
54
+ const downloadPlugin = (plugin) => downloadPluginAsync(failures, plugin.id, plugin.downloadUrl, pluginsDir, packed, plugin.version);
55
+ const downloader = async (plugins) => {
56
+ await parallelOrSequence(...plugins.map(plugin => () => downloadPlugin(plugin)));
57
+ };
43
58
  await fs_1.promises.mkdir(pluginsDir, { recursive: true });
44
59
  if (!pck.theiaPlugins) {
45
60
  console.log(chalk.red('error: missing mandatory \'theiaPlugins\' property.'));
@@ -49,43 +64,37 @@ async function downloadPlugins(options = {}) {
49
64
  console.warn('--- downloading plugins ---');
50
65
  // Download the raw plugins defined by the `theiaPlugins` property.
51
66
  // This will include both "normal" plugins as well as "extension packs".
52
- const downloads = [];
53
- for (const [plugin, pluginUrl] of Object.entries(pck.theiaPlugins)) {
54
- if (typeof pluginUrl !== 'string') {
55
- continue;
56
- }
57
- downloads.push(downloadPluginAsync(failures, plugin, pluginUrl, pluginsDir, packed));
58
- }
59
- await Promise.all(downloads);
60
- console.warn('--- collecting extension-packs ---');
61
- const extensionPacks = await collectExtensionPacks(pluginsDir, excludedIds);
62
- if (extensionPacks.size > 0) {
63
- console.warn(`--- resolving ${extensionPacks.size} extension-packs ---`);
64
- const client = new ovsx_client_1.OVSXClient({ apiVersion, apiUrl });
67
+ const pluginsToDownload = Object.entries(pck.theiaPlugins)
68
+ .filter((entry) => typeof entry[1] === 'string')
69
+ .map(([pluginId, url]) => ({ id: pluginId, downloadUrl: url }));
70
+ await downloader(pluginsToDownload);
71
+ const handleDependencyList = async (dependencies) => {
72
+ const client = new ovsx_client_1.OVSXClient({ apiVersion, apiUrl }, requestService);
65
73
  // De-duplicate extension ids to only download each once:
66
- const ids = new Set(Array.from(extensionPacks.values()).flat());
67
- await Promise.all(Array.from(ids, async (id) => {
74
+ const ids = new Set(dependencies.flat());
75
+ await parallelOrSequence(...Array.from(ids, id => async () => {
68
76
  const extension = await client.getLatestCompatibleExtensionVersion(id);
77
+ const version = extension === null || extension === void 0 ? void 0 : extension.version;
69
78
  const downloadUrl = extension === null || extension === void 0 ? void 0 : extension.files.download;
70
79
  if (downloadUrl) {
71
- await downloadPluginAsync(failures, id, downloadUrl, pluginsDir, packed, extension === null || extension === void 0 ? void 0 : extension.version);
80
+ await downloadPlugin({ id, downloadUrl, version });
81
+ }
82
+ else {
83
+ failures.push(`No download url for extension pack ${id} (${version})`);
72
84
  }
73
85
  }));
86
+ };
87
+ console.warn('--- collecting extension-packs ---');
88
+ const extensionPacks = await collectExtensionPacks(pluginsDir, excludedIds);
89
+ if (extensionPacks.size > 0) {
90
+ console.warn(`--- resolving ${extensionPacks.size} extension-packs ---`);
91
+ await handleDependencyList(Array.from(extensionPacks.values()));
74
92
  }
75
93
  console.warn('--- collecting extension dependencies ---');
76
94
  const pluginDependencies = await collectPluginDependencies(pluginsDir, excludedIds);
77
95
  if (pluginDependencies.length > 0) {
78
96
  console.warn(`--- resolving ${pluginDependencies.length} extension dependencies ---`);
79
- const client = new ovsx_client_1.OVSXClient({ apiVersion, apiUrl });
80
- // De-duplicate extension ids to only download each once:
81
- const ids = new Set(pluginDependencies);
82
- await Promise.all(Array.from(ids, async (id) => {
83
- const extension = await client.getLatestCompatibleExtensionVersion(id);
84
- const downloadUrl = extension === null || extension === void 0 ? void 0 : extension.files.download;
85
- if (downloadUrl) {
86
- await downloadPluginAsync(failures, id, downloadUrl, pluginsDir, packed, extension === null || extension === void 0 ? void 0 : extension.version);
87
- }
88
- }));
97
+ await handleDependencyList(pluginDependencies);
89
98
  }
90
99
  }
91
100
  finally {
@@ -143,13 +152,16 @@ async function downloadPluginAsync(failures, plugin, pluginUrl, pluginsDir, pack
143
152
  }
144
153
  lastError = undefined;
145
154
  try {
146
- response = await xfetch(pluginUrl);
155
+ response = await requestService.request({
156
+ url: pluginUrl
157
+ });
147
158
  }
148
159
  catch (error) {
149
160
  lastError = error;
150
161
  continue;
151
162
  }
152
- const retry = response.status === 439 || response.status >= 500;
163
+ const status = response.res.statusCode;
164
+ const retry = status && (status === 439 || status >= 500);
153
165
  if (!retry) {
154
166
  break;
155
167
  }
@@ -162,20 +174,19 @@ async function downloadPluginAsync(failures, plugin, pluginUrl, pluginsDir, pack
162
174
  failures.push(chalk.red(`x ${plugin}: failed to download (unknown reason)`));
163
175
  return;
164
176
  }
165
- if (response.status !== 200) {
166
- failures.push(chalk.red(`x ${plugin}: failed to download with: ${response.status} ${response.statusText}`));
177
+ if (response.res.statusCode !== 200) {
178
+ failures.push(chalk.red(`x ${plugin}: failed to download with: ${response.res.statusCode}`));
167
179
  return;
168
180
  }
169
181
  if ((fileExt === '.vsix' || fileExt === '.theia') && packed === true) {
170
182
  // Download .vsix without decompressing.
171
- const file = (0, fs_1.createWriteStream)(targetPath);
172
- await pipelineAsPromised(response.body, file);
183
+ await fs_1.promises.writeFile(targetPath, response.buffer);
173
184
  }
174
185
  else {
175
186
  await fs_1.promises.mkdir(targetPath, { recursive: true });
176
- const tempFile = temp.createWriteStream('theia-plugin-download');
177
- await pipelineAsPromised(response.body, tempFile);
178
- await decompress(tempFile.path, targetPath);
187
+ const tempFile = temp.path('theia-plugin-download');
188
+ await fs_1.promises.writeFile(tempFile, response.buffer);
189
+ await decompress(tempFile, targetPath);
179
190
  }
180
191
  console.warn(chalk.green(`+ ${plugin}${version ? `@${version}` : ''}: downloaded successfully ${attempts > 1 ? `(after ${attempts} attempts)` : ''}`));
181
192
  }
@@ -188,18 +199,6 @@ async function downloadPluginAsync(failures, plugin, pluginUrl, pluginsDir, pack
188
199
  async function isDownloaded(filePath) {
189
200
  return fs_1.promises.stat(filePath).then(() => true, () => false);
190
201
  }
191
- /**
192
- * Follow HTTP(S)_PROXY, ALL_PROXY and NO_PROXY environment variables.
193
- */
194
- function xfetch(url, options) {
195
- const proxiedOptions = Object.assign({}, options);
196
- const proxy = (0, proxy_from_env_1.getProxyForUrl)(url);
197
- if (!proxiedOptions.agent && proxy !== '') {
198
- proxiedOptions.agent = new https_proxy_agent_1.HttpsProxyAgent(proxy);
199
- }
200
- return (0, node_fetch_1.default)(url, proxiedOptions);
201
- }
202
- exports.xfetch = xfetch;
203
202
  /**
204
203
  * Walk the plugin directory and collect available extension paths.
205
204
  * @param pluginDir the plugin directory.
@@ -236,7 +235,7 @@ async function collectExtensionPacks(pluginDir, excludedIds) {
236
235
  if (Array.isArray(extensionPack)) {
237
236
  extensionPackPaths.set(packageJsonPath, extensionPack.filter(id => {
238
237
  if (excludedIds.has(id)) {
239
- console.log(chalk.yellow(`'${id}' referenced by '${json.name}' (ext pack) is excluded because of 'theiaPluginsExcludeIds'`));
238
+ console.log(chalk.yellow(`'${id}' referred to by '${json.name}' (ext pack) is excluded because of 'theiaPluginsExcludeIds'`));
240
239
  return false; // remove
241
240
  }
242
241
  return true; // keep
@@ -261,7 +260,7 @@ async function collectPluginDependencies(pluginDir, excludedIds) {
261
260
  if (Array.isArray(extensionDependencies)) {
262
261
  for (const dependency of extensionDependencies) {
263
262
  if (excludedIds.has(dependency)) {
264
- console.log(chalk.yellow(`'${dependency}' referenced by '${json.name}' is excluded because of 'theiaPluginsExcludeIds'`));
263
+ console.log(chalk.yellow(`'${dependency}' referred to by '${json.name}' is excluded because of 'theiaPluginsExcludeIds'`));
265
264
  }
266
265
  else {
267
266
  dependencyIds.push(dependency);
@@ -1 +1 @@
1
- {"version":3,"file":"download-plugins.js","sourceRoot":"","sources":["../src/download-plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"download-plugins.js","sourceRoot":"","sources":["../src/download-plugins.ts"],"names":[],"mappings":"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"}
package/lib/theia.js CHANGED
@@ -195,10 +195,26 @@ async function theiaCli() {
195
195
  alias: 'u',
196
196
  describe: 'Open-VSX Registry API URL',
197
197
  default: 'https://open-vsx.org/api'
198
+ },
199
+ 'parallel': {
200
+ describe: 'Download in parallel',
201
+ boolean: true,
202
+ default: true
203
+ },
204
+ 'proxy-url': {
205
+ describe: 'Proxy URL'
206
+ },
207
+ 'proxy-authentification': {
208
+ describe: 'Proxy authentification information'
209
+ },
210
+ 'strict-ssl': {
211
+ describe: 'Whether to enable strict SSL mode',
212
+ boolean: true,
213
+ default: false
198
214
  }
199
215
  },
200
- handler: async ({ packed }) => {
201
- await (0, download_plugins_1.default)({ packed });
216
+ handler: async (args) => {
217
+ await (0, download_plugins_1.default)(args);
202
218
  },
203
219
  })
204
220
  .command({
package/lib/theia.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"theia.js","sourceRoot":"","sources":["../src/theia.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theia.js","sourceRoot":"","sources":["../src/theia.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/cli",
3
- "version": "1.26.0-next.7+b9e19491f5c",
3
+ "version": "1.26.0",
4
4
  "description": "Theia CLI.",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -30,11 +30,12 @@
30
30
  "clean": "theiaext clean"
31
31
  },
32
32
  "dependencies": {
33
- "@theia/application-manager": "1.26.0-next.7+b9e19491f5c",
34
- "@theia/application-package": "1.26.0-next.7+b9e19491f5c",
35
- "@theia/ffmpeg": "1.26.0-next.7+b9e19491f5c",
36
- "@theia/localization-manager": "1.26.0-next.7+b9e19491f5c",
37
- "@theia/ovsx-client": "1.26.0-next.7+b9e19491f5c",
33
+ "@theia/application-manager": "1.26.0",
34
+ "@theia/application-package": "1.26.0",
35
+ "@theia/ffmpeg": "1.26.0",
36
+ "@theia/localization-manager": "1.26.0",
37
+ "@theia/ovsx-client": "1.26.0",
38
+ "@theia/request": "1.26.0",
38
39
  "@types/chai": "^4.2.7",
39
40
  "@types/mocha": "^5.2.7",
40
41
  "@types/node-fetch": "^2.5.7",
@@ -42,10 +43,7 @@
42
43
  "chai": "^4.2.0",
43
44
  "chalk": "4.0.0",
44
45
  "decompress": "^4.2.1",
45
- "https-proxy-agent": "^5.0.0",
46
46
  "mocha": "^7.0.0",
47
- "node-fetch": "^2.6.7",
48
- "proxy-from-env": "^1.1.0",
49
47
  "puppeteer": "^2.0.0",
50
48
  "puppeteer-to-istanbul": "^1.2.2",
51
49
  "temp": "^0.9.1",
@@ -58,5 +56,5 @@
58
56
  "@types/proxy-from-env": "^1.0.1",
59
57
  "@types/puppeteer": "^2.0.0"
60
58
  },
61
- "gitHead": "b9e19491f5c1e3203615dd60bd673d5c4b156bd2"
59
+ "gitHead": "38e2466568e69d55a9c64c96878deff5a005b814"
62
60
  }
@@ -26,17 +26,12 @@ declare global {
26
26
  import { OVSXClient } from '@theia/ovsx-client/lib/ovsx-client';
27
27
  import * as chalk from 'chalk';
28
28
  import * as decompress from 'decompress';
29
- import { createWriteStream, promises as fs } from 'fs';
30
- import { HttpsProxyAgent } from 'https-proxy-agent';
31
- import fetch, { RequestInit, Response } from 'node-fetch';
29
+ import { promises as fs } from 'fs';
32
30
  import * as path from 'path';
33
- import { getProxyForUrl } from 'proxy-from-env';
34
- import * as stream from 'stream';
35
31
  import * as temp from 'temp';
36
- import { promisify } from 'util';
32
+ import { NodeRequestService } from '@theia/request/lib/node-request-service';
37
33
  import { DEFAULT_SUPPORTED_API_VERSION } from '@theia/application-package/lib/api';
38
-
39
- const pipelineAsPromised = promisify(stream.pipeline);
34
+ import { RequestContext } from '@theia/request';
40
35
 
41
36
  temp.track();
42
37
 
@@ -66,16 +61,43 @@ export interface DownloadPluginsOptions {
66
61
  * The open-vsx registry API url.
67
62
  */
68
63
  apiUrl?: string;
64
+
65
+ /**
66
+ * Fetch plugins in parallel
67
+ */
68
+ parallel?: boolean;
69
+
70
+ proxyUrl?: string;
71
+ proxyAuthorization?: string;
72
+ strictSsl?: boolean;
69
73
  }
70
74
 
75
+ interface PluginDownload {
76
+ id: string,
77
+ downloadUrl: string,
78
+ version?: string | undefined
79
+ }
80
+
81
+ const requestService = new NodeRequestService();
82
+
71
83
  export default async function downloadPlugins(options: DownloadPluginsOptions = {}): Promise<void> {
72
84
  const {
73
85
  packed = false,
74
86
  ignoreErrors = false,
75
87
  apiVersion = DEFAULT_SUPPORTED_API_VERSION,
76
- apiUrl = 'https://open-vsx.org/api'
88
+ apiUrl = 'https://open-vsx.org/api',
89
+ parallel = true,
90
+ proxyUrl,
91
+ proxyAuthorization,
92
+ strictSsl
77
93
  } = options;
78
94
 
95
+ requestService.configure({
96
+ proxyUrl,
97
+ proxyAuthorization,
98
+ strictSSL: strictSsl
99
+ });
100
+
79
101
  // Collect the list of failures to be appended at the end of the script.
80
102
  const failures: string[] = [];
81
103
 
@@ -88,6 +110,23 @@ export default async function downloadPlugins(options: DownloadPluginsOptions =
88
110
  // Excluded extension ids.
89
111
  const excludedIds = new Set<string>(pck.theiaPluginsExcludeIds || []);
90
112
 
113
+ const parallelOrSequence = async (...tasks: Array<() => unknown>) => {
114
+ if (parallel) {
115
+ await Promise.all(tasks.map(task => task()));
116
+ } else {
117
+ for (const task of tasks) {
118
+ await task();
119
+ }
120
+ }
121
+ };
122
+
123
+ // Downloader wrapper
124
+ const downloadPlugin = (plugin: PluginDownload): Promise<void> => downloadPluginAsync(failures, plugin.id, plugin.downloadUrl, pluginsDir, packed, plugin.version);
125
+
126
+ const downloader = async (plugins: PluginDownload[]) => {
127
+ await parallelOrSequence(...plugins.map(plugin => () => downloadPlugin(plugin)));
128
+ };
129
+
91
130
  await fs.mkdir(pluginsDir, { recursive: true });
92
131
 
93
132
  if (!pck.theiaPlugins) {
@@ -98,45 +137,39 @@ export default async function downloadPlugins(options: DownloadPluginsOptions =
98
137
  console.warn('--- downloading plugins ---');
99
138
  // Download the raw plugins defined by the `theiaPlugins` property.
100
139
  // This will include both "normal" plugins as well as "extension packs".
101
- const downloads = [];
102
- for (const [plugin, pluginUrl] of Object.entries(pck.theiaPlugins)) {
103
- if (typeof pluginUrl !== 'string') {
104
- continue;
105
- }
106
- downloads.push(downloadPluginAsync(failures, plugin, pluginUrl, pluginsDir, packed));
107
- }
108
- await Promise.all(downloads);
140
+ const pluginsToDownload = Object.entries(pck.theiaPlugins)
141
+ .filter((entry: [string, unknown]): entry is [string, string] => typeof entry[1] === 'string')
142
+ .map(([pluginId, url]) => ({ id: pluginId, downloadUrl: url }));
143
+ await downloader(pluginsToDownload);
109
144
 
110
- console.warn('--- collecting extension-packs ---');
111
- const extensionPacks = await collectExtensionPacks(pluginsDir, excludedIds);
112
- if (extensionPacks.size > 0) {
113
- console.warn(`--- resolving ${extensionPacks.size} extension-packs ---`);
114
- const client = new OVSXClient({ apiVersion, apiUrl });
145
+ const handleDependencyList = async (dependencies: Array<string | string[]>) => {
146
+ const client = new OVSXClient({ apiVersion, apiUrl }, requestService);
115
147
  // De-duplicate extension ids to only download each once:
116
- const ids = new Set<string>(Array.from(extensionPacks.values()).flat());
117
- await Promise.all(Array.from(ids, async id => {
148
+ const ids = new Set<string>(dependencies.flat());
149
+ await parallelOrSequence(...Array.from(ids, id => async () => {
118
150
  const extension = await client.getLatestCompatibleExtensionVersion(id);
151
+ const version = extension?.version;
119
152
  const downloadUrl = extension?.files.download;
120
153
  if (downloadUrl) {
121
- await downloadPluginAsync(failures, id, downloadUrl, pluginsDir, packed, extension?.version);
154
+ await downloadPlugin({ id, downloadUrl, version });
155
+ } else {
156
+ failures.push(`No download url for extension pack ${id} (${version})`);
122
157
  }
123
158
  }));
159
+ };
160
+
161
+ console.warn('--- collecting extension-packs ---');
162
+ const extensionPacks = await collectExtensionPacks(pluginsDir, excludedIds);
163
+ if (extensionPacks.size > 0) {
164
+ console.warn(`--- resolving ${extensionPacks.size} extension-packs ---`);
165
+ await handleDependencyList(Array.from(extensionPacks.values()));
124
166
  }
125
167
 
126
168
  console.warn('--- collecting extension dependencies ---');
127
169
  const pluginDependencies = await collectPluginDependencies(pluginsDir, excludedIds);
128
170
  if (pluginDependencies.length > 0) {
129
171
  console.warn(`--- resolving ${pluginDependencies.length} extension dependencies ---`);
130
- const client = new OVSXClient({ apiVersion, apiUrl });
131
- // De-duplicate extension ids to only download each once:
132
- const ids = new Set<string>(pluginDependencies);
133
- await Promise.all(Array.from(ids, async id => {
134
- const extension = await client.getLatestCompatibleExtensionVersion(id);
135
- const downloadUrl = extension?.files.download;
136
- if (downloadUrl) {
137
- await downloadPluginAsync(failures, id, downloadUrl, pluginsDir, packed, extension?.version);
138
- }
139
- }));
172
+ await handleDependencyList(pluginDependencies);
140
173
  }
141
174
 
142
175
  } finally {
@@ -187,7 +220,7 @@ async function downloadPluginAsync(failures: string[], plugin: string, pluginUrl
187
220
 
188
221
  let attempts: number;
189
222
  let lastError: Error | undefined;
190
- let response: Response | undefined;
223
+ let response: RequestContext | undefined;
191
224
 
192
225
  for (attempts = 0; attempts < maxAttempts; attempts++) {
193
226
  if (attempts > 0) {
@@ -195,12 +228,15 @@ async function downloadPluginAsync(failures: string[], plugin: string, pluginUrl
195
228
  }
196
229
  lastError = undefined;
197
230
  try {
198
- response = await xfetch(pluginUrl);
231
+ response = await requestService.request({
232
+ url: pluginUrl
233
+ });
199
234
  } catch (error) {
200
235
  lastError = error;
201
236
  continue;
202
237
  }
203
- const retry = response.status === 439 || response.status >= 500;
238
+ const status = response.res.statusCode;
239
+ const retry = status && (status === 439 || status >= 500);
204
240
  if (!retry) {
205
241
  break;
206
242
  }
@@ -213,20 +249,19 @@ async function downloadPluginAsync(failures: string[], plugin: string, pluginUrl
213
249
  failures.push(chalk.red(`x ${plugin}: failed to download (unknown reason)`));
214
250
  return;
215
251
  }
216
- if (response.status !== 200) {
217
- failures.push(chalk.red(`x ${plugin}: failed to download with: ${response.status} ${response.statusText}`));
252
+ if (response.res.statusCode !== 200) {
253
+ failures.push(chalk.red(`x ${plugin}: failed to download with: ${response.res.statusCode}`));
218
254
  return;
219
255
  }
220
256
 
221
257
  if ((fileExt === '.vsix' || fileExt === '.theia') && packed === true) {
222
258
  // Download .vsix without decompressing.
223
- const file = createWriteStream(targetPath);
224
- await pipelineAsPromised(response.body, file);
259
+ await fs.writeFile(targetPath, response.buffer);
225
260
  } else {
226
261
  await fs.mkdir(targetPath, { recursive: true });
227
- const tempFile = temp.createWriteStream('theia-plugin-download');
228
- await pipelineAsPromised(response.body, tempFile);
229
- await decompress(tempFile.path, targetPath);
262
+ const tempFile = temp.path('theia-plugin-download');
263
+ await fs.writeFile(tempFile, response.buffer);
264
+ await decompress(tempFile, targetPath);
230
265
  }
231
266
 
232
267
  console.warn(chalk.green(`+ ${plugin}${version ? `@${version}` : ''}: downloaded successfully ${attempts > 1 ? `(after ${attempts} attempts)` : ''}`));
@@ -242,18 +277,6 @@ async function isDownloaded(filePath: string): Promise<boolean> {
242
277
  return fs.stat(filePath).then(() => true, () => false);
243
278
  }
244
279
 
245
- /**
246
- * Follow HTTP(S)_PROXY, ALL_PROXY and NO_PROXY environment variables.
247
- */
248
- export function xfetch(url: string, options?: RequestInit): Promise<Response> {
249
- const proxiedOptions: RequestInit = { ...options };
250
- const proxy = getProxyForUrl(url);
251
- if (!proxiedOptions.agent && proxy !== '') {
252
- proxiedOptions.agent = new HttpsProxyAgent(proxy);
253
- }
254
- return fetch(url, proxiedOptions);
255
- }
256
-
257
280
  /**
258
281
  * Walk the plugin directory and collect available extension paths.
259
282
  * @param pluginDir the plugin directory.
@@ -290,7 +313,7 @@ async function collectExtensionPacks(pluginDir: string, excludedIds: Set<string>
290
313
  if (Array.isArray(extensionPack)) {
291
314
  extensionPackPaths.set(packageJsonPath, extensionPack.filter(id => {
292
315
  if (excludedIds.has(id)) {
293
- console.log(chalk.yellow(`'${id}' referenced by '${json.name}' (ext pack) is excluded because of 'theiaPluginsExcludeIds'`));
316
+ console.log(chalk.yellow(`'${id}' referred to by '${json.name}' (ext pack) is excluded because of 'theiaPluginsExcludeIds'`));
294
317
  return false; // remove
295
318
  }
296
319
  return true; // keep
@@ -316,7 +339,7 @@ async function collectPluginDependencies(pluginDir: string, excludedIds: Set<str
316
339
  if (Array.isArray(extensionDependencies)) {
317
340
  for (const dependency of extensionDependencies) {
318
341
  if (excludedIds.has(dependency)) {
319
- console.log(chalk.yellow(`'${dependency}' referenced by '${json.name}' is excluded because of 'theiaPluginsExcludeIds'`));
342
+ console.log(chalk.yellow(`'${dependency}' referred to by '${json.name}' is excluded because of 'theiaPluginsExcludeIds'`));
320
343
  } else {
321
344
  dependencyIds.push(dependency);
322
345
  }
package/src/theia.ts CHANGED
@@ -198,6 +198,13 @@ async function theiaCli(): Promise<void> {
198
198
  })
199
199
  .command<{
200
200
  packed: boolean
201
+ ignoreErrors: boolean
202
+ apiVersion: string
203
+ apiUrl: string
204
+ parallel: boolean
205
+ proxyUrl?: string
206
+ proxyAuthentification?: string
207
+ strictSsl: boolean
201
208
  }>({
202
209
  command: 'download:plugins',
203
210
  describe: 'Download defined external plugins',
@@ -223,10 +230,26 @@ async function theiaCli(): Promise<void> {
223
230
  alias: 'u',
224
231
  describe: 'Open-VSX Registry API URL',
225
232
  default: 'https://open-vsx.org/api'
233
+ },
234
+ 'parallel': {
235
+ describe: 'Download in parallel',
236
+ boolean: true,
237
+ default: true
238
+ },
239
+ 'proxy-url': {
240
+ describe: 'Proxy URL'
241
+ },
242
+ 'proxy-authentification': {
243
+ describe: 'Proxy authentification information'
244
+ },
245
+ 'strict-ssl': {
246
+ describe: 'Whether to enable strict SSL mode',
247
+ boolean: true,
248
+ default: false
226
249
  }
227
250
  },
228
- handler: async ({ packed }) => {
229
- await downloadPlugins({ packed });
251
+ handler: async args => {
252
+ await downloadPlugins(args);
230
253
  },
231
254
  })
232
255
  .command<{