setup-php 2.13.0 → 2.17.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 (134) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +990 -922
  3. package/lib/config.d.ts +3 -0
  4. package/lib/config.js +71 -71
  5. package/lib/config.js.map +1 -1
  6. package/lib/coverage.d.ts +5 -0
  7. package/lib/coverage.js +97 -87
  8. package/lib/coverage.js.map +1 -1
  9. package/lib/extensions.d.ts +4 -0
  10. package/lib/extensions.js +214 -200
  11. package/lib/extensions.js.map +1 -1
  12. package/lib/fetch.d.ts +1 -0
  13. package/lib/fetch.js +63 -0
  14. package/lib/fetch.js.map +1 -0
  15. package/lib/install.d.ts +2 -0
  16. package/lib/install.js +75 -81
  17. package/lib/install.js.map +1 -1
  18. package/lib/tools.d.ts +23 -0
  19. package/lib/tools.js +367 -386
  20. package/lib/tools.js.map +1 -1
  21. package/lib/utils.d.ts +21 -0
  22. package/lib/utils.js +261 -291
  23. package/lib/utils.js.map +1 -1
  24. package/package.json +67 -56
  25. package/src/config.ts +82 -82
  26. package/src/configs/brew_extensions +31 -0
  27. package/src/configs/composer.env +2 -0
  28. package/src/configs/ini/jit.ini +3 -0
  29. package/src/configs/ini/php.ini +2 -0
  30. package/src/configs/ini/xdebug.ini +1 -0
  31. package/src/configs/os_releases.csv +19 -17
  32. package/src/configs/php-versions.json +6 -5
  33. package/src/configs/php_packages +12 -0
  34. package/src/configs/{php.json → pm/php.json} +29 -29
  35. package/src/configs/{phpunit.json → pm/phpunit.json} +24 -24
  36. package/src/configs/tools.json +278 -235
  37. package/src/configs/tools_schema.json +125 -114
  38. package/src/coverage.ts +144 -142
  39. package/src/extensions.ts +367 -349
  40. package/src/fetch.ts +54 -0
  41. package/src/install.ts +66 -82
  42. package/src/scripts/darwin.sh +285 -249
  43. package/src/scripts/extensions/add_extensions.ps1 +194 -0
  44. package/src/scripts/extensions/add_extensions.sh +184 -0
  45. package/src/scripts/{ext → extensions}/blackfire.ps1 +32 -32
  46. package/src/scripts/{ext → extensions}/blackfire.sh +22 -21
  47. package/src/scripts/{ext → extensions}/couchbase.sh +43 -43
  48. package/src/scripts/{ext → extensions}/cubrid.sh +60 -60
  49. package/src/scripts/extensions/extension_map.php +132 -0
  50. package/src/scripts/{ext → extensions}/firebird.ps1 +19 -19
  51. package/src/scripts/{ext → extensions}/firebird.sh +39 -35
  52. package/src/scripts/{ext → extensions}/gearman.sh +22 -22
  53. package/src/scripts/{ext → extensions}/geos.sh +17 -17
  54. package/src/scripts/{ext → extensions}/http.ps1 +54 -54
  55. package/src/scripts/{ext → extensions}/http.sh +109 -120
  56. package/src/scripts/{ext → extensions}/intl.sh +23 -23
  57. package/src/scripts/{ext → extensions}/ioncube.ps1 +33 -32
  58. package/src/scripts/{ext → extensions}/ioncube.sh +21 -19
  59. package/src/scripts/{ext → extensions}/oci.ps1 +85 -60
  60. package/src/scripts/{ext → extensions}/oci.sh +65 -63
  61. package/src/scripts/{ext → extensions}/patches/firebird.sh +11 -11
  62. package/src/scripts/{ext → extensions}/patches/geos.sh +7 -7
  63. package/src/scripts/{ext → extensions}/patches/http.sh +11 -11
  64. package/src/scripts/{ext → extensions}/patches/pdo_oci.sh +6 -6
  65. package/src/scripts/{ext → extensions}/patches/phpize.sh +26 -26
  66. package/src/scripts/{ext → extensions}/patches/protobuf.sh +4 -4
  67. package/src/scripts/{ext → extensions}/phalcon.ps1 +54 -54
  68. package/src/scripts/{ext → extensions}/phalcon.sh +58 -58
  69. package/src/scripts/{ext → extensions}/source.sh +145 -144
  70. package/src/scripts/extensions/sqlsrv.sh +15 -0
  71. package/src/scripts/linux.sh +269 -256
  72. package/src/scripts/tools/add_tools.ps1 +239 -26
  73. package/src/scripts/tools/add_tools.sh +175 -20
  74. package/src/scripts/tools/blackfire.ps1 +19 -19
  75. package/src/scripts/tools/blackfire.sh +40 -39
  76. package/src/scripts/tools/grpc_php_plugin.ps1 +21 -21
  77. package/src/scripts/tools/grpc_php_plugin.sh +58 -58
  78. package/src/scripts/tools/ppa.sh +192 -151
  79. package/src/scripts/tools/protoc.ps1 +38 -38
  80. package/src/scripts/tools/protoc.sh +28 -28
  81. package/src/scripts/tools/symfony.ps1 +14 -0
  82. package/src/scripts/tools/symfony.sh +13 -0
  83. package/src/scripts/unix.sh +186 -0
  84. package/src/scripts/win32.ps1 +352 -494
  85. package/src/tools.ts +512 -538
  86. package/src/utils.ts +415 -500
  87. package/.eslintrc.json +0 -16
  88. package/.github/CODE_OF_CONDUCT.md +0 -76
  89. package/.github/CONTRIBUTING.md +0 -70
  90. package/.github/FUNDING.yml +0 -7
  91. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -42
  92. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -26
  93. package/.github/PULL_REQUEST_TEMPLATE.md +0 -37
  94. package/.github/SECURITY.md +0 -29
  95. package/.github/workflows/docs.yml +0 -77
  96. package/.github/workflows/node-workflow.yml +0 -51
  97. package/.github/workflows/workflow.yml +0 -78
  98. package/.idea/workspace.xml +0 -113
  99. package/.prettierrc.json +0 -12
  100. package/__tests__/config.test.ts +0 -52
  101. package/__tests__/coverage.test.ts +0 -110
  102. package/__tests__/extensions.test.ts +0 -263
  103. package/__tests__/install.test.ts +0 -175
  104. package/__tests__/tools.test.ts +0 -524
  105. package/__tests__/utils.test.ts +0 -307
  106. package/action.yml +0 -29
  107. package/dist/index.js +0 -3051
  108. package/examples/bedrock.yml +0 -32
  109. package/examples/blackfire-player.yml +0 -31
  110. package/examples/blackfire.yml +0 -31
  111. package/examples/cakephp-mysql.yml +0 -114
  112. package/examples/cakephp-postgres.yml +0 -112
  113. package/examples/cakephp.yml +0 -92
  114. package/examples/codeigniter.yml +0 -34
  115. package/examples/laravel-mysql.yml +0 -74
  116. package/examples/laravel-postgres.yml +0 -74
  117. package/examples/laravel.yml +0 -42
  118. package/examples/lumen-mysql.yml +0 -74
  119. package/examples/lumen-postgres.yml +0 -74
  120. package/examples/lumen.yml +0 -38
  121. package/examples/phalcon-mysql.yml +0 -74
  122. package/examples/phalcon-postgres.yml +0 -73
  123. package/examples/sage.yml +0 -57
  124. package/examples/slim-framework.yml +0 -34
  125. package/examples/symfony-mysql.yml +0 -57
  126. package/examples/symfony-postgres.yml +0 -55
  127. package/examples/symfony.yml +0 -39
  128. package/examples/yii2-mysql.yml +0 -73
  129. package/examples/yii2-postgres.yml +0 -71
  130. package/examples/zend-framework.yml +0 -36
  131. package/jest.config.js +0 -12
  132. package/lib/sapi.js +0 -64
  133. package/src/scripts/common.sh +0 -314
  134. package/tsconfig.json +0 -18
package/lib/utils.js CHANGED
@@ -1,292 +1,262 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.parseExtensionSource = exports.customPackage = exports.scriptTool = exports.scriptExtension = exports.joins = exports.getCommand = exports.getUnsupportedLog = exports.suppressOutput = exports.getExtensionPrefix = exports.CSVArray = exports.extensionArray = exports.writeScript = exports.readFile = exports.addLog = exports.stepLog = exports.log = exports.color = exports.asyncForEach = exports.parseVersion = exports.getManifestURL = exports.fetch = exports.getInput = exports.readEnv = void 0;
23
- const fs = __importStar(require("fs"));
24
- const https = __importStar(require("https"));
25
- const path = __importStar(require("path"));
26
- const url = __importStar(require("url"));
27
- const core = __importStar(require("@actions/core"));
28
- async function readEnv(property) {
29
- const property_lc = property.toLowerCase();
30
- const property_uc = property.toUpperCase();
31
- return (process.env[property] ||
32
- process.env[property_lc] ||
33
- process.env[property_uc] ||
34
- process.env[property_lc.replace('_', '-')] ||
35
- process.env[property_uc.replace('_', '-')] ||
36
- '');
37
- }
38
- exports.readEnv = readEnv;
39
- async function getInput(name, mandatory) {
40
- const input = core.getInput(name);
41
- const env_input = await readEnv(name);
42
- switch (true) {
43
- case input != '':
44
- return input;
45
- case input == '' && env_input != '':
46
- return env_input;
47
- case input == '' && env_input == '' && mandatory:
48
- throw new Error(`Input required and not supplied: ${name}`);
49
- default:
50
- return '';
51
- }
52
- }
53
- exports.getInput = getInput;
54
- async function fetch(input_url, auth_token) {
55
- const fetch_promise = new Promise(resolve => {
56
- const url_object = new url.URL(input_url);
57
- const headers = {
58
- 'User-Agent': `Mozilla/5.0 (${process.platform} ${process.arch}) setup-php`
59
- };
60
- if (auth_token) {
61
- headers.authorization = 'Bearer ' + auth_token;
62
- }
63
- const options = {
64
- hostname: url_object.hostname,
65
- path: url_object.pathname,
66
- headers: headers
67
- };
68
- const req = https.get(options, (res) => {
69
- if (res.statusCode != 200) {
70
- resolve({ error: `${res.statusCode}: ${res.statusMessage}` });
71
- }
72
- else {
73
- let body = '';
74
- res.setEncoding('utf8');
75
- res.on('data', chunk => (body += chunk));
76
- res.on('end', () => resolve({ data: `${body}` }));
77
- }
78
- });
79
- req.end();
80
- });
81
- return await fetch_promise;
82
- }
83
- exports.fetch = fetch;
84
- async function getManifestURL() {
85
- return 'https://raw.githubusercontent.com/shivammathur/setup-php/develop/src/configs/php-versions.json';
86
- }
87
- exports.getManifestURL = getManifestURL;
88
- async function parseVersion(version) {
89
- const manifest = await getManifestURL();
90
- switch (true) {
91
- case /^(latest|\d+\.x)$/.test(version):
92
- return JSON.parse((await fetch(manifest))['data'])[version];
93
- default:
94
- switch (true) {
95
- case version.length > 1:
96
- return version.slice(0, 3);
97
- default:
98
- return version + '.0';
99
- }
100
- }
101
- }
102
- exports.parseVersion = parseVersion;
103
- async function asyncForEach(array, callback) {
104
- for (let index = 0; index < array.length; index++) {
105
- await callback(array[index], index, array);
106
- }
107
- }
108
- exports.asyncForEach = asyncForEach;
109
- async function color(type) {
110
- switch (type) {
111
- case 'error':
112
- return '31';
113
- default:
114
- case 'success':
115
- return '32';
116
- case 'warning':
117
- return '33';
118
- }
119
- }
120
- exports.color = color;
121
- async function log(message, os_version, log_type) {
122
- switch (os_version) {
123
- case 'win32':
124
- return ('printf "\\033[' +
125
- (await color(log_type)) +
126
- ';1m' +
127
- message +
128
- ' \\033[0m"');
129
- case 'linux':
130
- case 'darwin':
131
- default:
132
- return ('echo "\\033[' + (await color(log_type)) + ';1m' + message + '\\033[0m"');
133
- }
134
- }
135
- exports.log = log;
136
- async function stepLog(message, os_version) {
137
- switch (os_version) {
138
- case 'win32':
139
- return 'Step-Log "' + message + '"';
140
- case 'linux':
141
- case 'darwin':
142
- return 'step_log "' + message + '"';
143
- default:
144
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
145
- }
146
- }
147
- exports.stepLog = stepLog;
148
- async function addLog(mark, subject, message, os_version) {
149
- switch (os_version) {
150
- case 'win32':
151
- return 'Add-Log "' + mark + '" "' + subject + '" "' + message + '"';
152
- case 'linux':
153
- case 'darwin':
154
- return 'add_log "' + mark + '" "' + subject + '" "' + message + '"';
155
- default:
156
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
157
- }
158
- }
159
- exports.addLog = addLog;
160
- async function readFile(filename, directory) {
161
- return fs.readFileSync(path.join(__dirname, '../' + directory, filename), 'utf8');
162
- }
163
- exports.readFile = readFile;
164
- async function writeScript(filename, script) {
165
- const runner_dir = await getInput('RUNNER_TOOL_CACHE', false);
166
- const script_path = path.join(runner_dir, filename);
167
- fs.writeFileSync(script_path, script, { mode: 0o755 });
168
- return script_path;
169
- }
170
- exports.writeScript = writeScript;
171
- async function extensionArray(extension_csv) {
172
- switch (extension_csv) {
173
- case '':
174
- case ' ':
175
- return [];
176
- default:
177
- return extension_csv
178
- .split(',')
179
- .map(function (extension) {
180
- if (/.+-.+\/.+@.+/.test(extension)) {
181
- return extension;
182
- }
183
- return extension
184
- .trim()
185
- .toLowerCase()
186
- .replace(/^php[-_]/, '');
187
- })
188
- .filter(Boolean);
189
- }
190
- }
191
- exports.extensionArray = extensionArray;
192
- async function CSVArray(values_csv) {
193
- switch (values_csv) {
194
- case '':
195
- case ' ':
196
- return [];
197
- default:
198
- return values_csv
199
- .split(/,(?=(?:(?:[^"']*["']){2})*[^"']*$)/)
200
- .map(function (value) {
201
- return value
202
- .trim()
203
- .replace(/^["']|["']$|(?<==)["']/g, '')
204
- .replace(/=(((?!E_).)*[?{}|&~![()^]+((?!E_).)+)/, "='$1'");
205
- })
206
- .filter(Boolean);
207
- }
208
- }
209
- exports.CSVArray = CSVArray;
210
- async function getExtensionPrefix(extension) {
211
- switch (true) {
212
- default:
213
- return 'extension';
214
- case /xdebug([2-3])?$|opcache|ioncube|eaccelerator/.test(extension):
215
- return 'zend_extension';
216
- }
217
- }
218
- exports.getExtensionPrefix = getExtensionPrefix;
219
- async function suppressOutput(os_version) {
220
- switch (os_version) {
221
- case 'win32':
222
- return ' ';
223
- case 'linux':
224
- case 'darwin':
225
- return ' ';
226
- default:
227
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
228
- }
229
- }
230
- exports.suppressOutput = suppressOutput;
231
- async function getUnsupportedLog(extension, version, os_version) {
232
- return ('\n' +
233
- (await addLog('$cross', extension, [extension, 'is not supported on PHP', version].join(' '), os_version)) +
234
- '\n');
235
- }
236
- exports.getUnsupportedLog = getUnsupportedLog;
237
- async function getCommand(os_version, suffix) {
238
- switch (os_version) {
239
- case 'linux':
240
- case 'darwin':
241
- return 'add_' + suffix + ' ';
242
- case 'win32':
243
- return 'Add-' + suffix.charAt(0).toUpperCase() + suffix.slice(1) + ' ';
244
- default:
245
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
246
- }
247
- }
248
- exports.getCommand = getCommand;
249
- async function joins(...str) {
250
- return [...str].join(' ');
251
- }
252
- exports.joins = joins;
253
- async function scriptExtension(os_version) {
254
- switch (os_version) {
255
- case 'win32':
256
- return '.ps1';
257
- case 'linux':
258
- case 'darwin':
259
- return '.sh';
260
- default:
261
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
262
- }
263
- }
264
- exports.scriptExtension = scriptExtension;
265
- async function scriptTool(os_version) {
266
- switch (os_version) {
267
- case 'win32':
268
- return 'pwsh';
269
- case 'linux':
270
- case 'darwin':
271
- return 'bash';
272
- default:
273
- return await log('Platform ' + os_version + ' is not supported', os_version, 'error');
274
- }
275
- }
276
- exports.scriptTool = scriptTool;
277
- async function customPackage(pkg, type, version, os_version) {
278
- const pkg_name = pkg.replace(/\d+|(pdo|pecl)[_-]/, '');
279
- const script_extension = await scriptExtension(os_version);
280
- const script = path.join(__dirname, '../src/scripts/' + type + '/' + pkg_name + script_extension);
281
- const command = await getCommand(os_version, pkg_name);
282
- return '\n. ' + script + '\n' + command + version;
283
- }
284
- exports.customPackage = customPackage;
285
- async function parseExtensionSource(extension, prefix) {
286
- const regex = /(\w+)-(.+:\/\/.+(?:[.:].+)+\/)?([\w.-]+)\/([\w.-]+)@(.+)/;
287
- const matches = regex.exec(extension);
288
- matches[2] = matches[2] ? matches[2].slice(0, -1) : 'https://github.com';
289
- return await joins('\nadd_extension_from_source', ...matches.splice(1, matches.length), prefix);
290
- }
291
- exports.parseExtensionSource = parseExtensionSource;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.parseExtensionSource = exports.customPackage = exports.scriptTool = exports.scriptExtension = exports.joins = exports.getCommand = exports.getUnsupportedLog = exports.suppressOutput = exports.getExtensionPrefix = exports.CSVArray = exports.extensionArray = exports.addLog = exports.stepLog = exports.log = exports.color = exports.asyncForEach = exports.parseIniFile = exports.parseVersion = exports.getManifestURL = exports.getInput = exports.readEnv = void 0;
23
+ const path = __importStar(require("path"));
24
+ const core = __importStar(require("@actions/core"));
25
+ const fetch = __importStar(require("./fetch"));
26
+ async function readEnv(property) {
27
+ const property_lc = property.toLowerCase();
28
+ const property_uc = property.toUpperCase();
29
+ return (process.env[property] ||
30
+ process.env[property_lc] ||
31
+ process.env[property_uc] ||
32
+ process.env[property_lc.replace('_', '-')] ||
33
+ process.env[property_uc.replace('_', '-')] ||
34
+ '');
35
+ }
36
+ exports.readEnv = readEnv;
37
+ async function getInput(name, mandatory) {
38
+ const input = core.getInput(name);
39
+ const env_input = await readEnv(name);
40
+ switch (true) {
41
+ case input != '':
42
+ return input;
43
+ case input == '' && env_input != '':
44
+ return env_input;
45
+ case input == '' && env_input == '' && mandatory:
46
+ throw new Error(`Input required and not supplied: ${name}`);
47
+ default:
48
+ return '';
49
+ }
50
+ }
51
+ exports.getInput = getInput;
52
+ async function getManifestURL() {
53
+ return 'https://raw.githubusercontent.com/shivammathur/setup-php/develop/src/configs/php-versions.json';
54
+ }
55
+ exports.getManifestURL = getManifestURL;
56
+ async function parseVersion(version) {
57
+ const manifest = await getManifestURL();
58
+ switch (true) {
59
+ case /^(latest|nightly|\d+\.x)$/.test(version):
60
+ return JSON.parse((await fetch.fetch(manifest))['data'])[version];
61
+ default:
62
+ switch (true) {
63
+ case version.length > 1:
64
+ return version.slice(0, 3);
65
+ default:
66
+ return version + '.0';
67
+ }
68
+ }
69
+ }
70
+ exports.parseVersion = parseVersion;
71
+ async function parseIniFile(ini_file) {
72
+ switch (true) {
73
+ case /^(production|development|none)$/.test(ini_file):
74
+ return ini_file;
75
+ case /php\.ini-(production|development)$/.test(ini_file):
76
+ return ini_file.split('-')[1];
77
+ default:
78
+ return 'production';
79
+ }
80
+ }
81
+ exports.parseIniFile = parseIniFile;
82
+ async function asyncForEach(array, callback) {
83
+ for (let index = 0; index < array.length; index++) {
84
+ await callback(array[index], index, array);
85
+ }
86
+ }
87
+ exports.asyncForEach = asyncForEach;
88
+ async function color(type) {
89
+ switch (type) {
90
+ case 'error':
91
+ return '31';
92
+ default:
93
+ case 'success':
94
+ return '32';
95
+ case 'warning':
96
+ return '33';
97
+ }
98
+ }
99
+ exports.color = color;
100
+ async function log(message, os, log_type) {
101
+ switch (os) {
102
+ case 'win32':
103
+ return ('printf "\\033[' +
104
+ (await color(log_type)) +
105
+ ';1m' +
106
+ message +
107
+ ' \\033[0m"');
108
+ case 'linux':
109
+ case 'darwin':
110
+ default:
111
+ return ('echo "\\033[' + (await color(log_type)) + ';1m' + message + '\\033[0m"');
112
+ }
113
+ }
114
+ exports.log = log;
115
+ async function stepLog(message, os) {
116
+ switch (os) {
117
+ case 'win32':
118
+ return 'Step-Log "' + message + '"';
119
+ case 'linux':
120
+ case 'darwin':
121
+ return 'step_log "' + message + '"';
122
+ default:
123
+ return await log('Platform ' + os + ' is not supported', os, 'error');
124
+ }
125
+ }
126
+ exports.stepLog = stepLog;
127
+ async function addLog(mark, subject, message, os) {
128
+ switch (os) {
129
+ case 'win32':
130
+ return 'Add-Log "' + mark + '" "' + subject + '" "' + message + '"';
131
+ case 'linux':
132
+ case 'darwin':
133
+ return 'add_log "' + mark + '" "' + subject + '" "' + message + '"';
134
+ default:
135
+ return await log('Platform ' + os + ' is not supported', os, 'error');
136
+ }
137
+ }
138
+ exports.addLog = addLog;
139
+ async function extensionArray(extension_csv) {
140
+ switch (extension_csv) {
141
+ case '':
142
+ case ' ':
143
+ return [];
144
+ default:
145
+ return [
146
+ extension_csv.match(/(^|,\s?)none(\s?,|$)/) ? 'none' : '',
147
+ ...extension_csv
148
+ .split(',')
149
+ .map(function (extension) {
150
+ if (/.+-.+\/.+@.+/.test(extension)) {
151
+ return extension;
152
+ }
153
+ return extension
154
+ .trim()
155
+ .toLowerCase()
156
+ .replace(/^(:)?(php[-_]|none|zend )|(-[^-]*)-/, '$1$3');
157
+ })
158
+ ].filter(Boolean);
159
+ }
160
+ }
161
+ exports.extensionArray = extensionArray;
162
+ async function CSVArray(values_csv) {
163
+ switch (values_csv) {
164
+ case '':
165
+ case ' ':
166
+ return [];
167
+ default:
168
+ return values_csv
169
+ .split(/,(?=(?:(?:[^"']*["']){2})*[^"']*$)/)
170
+ .map(function (value) {
171
+ return value
172
+ .trim()
173
+ .replace(/^["']|["']$|(?<==)["']/g, '')
174
+ .replace(/=(((?!E_).)*[?{}|&~![()^]+((?!E_).)+)/, "='$1'");
175
+ })
176
+ .filter(Boolean);
177
+ }
178
+ }
179
+ exports.CSVArray = CSVArray;
180
+ async function getExtensionPrefix(extension) {
181
+ switch (true) {
182
+ default:
183
+ return 'extension';
184
+ case /xdebug([2-3])?$|opcache|ioncube|eaccelerator/.test(extension):
185
+ return 'zend_extension';
186
+ }
187
+ }
188
+ exports.getExtensionPrefix = getExtensionPrefix;
189
+ async function suppressOutput(os) {
190
+ switch (os) {
191
+ case 'win32':
192
+ return ' >$null 2>&1';
193
+ case 'linux':
194
+ case 'darwin':
195
+ return ' >/dev/null 2>&1';
196
+ default:
197
+ return await log('Platform ' + os + ' is not supported', os, 'error');
198
+ }
199
+ }
200
+ exports.suppressOutput = suppressOutput;
201
+ async function getUnsupportedLog(extension, version, os) {
202
+ return ('\n' +
203
+ (await addLog('$cross', extension, [extension, 'is not supported on PHP', version].join(' '), os)) +
204
+ '\n');
205
+ }
206
+ exports.getUnsupportedLog = getUnsupportedLog;
207
+ async function getCommand(os, suffix) {
208
+ switch (os) {
209
+ case 'linux':
210
+ case 'darwin':
211
+ return 'add_' + suffix + ' ';
212
+ case 'win32':
213
+ return 'Add-' + suffix.charAt(0).toUpperCase() + suffix.slice(1) + ' ';
214
+ default:
215
+ return await log('Platform ' + os + ' is not supported', os, 'error');
216
+ }
217
+ }
218
+ exports.getCommand = getCommand;
219
+ async function joins(...str) {
220
+ return [...str].join(' ');
221
+ }
222
+ exports.joins = joins;
223
+ async function scriptExtension(os) {
224
+ switch (os) {
225
+ case 'win32':
226
+ return '.ps1';
227
+ case 'linux':
228
+ case 'darwin':
229
+ return '.sh';
230
+ default:
231
+ return await log('Platform ' + os + ' is not supported', os, 'error');
232
+ }
233
+ }
234
+ exports.scriptExtension = scriptExtension;
235
+ async function scriptTool(os) {
236
+ switch (os) {
237
+ case 'win32':
238
+ return 'pwsh ';
239
+ case 'linux':
240
+ case 'darwin':
241
+ return 'bash ';
242
+ default:
243
+ return await log('Platform ' + os + ' is not supported', os, 'error');
244
+ }
245
+ }
246
+ exports.scriptTool = scriptTool;
247
+ async function customPackage(pkg, type, version, os) {
248
+ const pkg_name = pkg.replace(/\d+|(pdo|pecl)[_-]/, '');
249
+ const script_extension = await scriptExtension(os);
250
+ const script = path.join(__dirname, '../src/scripts/' + type + '/' + pkg_name + script_extension);
251
+ const command = await getCommand(os, pkg_name);
252
+ return '\n. ' + script + '\n' + command + version;
253
+ }
254
+ exports.customPackage = customPackage;
255
+ async function parseExtensionSource(extension, prefix) {
256
+ const regex = /(\w+)-(\w+:\/\/.{1,253}(?:[.:][^:/\s]{2,63})+\/)?([\w.-]+)\/([\w.-]+)@(.+)/;
257
+ const matches = regex.exec(extension);
258
+ matches[2] = matches[2] ? matches[2].slice(0, -1) : 'https://github.com';
259
+ return await joins('\nadd_extension_from_source', ...matches.splice(1, matches.length), prefix);
260
+ }
261
+ exports.parseExtensionSource = parseExtensionSource;
292
262
  //# sourceMappingURL=utils.js.map
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}