setup-php 2.16.0 → 2.18.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.
Files changed (81) hide show
  1. package/README.md +159 -141
  2. package/lib/config.d.ts +3 -0
  3. package/lib/config.js +76 -0
  4. package/lib/config.js.map +1 -0
  5. package/lib/coverage.d.ts +5 -0
  6. package/lib/coverage.js +102 -0
  7. package/lib/coverage.js.map +1 -0
  8. package/lib/extensions.d.ts +4 -0
  9. package/lib/extensions.js +219 -0
  10. package/lib/extensions.js.map +1 -0
  11. package/lib/fetch.d.ts +1 -0
  12. package/lib/fetch.js +67 -0
  13. package/lib/fetch.js.map +1 -0
  14. package/lib/install.d.ts +2 -0
  15. package/lib/install.js +80 -0
  16. package/lib/install.js.map +1 -0
  17. package/lib/tools.d.ts +23 -0
  18. package/lib/tools.js +378 -0
  19. package/lib/tools.js.map +1 -0
  20. package/lib/utils.d.ts +21 -0
  21. package/lib/utils.js +266 -0
  22. package/lib/utils.js.map +1 -0
  23. package/package.json +21 -20
  24. package/src/config.ts +8 -8
  25. package/src/configs/brew_extensions +1 -0
  26. package/src/configs/composer.env +2 -0
  27. package/src/configs/ini/jit.ini +3 -0
  28. package/src/configs/ini/php.ini +2 -0
  29. package/src/configs/ini/xdebug.ini +1 -0
  30. package/src/configs/os_releases.csv +2 -0
  31. package/src/configs/php_packages +12 -0
  32. package/src/configs/tools.json +48 -26
  33. package/src/configs/tools_schema.json +11 -0
  34. package/src/coverage.ts +24 -49
  35. package/src/extensions.ts +28 -24
  36. package/src/fetch.ts +54 -0
  37. package/src/install.ts +28 -41
  38. package/src/scripts/darwin.sh +81 -33
  39. package/src/scripts/extensions/add_extensions.ps1 +194 -0
  40. package/src/scripts/extensions/add_extensions.sh +198 -0
  41. package/src/scripts/{ext → extensions}/blackfire.ps1 +0 -0
  42. package/src/scripts/{ext → extensions}/blackfire.sh +0 -0
  43. package/src/scripts/{ext → extensions}/couchbase.sh +0 -0
  44. package/src/scripts/{ext → extensions}/cubrid.sh +3 -3
  45. package/src/scripts/{ext → extensions}/extension_map.php +36 -13
  46. package/src/scripts/{ext → extensions}/firebird.ps1 +0 -0
  47. package/src/scripts/{ext → extensions}/firebird.sh +0 -0
  48. package/src/scripts/{ext → extensions}/gearman.sh +0 -0
  49. package/src/scripts/{ext → extensions}/geos.sh +0 -0
  50. package/src/scripts/{ext → extensions}/http.ps1 +1 -0
  51. package/src/scripts/{ext → extensions}/http.sh +13 -20
  52. package/src/scripts/{ext → extensions}/intl.sh +0 -0
  53. package/src/scripts/{ext → extensions}/ioncube.ps1 +2 -2
  54. package/src/scripts/{ext → extensions}/ioncube.sh +2 -2
  55. package/src/scripts/{ext → extensions}/oci.ps1 +39 -14
  56. package/src/scripts/{ext → extensions}/oci.sh +3 -3
  57. package/src/scripts/{ext → extensions}/patches/firebird.sh +0 -0
  58. package/src/scripts/{ext → extensions}/patches/geos.sh +0 -0
  59. package/src/scripts/{ext → extensions}/patches/http.sh +0 -0
  60. package/src/scripts/{ext → extensions}/patches/pdo_oci.sh +0 -0
  61. package/src/scripts/{ext → extensions}/patches/phpize.sh +0 -0
  62. package/src/scripts/{ext → extensions}/patches/protobuf.sh +0 -0
  63. package/src/scripts/{ext → extensions}/phalcon.ps1 +0 -0
  64. package/src/scripts/{ext → extensions}/phalcon.sh +4 -5
  65. package/src/scripts/{ext → extensions}/source.sh +36 -22
  66. package/src/scripts/extensions/sqlsrv.sh +15 -0
  67. package/src/scripts/linux.sh +76 -36
  68. package/src/scripts/tools/add_tools.ps1 +220 -10
  69. package/src/scripts/tools/add_tools.sh +164 -17
  70. package/src/scripts/tools/grpc_php_plugin.ps1 +4 -4
  71. package/src/scripts/tools/grpc_php_plugin.sh +3 -3
  72. package/src/scripts/tools/ppa.sh +12 -9
  73. package/src/scripts/tools/protoc.ps1 +2 -2
  74. package/src/scripts/tools/protoc.sh +2 -2
  75. package/src/scripts/tools/symfony.ps1 +18 -0
  76. package/src/scripts/tools/symfony.sh +18 -0
  77. package/src/scripts/unix.sh +186 -0
  78. package/src/scripts/win32.ps1 +137 -336
  79. package/src/tools.ts +62 -82
  80. package/src/utils.ts +57 -145
  81. package/src/scripts/common.sh +0 -366
package/lib/tools.js ADDED
@@ -0,0 +1,378 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
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
+ 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.addTools = exports.functionRecord = exports.getData = exports.addWPCLI = exports.addPHPUnitTools = exports.addPhive = exports.addPhing = exports.addPECL = exports.addDevTools = exports.addDeployer = exports.addComposer = exports.addBlackfirePlayer = exports.addPackage = exports.addArchive = exports.getPharUrl = exports.getUrl = exports.filterList = exports.getRelease = exports.getVersion = exports.getLatestVersion = exports.getSemverVersion = void 0;
30
+ const path_1 = __importDefault(require("path"));
31
+ const fs_1 = __importDefault(require("fs"));
32
+ const fetch = __importStar(require("./fetch"));
33
+ const utils = __importStar(require("./utils"));
34
+ async function getSemverVersion(data) {
35
+ var _a;
36
+ const search = data['version_prefix'] + data['version'];
37
+ const url = `https://api.github.com/repos/${data['repository']}/git/matching-refs/tags%2F${search}.`;
38
+ const token = await utils.readEnv('COMPOSER_TOKEN');
39
+ const response = await fetch.fetch(url, token);
40
+ if (response.error || response.data === '[]') {
41
+ data['error'] = (_a = response.error) !== null && _a !== void 0 ? _a : `No version found with prefix ${search}.`;
42
+ return data['version'];
43
+ }
44
+ else {
45
+ const refs = JSON.parse(response['data']).reverse();
46
+ const ref = refs.find((i) => /.*\d+.\d+.\d+$/.test(i['ref']));
47
+ const tag = (ref || refs[0])['ref'].split('/').pop();
48
+ return tag.replace(/^v(\d)/, '$1');
49
+ }
50
+ }
51
+ exports.getSemverVersion = getSemverVersion;
52
+ async function getLatestVersion(data) {
53
+ if (!data['version'] && data['fetch_latest'] === 'false') {
54
+ return 'latest';
55
+ }
56
+ const resp = await fetch.fetch(`${data['github']}/${data['repository']}/releases.atom`);
57
+ if (resp['data']) {
58
+ const releases = [
59
+ ...resp['data'].matchAll(/releases\/tag\/([a-zA-Z]*)?(\d+.\d+.\d+)"/g)
60
+ ].map(match => match[2]);
61
+ return (releases
62
+ .sort((a, b) => a.localeCompare(b, undefined, { numeric: true }))
63
+ .pop() || 'latest');
64
+ }
65
+ return 'latest';
66
+ }
67
+ exports.getLatestVersion = getLatestVersion;
68
+ async function getVersion(version, data) {
69
+ const semver_regex = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;
70
+ const composer_regex = /^composer:(stable|preview|snapshot|[1|2])$/;
71
+ const constraint_regex = /[><=^~]+.*/;
72
+ const major_minor_regex = /^\d+(\.\d+)?$/;
73
+ data['version'] = version.replace(/v?(\d)/, '$1').replace(/\.x/, '');
74
+ switch (true) {
75
+ case composer_regex.test(data['release']):
76
+ case semver_regex.test(data['version']):
77
+ case constraint_regex.test(data['version']) && data['type'] === 'composer':
78
+ return data['version'];
79
+ case major_minor_regex.test(data['version']) && data['type'] === 'composer':
80
+ data['release'] = `${data['tool']}:${data['version']}.*`;
81
+ return `${data['version']}.*`;
82
+ case data['repository'] && major_minor_regex.test(data['version']):
83
+ return await getSemverVersion(data);
84
+ default:
85
+ return data['version'].replace(/[><=^~]*/, '');
86
+ }
87
+ }
88
+ exports.getVersion = getVersion;
89
+ async function getRelease(release, data) {
90
+ release = release.includes('/') ? release.split('/')[1] : release;
91
+ return release.includes(':')
92
+ ? [data['tool'], release.split(':')[1]].join(':')
93
+ : data['tool'];
94
+ }
95
+ exports.getRelease = getRelease;
96
+ async function filterList(tools_list) {
97
+ const regex_any = /^composer($|:.*)/;
98
+ const regex_valid = /^composer:?($|preview$|snapshot$|v?\d+(\.\d+)?$|v?\d+\.\d+\.\d+[\w-]*$)/;
99
+ const matches = tools_list.filter(tool => regex_valid.test(tool));
100
+ let composer = 'composer';
101
+ tools_list = tools_list.filter(tool => !regex_any.test(tool));
102
+ switch (true) {
103
+ case matches[0] == undefined:
104
+ break;
105
+ default:
106
+ composer = matches[matches.length - 1].replace(/v(\d\S*)/, '$1');
107
+ break;
108
+ }
109
+ tools_list.unshift(composer);
110
+ return tools_list;
111
+ }
112
+ exports.filterList = filterList;
113
+ async function getUrl(data) {
114
+ if (data['version'] === 'latest') {
115
+ return [
116
+ data['domain'],
117
+ data['repository'],
118
+ data['prefix'],
119
+ data['version'],
120
+ data['verb'],
121
+ data['tool'] + data['extension']
122
+ ]
123
+ .filter(Boolean)
124
+ .join('/');
125
+ }
126
+ else {
127
+ return [
128
+ data['domain'],
129
+ data['repository'],
130
+ data['prefix'],
131
+ data['verb'],
132
+ data['version_prefix'] + data['version'],
133
+ data['tool'] + data['extension']
134
+ ]
135
+ .filter(Boolean)
136
+ .join('/');
137
+ }
138
+ }
139
+ exports.getUrl = getUrl;
140
+ async function getPharUrl(data) {
141
+ if (data['version'] === 'latest') {
142
+ return data['domain'] + '/' + data['tool'] + '.phar';
143
+ }
144
+ else {
145
+ return (data['domain'] +
146
+ '/' +
147
+ data['tool'] +
148
+ '-' +
149
+ data['version_prefix'] +
150
+ data['version'] +
151
+ '.phar');
152
+ }
153
+ }
154
+ exports.getPharUrl = getPharUrl;
155
+ async function addArchive(data) {
156
+ return ((await utils.getCommand(data['os'], 'tool')) +
157
+ (await utils.joins(data['url'], data['tool'], data['version_parameter'])));
158
+ }
159
+ exports.addArchive = addArchive;
160
+ async function addPackage(data) {
161
+ const command = await utils.getCommand(data['os'], 'composertool');
162
+ const parts = data['repository'].split('/');
163
+ const args = await utils.joins(parts[1], data['release'], parts[0] + '/', data['scope']);
164
+ return command + args;
165
+ }
166
+ exports.addPackage = addPackage;
167
+ async function addBlackfirePlayer(data) {
168
+ if (/5\.[5-6]|7\.0/.test(data['php_version']) &&
169
+ data['version'] == 'latest') {
170
+ data['version'] = '1.9.3';
171
+ }
172
+ data['url'] = await getPharUrl(data);
173
+ return addArchive(data);
174
+ }
175
+ exports.addBlackfirePlayer = addBlackfirePlayer;
176
+ async function addComposer(data) {
177
+ const github = data['github'];
178
+ const getcomposer = data['domain'];
179
+ let cache_url = `${github}/shivammathur/composer-cache/releases/latest/download/composer-${data['php_version']}-${data['version'].replace('latest', 'stable')}.phar`;
180
+ let source_url = `${getcomposer}/composer.phar`;
181
+ switch (true) {
182
+ case /^snapshot$/.test(data['version']):
183
+ break;
184
+ case /^preview$|^[1-2]$/.test(data['version']):
185
+ source_url = `${getcomposer}/composer-${data['version']}.phar`;
186
+ break;
187
+ case /^\d+\.\d+\.\d+[\w-]*$/.test(data['version']):
188
+ cache_url = `${github}/${data['repository']}/releases/download/${data['version']}/composer.phar`;
189
+ source_url = `${getcomposer}/composer-${data['version']}.phar`;
190
+ break;
191
+ default:
192
+ source_url = `${getcomposer}/composer-stable.phar`;
193
+ }
194
+ const use_cache = (await utils.readEnv('NO_TOOLS_CACHE')) !== 'true';
195
+ data['url'] = use_cache ? `${cache_url},${source_url}` : source_url;
196
+ data['version_parameter'] = data['version'];
197
+ return await addArchive(data);
198
+ }
199
+ exports.addComposer = addComposer;
200
+ async function addDeployer(data) {
201
+ if (data['version'] === 'latest') {
202
+ data['url'] = data['domain'] + '/deployer.phar';
203
+ }
204
+ else {
205
+ data['url'] =
206
+ data['domain'] + '/releases/v' + data['version'] + '/deployer.phar';
207
+ }
208
+ return await addArchive(data);
209
+ }
210
+ exports.addDeployer = addDeployer;
211
+ async function addDevTools(data) {
212
+ switch (data['os']) {
213
+ case 'linux':
214
+ case 'darwin':
215
+ return 'add_devtools ' + data['tool'];
216
+ case 'win32':
217
+ return await utils.addLog('$tick', data['tool'], data['tool'] + ' is not a windows tool', 'win32');
218
+ default:
219
+ return await utils.log('Platform ' + data['os'] + ' is not supported', data['os'], 'error');
220
+ }
221
+ }
222
+ exports.addDevTools = addDevTools;
223
+ async function addPECL(data) {
224
+ return await utils.getCommand(data['os'], 'pecl');
225
+ }
226
+ exports.addPECL = addPECL;
227
+ async function addPhing(data) {
228
+ data['url'] =
229
+ data['domain'] + '/get/phing-' + data['version'] + data['extension'];
230
+ if (data['version'] != 'latest') {
231
+ [data['prefix'], data['verb']] = ['releases', 'download'];
232
+ data['domain'] = data['github'];
233
+ data['extension'] = '-' + data['version'] + data['extension'];
234
+ data['url'] += ',' + (await getUrl(data));
235
+ }
236
+ return await addArchive(data);
237
+ }
238
+ exports.addPhing = addPhing;
239
+ async function addPhive(data) {
240
+ switch (true) {
241
+ case /5\.[3-5]/.test(data['php_version']):
242
+ return await utils.addLog('$cross', 'phive', 'Phive is not supported on PHP ' + data['php_version'], data['os']);
243
+ case /5\.6|7\.0/.test(data['php_version']):
244
+ data['version'] = '0.12.1';
245
+ break;
246
+ case /7\.1/.test(data['php_version']):
247
+ data['version'] = '0.13.5';
248
+ break;
249
+ case /7\.2/.test(data['php_version']):
250
+ data['version'] = '0.14.5';
251
+ break;
252
+ case /^latest$/.test(data['version']):
253
+ data['version'] = await getLatestVersion(data);
254
+ break;
255
+ }
256
+ data['extension'] = '-' + data['version'] + data['extension'];
257
+ data['url'] = await getUrl(data);
258
+ return await addArchive(data);
259
+ }
260
+ exports.addPhive = addPhive;
261
+ async function addPHPUnitTools(data) {
262
+ data['url'] = await getPharUrl(data);
263
+ return await addArchive(data);
264
+ }
265
+ exports.addPHPUnitTools = addPHPUnitTools;
266
+ async function addWPCLI(data) {
267
+ if (data['version'] === 'latest') {
268
+ data['uri'] = 'wp-cli/builds/blob/gh-pages/phar/wp-cli.phar?raw=true';
269
+ data['url'] = [data['domain'], data['uri']].join('/');
270
+ }
271
+ else {
272
+ data['extension'] = '-' + data['version'] + data['extension'];
273
+ data['url'] = await getUrl(data);
274
+ }
275
+ return await addArchive(data);
276
+ }
277
+ exports.addWPCLI = addWPCLI;
278
+ async function getData(release, php_version, os) {
279
+ var _a, _b, _c, _d, _e;
280
+ const json_file_path = path_1.default.join(__dirname, '../src/configs/tools.json');
281
+ const json_file = fs_1.default.readFileSync(json_file_path, 'utf8');
282
+ const json_objects = JSON.parse(json_file);
283
+ release = release.replace(/\s+/g, '');
284
+ const parts = release.split(':');
285
+ const tool = parts[0];
286
+ const version = parts[1];
287
+ let data;
288
+ if (Object.keys(json_objects).includes(tool)) {
289
+ data = json_objects[tool];
290
+ data['tool'] = tool;
291
+ }
292
+ else {
293
+ const key = Object.keys(json_objects).find((key) => {
294
+ return json_objects[key]['alias'] == tool;
295
+ });
296
+ if (key) {
297
+ data = json_objects[key];
298
+ data['tool'] = key;
299
+ }
300
+ else {
301
+ data = {
302
+ tool: tool.split('/')[1],
303
+ repository: tool,
304
+ type: 'composer'
305
+ };
306
+ data = !tool.includes('/') ? { tool: tool } : data;
307
+ }
308
+ }
309
+ data['github'] = 'https://github.com';
310
+ (_a = data['domain']) !== null && _a !== void 0 ? _a : (data['domain'] = data['github']);
311
+ (_b = data['extension']) !== null && _b !== void 0 ? _b : (data['extension'] = '.phar');
312
+ data['os'] = os;
313
+ data['php_version'] = php_version;
314
+ data['prefix'] = data['github'] === data['domain'] ? 'releases' : '';
315
+ data['verb'] = data['github'] === data['domain'] ? 'download' : '';
316
+ (_c = data['fetch_latest']) !== null && _c !== void 0 ? _c : (data['fetch_latest'] = 'false');
317
+ (_d = data['scope']) !== null && _d !== void 0 ? _d : (data['scope'] = 'global');
318
+ data['version_parameter'] = JSON.stringify(data['version_parameter']) || '';
319
+ (_e = data['version_prefix']) !== null && _e !== void 0 ? _e : (data['version_prefix'] = '');
320
+ data['release'] = await getRelease(release, data);
321
+ data['version'] = version
322
+ ? await getVersion(version, data)
323
+ : await getLatestVersion(data);
324
+ return data;
325
+ }
326
+ exports.getData = getData;
327
+ exports.functionRecord = {
328
+ composer: addComposer,
329
+ deployer: addDeployer,
330
+ dev_tools: addDevTools,
331
+ phive: addPhive,
332
+ blackfire_player: addBlackfirePlayer,
333
+ pecl: addPECL,
334
+ phing: addPhing,
335
+ phpunit: addPHPUnitTools,
336
+ phpcpd: addPHPUnitTools,
337
+ wp_cli: addWPCLI
338
+ };
339
+ async function addTools(tools_csv, php_version, os) {
340
+ let script = '\n';
341
+ if (tools_csv === 'none') {
342
+ return '';
343
+ }
344
+ else {
345
+ script += await utils.stepLog('Setup Tools', os);
346
+ }
347
+ const tools_list = await filterList(await utils.CSVArray(tools_csv));
348
+ await utils.asyncForEach(tools_list, async function (release) {
349
+ const data = await getData(release, php_version, os);
350
+ script += '\n';
351
+ switch (true) {
352
+ case data['error'] !== undefined:
353
+ script += await utils.addLog('$cross', data['tool'], data['error'], data['os']);
354
+ break;
355
+ case 'phar' === data['type']:
356
+ data['url'] = await getUrl(data);
357
+ script += await addArchive(data);
358
+ break;
359
+ case 'composer' === data['type']:
360
+ script += await addPackage(data);
361
+ break;
362
+ case 'custom-package' === data['type']:
363
+ script += await utils.customPackage(data['tool'].split('-')[0], 'tools', data['version'], data['os']);
364
+ break;
365
+ case 'custom-function' === data['type']:
366
+ script += await exports.functionRecord[data['function']](data);
367
+ break;
368
+ case /^none$/.test(data['tool']):
369
+ break;
370
+ default:
371
+ script += await utils.addLog('$cross', data['tool'], 'Tool ' + data['tool'] + ' is not supported', data['os']);
372
+ break;
373
+ }
374
+ });
375
+ return script;
376
+ }
377
+ exports.addTools = addTools;
378
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/lib/utils.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ export declare function readEnv(property: string): Promise<string>;
2
+ export declare function getInput(name: string, mandatory: boolean): Promise<string>;
3
+ export declare function getManifestURL(): Promise<string>;
4
+ export declare function parseVersion(version: string): Promise<string>;
5
+ export declare function parseIniFile(ini_file: string): Promise<string>;
6
+ export declare function asyncForEach(array: Array<string>, callback: (element: string, index: number, array: Array<string>) => Promise<void>): Promise<void>;
7
+ export declare function color(type: string): Promise<string>;
8
+ export declare function log(message: string, os: string, log_type: string): Promise<string>;
9
+ export declare function stepLog(message: string, os: string): Promise<string>;
10
+ export declare function addLog(mark: string, subject: string, message: string, os: string): Promise<string>;
11
+ export declare function extensionArray(extension_csv: string): Promise<Array<string>>;
12
+ export declare function CSVArray(values_csv: string): Promise<Array<string>>;
13
+ export declare function getExtensionPrefix(extension: string): Promise<string>;
14
+ export declare function suppressOutput(os: string): Promise<string>;
15
+ export declare function getUnsupportedLog(extension: string, version: string, os: string): Promise<string>;
16
+ export declare function getCommand(os: string, suffix: string): Promise<string>;
17
+ export declare function joins(...str: string[]): Promise<string>;
18
+ export declare function scriptExtension(os: string): Promise<string>;
19
+ export declare function scriptTool(os: string): Promise<string>;
20
+ export declare function customPackage(pkg: string, type: string, version: string, os: string): Promise<string>;
21
+ export declare function parseExtensionSource(extension: string, prefix: string): Promise<string>;