setup-php 2.20.1 → 2.21.2
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 +8 -4
- package/lib/extensions.js +4 -4
- package/lib/extensions.js.map +1 -1
- package/package.json +12 -12
- package/src/configs/brew_extensions +2 -0
- package/src/configs/tools.json +13 -0
- package/src/extensions.ts +13 -7
- package/src/scripts/extensions/add_extensions.sh +18 -7
- package/src/scripts/extensions/phalcon.ps1 +29 -9
- package/src/scripts/extensions/phalcon.sh +45 -7
- package/src/scripts/tools/add_tools.ps1 +9 -4
- package/src/scripts/tools/add_tools.sh +3 -2
- package/src/scripts/tools/symfony.sh +11 -7
package/README.md
CHANGED
|
@@ -207,7 +207,7 @@ PHP extensions can be set up using the `extensions` input. It accepts a `string`
|
|
|
207
207
|
- These extensions have custom support:
|
|
208
208
|
- `cubrid`, `pdo_cubrid` and `gearman` on `Ubuntu`.
|
|
209
209
|
- `geos` and `event` on `Ubuntu` and `macOS`.
|
|
210
|
-
- `blackfire`, `couchbase`, `ioncube`, `oci8`, `pdo_firebird`, `pdo_oci`, `pecl_http`, `phalcon3` and `
|
|
210
|
+
- `blackfire`, `couchbase`, `ioncube`, `oci8`, `pdo_firebird`, `pdo_oci`, `pecl_http`, `phalcon3`, `phalcon4` and `phalcon5` on all supported OS.
|
|
211
211
|
|
|
212
212
|
- By default, extensions which cannot be added or disabled gracefully leave an error message in the logs, the execution is not interrupted. To change this behaviour you can set `fail-fast` flag to `true`.
|
|
213
213
|
|
|
@@ -225,7 +225,7 @@ PHP extensions can be set up using the `extensions` input. It accepts a `string`
|
|
|
225
225
|
|
|
226
226
|
These tools can be set up globally using the `tools` input. It accepts a string in csv-format.
|
|
227
227
|
|
|
228
|
-
[`behat`], [`blackfire`], [`blackfire-player`], [`churn`], [`codeception`], [`composer`], [`composer-normalize`], [`composer-prefetcher`], [`composer-require-checker`], [`composer-unused`], [`cs2pr`], [`deployer`], [`flex`], [`grpc_php_plugin`], [`infection`], [`parallel-lint`], [`pecl`], [`phan`], [`phing`], [`phinx`], [`phive`], [`php-config`], [`php-cs-fixer`], [`phpcbf`], [`phpcpd`], [`phpcs`], [`phpdoc`] or [`phpDocumentor`], [`phpize`], [`phplint`], [`phpmd`], [`phpspec`], [`phpstan`], [`phpunit`], [`phpunit-bridge`], [`phpunit-polyfills`], [`prestissimo`], [`protoc`], [`psalm`], [`symfony`] or [`symfony-cli`], [`vapor`] or [`vapor-cli`], [`wp`] or [`wp-cli`]
|
|
228
|
+
[`behat`], [`blackfire`], [`blackfire-player`], [`churn`], [`codeception`], [`composer`], [`composer-normalize`], [`composer-prefetcher`], [`composer-require-checker`], [`composer-unused`], [`cs2pr`], [`deployer`], [`flex`], [`grpc_php_plugin`], [`infection`], [`parallel-lint`], [`pecl`], [`phan`], [`phing`], [`phinx`], [`phive`], [`php-config`], [`php-cs-fixer`], [`phpcbf`], [`phpcpd`], [`phpcs`], [`phpdoc`] or [`phpDocumentor`], [`phpize`], [`phplint`], [`phpmd`], [`phpspec`], [`phpstan`], [`phpunit`], [`phpunit-bridge`], [`phpunit-polyfills`], [`pint`], [`prestissimo`], [`protoc`], [`psalm`], [`rector`], [`symfony`] or [`symfony-cli`], [`vapor`] or [`vapor-cli`], [`wp`] or [`wp-cli`]
|
|
229
229
|
|
|
230
230
|
```yaml
|
|
231
231
|
- name: Setup PHP with tools
|
|
@@ -254,7 +254,8 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
254
254
|
|
|
255
255
|
When you specify just the major version or the version in `major.minor` format, the latest patch version matching the input will be setup.
|
|
256
256
|
|
|
257
|
-
Except for major versions of `composer`, For other tools when you specify only the `major` version or the version in `major.minor` format for any tool you can get rate limited by GitHub's API. To avoid this, it is recommended to provide a [`GitHub` OAuth token](https://github.com/shivammathur/setup-php#composer-github-oauth "Composer GitHub OAuth").
|
|
257
|
+
Except for major versions of `composer`, For other tools when you specify only the `major` version or the version in `major.minor` format for any tool you can get rate limited by GitHub's API. To avoid this, it is recommended to provide a [`GitHub` OAuth token](https://github.com/shivammathur/setup-php#composer-github-oauth "Composer GitHub OAuth").
|
|
258
|
+
You can do that by setting `GITHUB_TOKEN` environment variable. The `COMPOSER_TOKEN` environment variable has been deprecated in favor of `GITHUB_TOKEN` and will be removed in the next major version.
|
|
258
259
|
|
|
259
260
|
```yaml
|
|
260
261
|
- name: Setup PHP with tools
|
|
@@ -741,7 +742,8 @@ restore-keys: ${{ runner.os }}-composer-${{ matrix.prefer }}-
|
|
|
741
742
|
### GitHub Composer Authentication
|
|
742
743
|
|
|
743
744
|
If you have a number of workflows which set up multiple tools or have many composer dependencies, you might hit the GitHub's rate limit for composer. Also, if you specify only the major version or the version in `major.minor` format, you can hit the rate limit. To avoid this you can specify an `OAuth` token by setting `GITHUB_TOKEN` environment variable. You can use [`GITHUB_TOKEN`](https://help.github.com/en/actions/configuring-and-managing-workflows/authenticating-with-the-github_token "GITHUB_TOKEN documentation") secret for this purpose.
|
|
744
|
-
|
|
745
|
+
|
|
746
|
+
The `COMPOSER_TOKEN` environment variable has been deprecated in favor of `GITHUB_TOKEN` and will be removed in the next major version.
|
|
745
747
|
|
|
746
748
|
```yaml
|
|
747
749
|
- name: Setup PHP
|
|
@@ -1033,9 +1035,11 @@ These companies generously provide setup-php their products and services to aid
|
|
|
1033
1035
|
[`phpunit`]: https://phpunit.de/
|
|
1034
1036
|
[`phpunit-bridge`]: https://symfony.com/doc/current/components/phpunit_bridge.html
|
|
1035
1037
|
[`phpunit-polyfills`]: https://github.com/Yoast/PHPUnit-Polyfills
|
|
1038
|
+
[`pint`]: https://github.com/laravel/pint
|
|
1036
1039
|
[`prestissimo`]: https://github.com/hirak/prestissimo
|
|
1037
1040
|
[`protoc`]: https://developers.google.com/protocol-buffers/
|
|
1038
1041
|
[`psalm`]: https://psalm.dev/
|
|
1042
|
+
[`rector`]: https://getrector.org/
|
|
1039
1043
|
[`symfony`]: https://symfony.com/download
|
|
1040
1044
|
[`symfony-cli`]: https://symfony.com/download
|
|
1041
1045
|
[`vapor`]: https://docs.vapor.build/
|
package/lib/extensions.js
CHANGED
|
@@ -46,7 +46,7 @@ async function addExtensionDarwin(extension_csv, version) {
|
|
|
46
46
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-1])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
47
47
|
case /^couchbase|^event|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
|
48
48
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
49
|
-
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4/.test(version_extension):
|
|
49
|
+
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-2])phalcon5/.test(version_extension):
|
|
50
50
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
51
51
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'darwin');
|
|
52
52
|
return;
|
|
@@ -62,7 +62,7 @@ async function addExtensionDarwin(extension_csv, version) {
|
|
|
62
62
|
case /(?<!5\.[3-5])(amqp|apcu|expect|gnupg|grpc|igbinary|imagick|imap|mailparse|mcrypt|memcache|memcached|mongodb|msgpack|protobuf|psr|raphf|rdkafka|redis|ssh2|swoole|xdebug|xdebug2|yaml|zmq)/.test(version_extension):
|
|
63
63
|
case /(5\.6|7\.[0-4])propro/.test(version_extension):
|
|
64
64
|
case /(?<!5\.[3-6]|7\.0)pcov/.test(version_extension):
|
|
65
|
-
case /(?<!5\.[3-6])(vips|xlswriter)/.test(version_extension):
|
|
65
|
+
case /(?<!5\.[3-6])(ast|vips|xlswriter)/.test(version_extension):
|
|
66
66
|
add_script += await utils.joins('\nadd_brew_extension', ext_name, ext_prefix);
|
|
67
67
|
return;
|
|
68
68
|
case /^sqlite$/.test(extension):
|
|
@@ -94,7 +94,7 @@ async function addExtensionWindows(extension_csv, version) {
|
|
|
94
94
|
case /^(5\.[3-6]|7\.[0-4]|8\.1)blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
95
95
|
case /^pdo_oci$|^oci8$|^pdo_firebird$/.test(extension):
|
|
96
96
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
97
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$/.test(version_extension):
|
|
97
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-2])phalcon5$/.test(version_extension):
|
|
98
98
|
case /^(7\.[1-4]|8\.1)(pecl_)?http/.test(version_extension):
|
|
99
99
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'win32');
|
|
100
100
|
return;
|
|
@@ -161,7 +161,7 @@ async function addExtensionLinux(extension_csv, version) {
|
|
|
161
161
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
|
162
162
|
case /(?<!5\.[3-5])intl-[\d]+\.[\d]+$/.test(version_extension):
|
|
163
163
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
164
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$/.test(version_extension):
|
|
164
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-2])phalcon5$/.test(version_extension):
|
|
165
165
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
166
166
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'linux');
|
|
167
167
|
return;
|
package/lib/extensions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAQ1B,KAAK,UAAU,kBAAkB,CACtC,aAAqB,EACrB,OAAe;IAEf,MAAM,UAAU,GAAkB,MAAM,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5E,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,WAAW,SAAiB;QACpE,MAAM,iBAAiB,GAAW,OAAO,GAAG,SAAS,CAAC;QACtD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAa,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAE5D,QAAQ,IAAI,EAAE;YAEZ,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACtB,aAAa,IAAI,qBAAqB,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACrE,OAAO;YAET,KAAK,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC1B,UAAU,IAAI,sBAAsB,CAAC;gBACrC,OAAO;YAET,KAAK,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,UAAU,IAAI,MAAM,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gBACtE,OAAO;YAMT,KAAK,0DAA0D,CAAC,IAAI,CAClE,iBAAiB,CAClB,CAAC;YACF,KAAK,wEAAwE,CAAC,IAAI,CAChF,SAAS,CACV,CAAC;YACF,KAAK,8BAA8B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC5D,KAAK,
|
|
1
|
+
{"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "setup-php",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.21.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Setup PHP for use with GitHub Actions",
|
|
6
6
|
"main": "lib/install.js",
|
|
@@ -34,27 +34,27 @@
|
|
|
34
34
|
"author": "shivammathur",
|
|
35
35
|
"license": "MIT",
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@actions/core": "^1.9.
|
|
37
|
+
"@actions/core": "^1.9.1",
|
|
38
38
|
"@actions/exec": "^1.1.1",
|
|
39
39
|
"@actions/io": "^1.1.2"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@types/jest": "^28.1.
|
|
43
|
-
"@types/node": "^18.
|
|
44
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
45
|
-
"@typescript-eslint/parser": "^5.
|
|
42
|
+
"@types/jest": "^28.1.7",
|
|
43
|
+
"@types/node": "^18.7.6",
|
|
44
|
+
"@typescript-eslint/eslint-plugin": "^5.33.1",
|
|
45
|
+
"@typescript-eslint/parser": "^5.33.1",
|
|
46
46
|
"@vercel/ncc": "^0.34.0",
|
|
47
|
-
"eslint": "^8.
|
|
47
|
+
"eslint": "^8.22.0",
|
|
48
48
|
"eslint-config-prettier": "^8.5.0",
|
|
49
49
|
"eslint-plugin-import": "^2.26.0",
|
|
50
|
-
"eslint-plugin-jest": "^26.
|
|
50
|
+
"eslint-plugin-jest": "^26.8.3",
|
|
51
51
|
"eslint-plugin-prettier": "^4.2.1",
|
|
52
|
-
"jest": "^28.1.
|
|
53
|
-
"jest-circus": "^28.1.
|
|
54
|
-
"nock": "^13.2.
|
|
52
|
+
"jest": "^28.1.3",
|
|
53
|
+
"jest-circus": "^28.1.3",
|
|
54
|
+
"nock": "^13.2.9",
|
|
55
55
|
"prettier": "^2.7.1",
|
|
56
56
|
"simple-git-hooks": "^2.8.0",
|
|
57
|
-
"ts-jest": "^28.0.
|
|
57
|
+
"ts-jest": "^28.0.8",
|
|
58
58
|
"typescript": "^4.7.4"
|
|
59
59
|
},
|
|
60
60
|
"bugs": {
|
package/src/configs/tools.json
CHANGED
|
@@ -105,6 +105,14 @@
|
|
|
105
105
|
"version_prefix": "",
|
|
106
106
|
"version_parameter": "-V"
|
|
107
107
|
},
|
|
108
|
+
"pint": {
|
|
109
|
+
"type": "phar",
|
|
110
|
+
"repository": "laravel/pint",
|
|
111
|
+
"extension": ".phar",
|
|
112
|
+
"domain": "https://github.com",
|
|
113
|
+
"version_prefix": "Pint ",
|
|
114
|
+
"version_parameter": "-V"
|
|
115
|
+
},
|
|
108
116
|
"psalm": {
|
|
109
117
|
"type": "phar",
|
|
110
118
|
"repository": "vimeo/psalm",
|
|
@@ -176,6 +184,11 @@
|
|
|
176
184
|
"repository": "laravel/vapor-cli",
|
|
177
185
|
"scope": "scoped"
|
|
178
186
|
},
|
|
187
|
+
"rector": {
|
|
188
|
+
"type": "composer",
|
|
189
|
+
"repository": "rector/rector",
|
|
190
|
+
"scope": "scoped"
|
|
191
|
+
},
|
|
179
192
|
"blackfire": {
|
|
180
193
|
"type": "custom-package",
|
|
181
194
|
"alias": "blackfire-agent"
|
package/src/extensions.ts
CHANGED
|
@@ -35,7 +35,7 @@ export async function addExtensionDarwin(
|
|
|
35
35
|
// match 5.3blackfire-(semver)...8.1blackfire-(semver)
|
|
36
36
|
// match couchbase, event, geos, pdo_oci, oci8, http, pecl_http
|
|
37
37
|
// match 5.3ioncube...7.4ioncube
|
|
38
|
-
// match 7.0phalcon3...7.3phalcon3
|
|
38
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.2phalcon5
|
|
39
39
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-1])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
40
40
|
version_extension
|
|
41
41
|
):
|
|
@@ -43,7 +43,9 @@ export async function addExtensionDarwin(
|
|
|
43
43
|
extension
|
|
44
44
|
):
|
|
45
45
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
46
|
-
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4/.test(
|
|
46
|
+
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-2])phalcon5/.test(
|
|
47
|
+
version_extension
|
|
48
|
+
):
|
|
47
49
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
48
50
|
add_script += await utils.customPackage(
|
|
49
51
|
ext_name,
|
|
@@ -83,7 +85,7 @@ export async function addExtensionDarwin(
|
|
|
83
85
|
):
|
|
84
86
|
case /(5\.6|7\.[0-4])propro/.test(version_extension):
|
|
85
87
|
case /(?<!5\.[3-6]|7\.0)pcov/.test(version_extension):
|
|
86
|
-
case /(?<!5\.[3-6])(vips|xlswriter)/.test(version_extension):
|
|
88
|
+
case /(?<!5\.[3-6])(ast|vips|xlswriter)/.test(version_extension):
|
|
87
89
|
add_script += await utils.joins(
|
|
88
90
|
'\nadd_brew_extension',
|
|
89
91
|
ext_name,
|
|
@@ -132,14 +134,16 @@ export async function addExtensionWindows(
|
|
|
132
134
|
// match 5.3blackfire-(semver)...8.1blackfire-(semver)
|
|
133
135
|
// match pdo_oci and oci8
|
|
134
136
|
// match 5.3ioncube...7.4ioncube
|
|
135
|
-
// match 7.0phalcon3...7.3phalcon3
|
|
137
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.2phalcon5
|
|
136
138
|
// match 7.1pecl_http...8.1pecl_http and 7.1http...8.1http
|
|
137
139
|
case /^(5\.[3-6]|7\.[0-4]|8\.1)blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
138
140
|
version_extension
|
|
139
141
|
):
|
|
140
142
|
case /^pdo_oci$|^oci8$|^pdo_firebird$/.test(extension):
|
|
141
143
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
142
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$/.test(
|
|
144
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-2])phalcon5$/.test(
|
|
145
|
+
version_extension
|
|
146
|
+
):
|
|
143
147
|
case /^(7\.[1-4]|8\.1)(pecl_)?http/.test(version_extension):
|
|
144
148
|
add_script += await utils.customPackage(
|
|
145
149
|
ext_name,
|
|
@@ -255,7 +259,7 @@ export async function addExtensionLinux(
|
|
|
255
259
|
// match 5.3pdo_cubrid...7.2php_cubrid, 5.3cubrid...7.4cubrid
|
|
256
260
|
// match couchbase, geos, pdo_oci, oci8, http, pecl_http
|
|
257
261
|
// match 5.3ioncube...7.4ioncube
|
|
258
|
-
// match 7.0phalcon3...7.3phalcon3
|
|
262
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, 7.4phalcon5...8.2phalcon5
|
|
259
263
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-1])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
260
264
|
version_extension
|
|
261
265
|
):
|
|
@@ -267,7 +271,9 @@ export async function addExtensionLinux(
|
|
|
267
271
|
):
|
|
268
272
|
case /(?<!5\.[3-5])intl-[\d]+\.[\d]+$/.test(version_extension):
|
|
269
273
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
270
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$/.test(
|
|
274
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-2])phalcon5$/.test(
|
|
275
|
+
version_extension
|
|
276
|
+
):
|
|
271
277
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
272
278
|
add_script += await utils.customPackage(
|
|
273
279
|
ext_name,
|
|
@@ -144,13 +144,18 @@ add_extension() {
|
|
|
144
144
|
# Function to get the PECL version of an extension.
|
|
145
145
|
get_pecl_version() {
|
|
146
146
|
local extension=$1
|
|
147
|
-
|
|
147
|
+
states=("stable" "rc" "preview" "beta" "alpha" "snapshot")
|
|
148
|
+
stability="$(echo "$2" | grep -m 1 -Eio "($(IFS='|' ; echo "${states[*]}"))")"
|
|
149
|
+
IFS=' ' read -r -a states <<< "$(echo "${states[@]}" | grep -Eo "$stability.*")"
|
|
150
|
+
major_version=${3:-'[0-9]+'}
|
|
148
151
|
pecl_rest='https://pecl.php.net/rest/r/'
|
|
149
152
|
response=$(get -s -n "" "$pecl_rest$extension"/allreleases.xml)
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
pecl_version=$(echo "$response" | grep -m 1 -Eo "([0-9]+\.[0-9]
|
|
153
|
-
|
|
153
|
+
for state in "${states[@]}"; do
|
|
154
|
+
pecl_version=$(echo "$response" | grep -m 1 -Eio "($major_version\.[0-9]+\.[0-9]+${state}[0-9]+<)" | cut -d '<' -f 1)
|
|
155
|
+
[ -z "$pecl_version" ] && pecl_version=$(echo "$response" | grep -m 1 -Eio "v>(.*)<\/v>.*$state<" | grep -m 1 -Eo "($major_version\.[0-9]+\.[0-9]+.*)<" | cut -d '<' -f 1)
|
|
156
|
+
[ -n "$pecl_version" ] && break;
|
|
157
|
+
done
|
|
158
|
+
[ -z "$pecl_version" ] && pecl_version=$(echo "$response" | grep -m 1 -Eo "($major_version\.[0-9]+\.[0-9]+)<" | cut -d '<' -f 1)
|
|
154
159
|
echo "$pecl_version"
|
|
155
160
|
}
|
|
156
161
|
|
|
@@ -184,8 +189,9 @@ add_pecl_extension() {
|
|
|
184
189
|
add_log "${tick:?}" "$extension" "Enabled"
|
|
185
190
|
else
|
|
186
191
|
disable_extension_helper "$extension" >/dev/null 2>&1
|
|
187
|
-
|
|
188
|
-
|
|
192
|
+
[ -n "$pecl_version" ] && pecl_version="-$pecl_version"
|
|
193
|
+
pecl_install "$extension$pecl_version" || add_extension "$extension" "$(get_extension_prefix "$extension")" >/dev/null 2>&1
|
|
194
|
+
add_extension_log "$extension-$(php -r "echo phpversion('$extension');")" "Installed and enabled"
|
|
189
195
|
fi
|
|
190
196
|
}
|
|
191
197
|
|
|
@@ -197,3 +203,8 @@ add_unstable_extension() {
|
|
|
197
203
|
pecl_version=$(get_pecl_version "$extension" "$stability")
|
|
198
204
|
add_pecl_extension "$extension" "$pecl_version" "$prefix"
|
|
199
205
|
}
|
|
206
|
+
|
|
207
|
+
# Function to get extension prefix
|
|
208
|
+
get_extension_prefix() {
|
|
209
|
+
echo "$1" | grep -Eq "xdebug([2-3])?$|opcache|ioncube|eaccelerator" && echo zend_extension || echo extension
|
|
210
|
+
}
|
|
@@ -1,16 +1,36 @@
|
|
|
1
|
-
# Function to
|
|
2
|
-
Function Add-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
$
|
|
8
|
-
|
|
1
|
+
# Function to add phalcon using GitHub releases.
|
|
2
|
+
Function Add-PhalconFromGitHub() {
|
|
3
|
+
Param (
|
|
4
|
+
[Parameter(Position = 0, Mandatory = $true)]
|
|
5
|
+
[ValidateNotNull()]
|
|
6
|
+
[string]
|
|
7
|
+
$Semver
|
|
8
|
+
)
|
|
9
|
+
$domain = 'https://github.com'
|
|
10
|
+
$nts = if (!$installed.ThreadSafe) { "_nts" } else { "" }
|
|
11
|
+
$match = Invoke-WebRequest -Uri "$domain/phalcon/cphalcon/releases/v$Semver" | Select-String -Pattern "href=`"(.*phalcon_x64_.*_php${version}_${extension_version}.*[0-9]${nts}.zip)`""
|
|
12
|
+
if($NULL -eq $match) {
|
|
13
|
+
$nts = if (!$installed.ThreadSafe) { "-nts" } else { "-ts" }
|
|
14
|
+
$match = Invoke-WebRequest -Uri "$domain/phalcon/cphalcon/releases/v$Semver" | Select-String -Pattern "href=`"(.*phalcon-php${version}${nts}-windows.*-x64.zip)`""
|
|
15
|
+
}
|
|
16
|
+
if($NULL -ne $match) {
|
|
9
17
|
$zip_file = $match.Matches[0].Groups[1].Value
|
|
10
18
|
Invoke-WebRequest -Uri $domain/$zip_file -OutFile $ENV:RUNNER_TOOL_CACHE\phalcon.zip > $null 2>&1
|
|
11
19
|
Expand-Archive -Path $ENV:RUNNER_TOOL_CACHE\phalcon.zip -DestinationPath $ENV:RUNNER_TOOL_CACHE\phalcon -Force > $null 2>&1
|
|
12
20
|
Copy-Item -Path "$ENV:RUNNER_TOOL_CACHE\phalcon\php_phalcon.dll" -Destination "$ext_dir\php_phalcon.dll"
|
|
13
21
|
Enable-PhpExtension -Extension phalcon -Path $php_dir
|
|
22
|
+
} else {
|
|
23
|
+
throw "Unable to get Phalcon release from the GitHub release"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
# Function to install phalcon
|
|
27
|
+
Function Add-PhalconHelper() {
|
|
28
|
+
if ($extension_version -eq '5') {
|
|
29
|
+
Add-PhalconFromGitHub -Semver (Get-PeclPackageVersion phalcon 5 snapshot stable | Select-Object -First 1)
|
|
30
|
+
} elseif ($extension_version -eq '4') {
|
|
31
|
+
Install-Phpextension -Extension phalcon -MinimumStability stable -Path $php_dir
|
|
32
|
+
} elseif ($extension_version -eq '3') {
|
|
33
|
+
Add-PhalconFromGitHub -Semver 3.4.5
|
|
14
34
|
}
|
|
15
35
|
}
|
|
16
36
|
|
|
@@ -18,7 +38,7 @@ Function Add-Phalcon() {
|
|
|
18
38
|
Param (
|
|
19
39
|
[Parameter(Position = 0, Mandatory = $true)]
|
|
20
40
|
[ValidateNotNull()]
|
|
21
|
-
[ValidateSet('phalcon3', 'phalcon4')]
|
|
41
|
+
[ValidateSet('phalcon3', 'phalcon4', 'phalcon5')]
|
|
22
42
|
[string]
|
|
23
43
|
$extension
|
|
24
44
|
)
|
|
@@ -1,13 +1,39 @@
|
|
|
1
|
+
# Helper function to get phalcon version
|
|
2
|
+
get_phalcon_version() {
|
|
3
|
+
if [ "$extension" = "phalcon5" ]; then
|
|
4
|
+
semver="$(get_pecl_version phalcon stable 5)"
|
|
5
|
+
([ -n "$semver" ] && echo "$semver") || get_pecl_version phalcon rc 5
|
|
6
|
+
elif [ "$extension" = "phalcon4" ]; then
|
|
7
|
+
echo '4.1.3'
|
|
8
|
+
elif [ "$extension" = "phalcon3" ]; then
|
|
9
|
+
echo '3.4.5'
|
|
10
|
+
fi
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
# Function to add phalcon from repo.
|
|
14
|
+
add_phalcon_from_repo(){
|
|
15
|
+
version=${version:?}
|
|
16
|
+
if [ "$extension" = "phalcon5" ]; then
|
|
17
|
+
PHALCON_PATH=build/phalcon
|
|
18
|
+
else
|
|
19
|
+
PHALCON_PATH=build/php"${version%.*}"/64bits
|
|
20
|
+
fi
|
|
21
|
+
PHALCON_CONFIGURE_OPTS="--enable-phalcon --with-php-config=$(command -v php-config)"
|
|
22
|
+
export PHALCON_PATH
|
|
23
|
+
export PHALCON_CONFIGURE_OPTS
|
|
24
|
+
add_extension_from_source phalcon https://github.com phalcon cphalcon v"$(get_phalcon_version)" extension
|
|
25
|
+
}
|
|
26
|
+
|
|
1
27
|
# Helper function to add phalcon.
|
|
2
28
|
add_phalcon_helper() {
|
|
3
29
|
status='Installed and enabled'
|
|
4
30
|
if [ "$(uname -s)" = "Darwin" ]; then
|
|
5
31
|
add_brew_extension "$extension" extension
|
|
6
32
|
else
|
|
7
|
-
|
|
8
|
-
[ "$extension" = "phalcon4" ] && packages+=("php${version:?}-psr")
|
|
33
|
+
package="php${version:?}-$extension"
|
|
9
34
|
add_ppa ondrej/php >/dev/null 2>&1 || update_ppa ondrej/php
|
|
10
|
-
|
|
35
|
+
[ "$extension" = "phalcon4" ] && (install_packages "php${version:?}-psr" || pecl_install psr || pecl_install psr-1.1.0)
|
|
36
|
+
(check_package "$package" && install_packages "$package") || add_phalcon_from_repo
|
|
11
37
|
fi
|
|
12
38
|
}
|
|
13
39
|
|
|
@@ -44,15 +70,27 @@ add_phalcon4() {
|
|
|
44
70
|
fi
|
|
45
71
|
}
|
|
46
72
|
|
|
73
|
+
# Function to add phalcon3.
|
|
74
|
+
add_phalcon5() {
|
|
75
|
+
if shared_extension phalcon; then
|
|
76
|
+
phalcon_version=$(php -d="extension=phalcon.so" -r "echo phpversion('phalcon');" | cut -d'.' -f 1)
|
|
77
|
+
if [ "$phalcon_version" != "$extension_major_version" ]; then
|
|
78
|
+
add_phalcon_helper
|
|
79
|
+
else
|
|
80
|
+
enable_extension phalcon extension
|
|
81
|
+
fi
|
|
82
|
+
else
|
|
83
|
+
add_phalcon_helper
|
|
84
|
+
fi
|
|
85
|
+
}
|
|
86
|
+
|
|
47
87
|
# Function to add phalcon.
|
|
48
88
|
add_phalcon() {
|
|
49
89
|
extension=$1
|
|
50
90
|
status='Enabled'
|
|
51
91
|
extension_major_version=${extension: -1}
|
|
52
|
-
if [ "$extension_major_version"
|
|
53
|
-
|
|
54
|
-
elif [ "$extension_major_version" = "3" ]; then
|
|
55
|
-
add_phalcon3 >/dev/null 2>&1
|
|
92
|
+
if [[ "$extension_major_version" =~ [3-5] ]]; then
|
|
93
|
+
add_phalcon"$extension_major_version" >/dev/null 2>&1
|
|
56
94
|
fi
|
|
57
95
|
add_extension_log "phalcon" "$status"
|
|
58
96
|
}
|
|
@@ -201,11 +201,15 @@ Function Add-ComposertoolHelper() {
|
|
|
201
201
|
[string]
|
|
202
202
|
$composer_args
|
|
203
203
|
)
|
|
204
|
+
$tool_version = $release.split(':')[1]
|
|
205
|
+
if($NULL -eq $tool_version) {
|
|
206
|
+
$tool_version = '*'
|
|
207
|
+
}
|
|
204
208
|
if($scope -eq 'global') {
|
|
205
209
|
if(Test-Path $composer_lock) {
|
|
206
210
|
Remove-Item -Path $composer_lock -Force
|
|
207
211
|
}
|
|
208
|
-
if(composer global show $prefix$tool -a 2>&1 | findstr '^type *: *composer-plugin' -and ($composer_args -ne '')) {
|
|
212
|
+
if((composer global show $prefix$tool $tool_version -a 2>&1 | findstr '^type *: *composer-plugin') -and ($composer_args -ne '')) {
|
|
209
213
|
composer global config --no-plugins allow-plugins."$prefix$tool" true >$null 2>&1
|
|
210
214
|
}
|
|
211
215
|
composer global require $prefix$release $composer_args >$null 2>&1
|
|
@@ -215,11 +219,12 @@ Function Add-ComposertoolHelper() {
|
|
|
215
219
|
$scoped_dir_suffix = (Get-FileHash -InputStream $release_stream -Algorithm sha256).Hash
|
|
216
220
|
$scoped_dir = "$composer_bin\_tools\$tool-$scoped_dir_suffix"
|
|
217
221
|
$unix_scoped_dir = $scoped_dir.replace('\', '/')
|
|
218
|
-
if(composer show $prefix$tool -d $unix_scoped_dir -a 2>&1 | findstr '^type *: *composer-plugin' -and ($composer_args -ne '')) {
|
|
219
|
-
composer config -d $unix_scoped_dir --no-plugins allow-plugins."$prefix$release" true >$null 2>&1
|
|
220
|
-
}
|
|
221
222
|
if(-not(Test-Path $scoped_dir)) {
|
|
222
223
|
New-Item -ItemType Directory -Force -Path $scoped_dir > $null 2>&1
|
|
224
|
+
Set-Content -Path $scoped_dir\composer.json -Value "{}"
|
|
225
|
+
if((composer show $prefix$tool $tool_version -d $unix_scoped_dir -a 2>&1 | findstr '^type *: *composer-plugin') -and ($composer_args -ne '')) {
|
|
226
|
+
composer config -d $unix_scoped_dir --no-plugins allow-plugins."$prefix$tool" true >$null 2>&1
|
|
227
|
+
}
|
|
223
228
|
composer require $prefix$release -d $unix_scoped_dir $composer_args >$null 2>&1
|
|
224
229
|
}
|
|
225
230
|
[System.Environment]::SetEnvironmentVariable(($tool.replace('-', '_') + '_bin'), "$scoped_dir\vendor\bin")
|
|
@@ -160,9 +160,10 @@ add_composertool_helper() {
|
|
|
160
160
|
scope=$4
|
|
161
161
|
composer_args=$5
|
|
162
162
|
enable_extensions curl mbstring openssl
|
|
163
|
+
tool_version=${release##*:}; [ "$tool_version" = "$tool" ] && tool_version="*"
|
|
163
164
|
if [ "$scope" = "global" ]; then
|
|
164
165
|
sudo rm -f "$composer_lock" >/dev/null 2>&1 || true
|
|
165
|
-
if composer global show "$prefix$tool" -a 2>&1 | grep -qE '^type *: *composer-plugin' && [ -n "$composer_args" ]; then
|
|
166
|
+
if composer global show "$prefix$tool" "$tool_version" -a 2>&1 | grep -qE '^type *: *composer-plugin' && [ -n "$composer_args" ]; then
|
|
166
167
|
composer global config --no-plugins allow-plugins."$prefix$tool" true >/dev/null 2>&1
|
|
167
168
|
fi
|
|
168
169
|
composer global require "$prefix$release" "$composer_args" >/dev/null 2>&1
|
|
@@ -172,7 +173,7 @@ add_composertool_helper() {
|
|
|
172
173
|
if ! [ -d "$scoped_dir" ]; then
|
|
173
174
|
mkdir -p "$scoped_dir"
|
|
174
175
|
echo '{}' | tee "$scoped_dir/composer.json" >/dev/null
|
|
175
|
-
if composer show "$prefix$tool" -d "$scoped_dir" -a 2>&1 | grep -qE '^type *: *composer-plugin' && [ -n "$composer_args" ]; then
|
|
176
|
+
if composer show "$prefix$tool" "$tool_version" -d "$scoped_dir" -a 2>&1 | grep -qE '^type *: *composer-plugin' && [ -n "$composer_args" ]; then
|
|
176
177
|
composer config -d "$scoped_dir" --no-plugins allow-plugins."$prefix$tool" true >/dev/null 2>&1
|
|
177
178
|
fi
|
|
178
179
|
composer require "$prefix$release" -d "$scoped_dir" "$composer_args" >/dev/null 2>&1
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
if
|
|
3
|
-
echo 'deb [trusted=yes] https://repo.symfony.com/apt/ /' | sudo tee /etc/apt/sources.list.d/symfony-cli.list >/dev/null 2>&1
|
|
4
|
-
update_lists symfony repo.symfony.com
|
|
5
|
-
install_packages symfony-cli
|
|
6
|
-
elif [ "$(uname -s)" = "Darwin" ]; then
|
|
1
|
+
add_symfony_helper() {
|
|
2
|
+
if command -v brew >/dev/null; then
|
|
7
3
|
add_brew_tap symfony-cli/homebrew-tap
|
|
8
|
-
brew install symfony-cli/tap/symfony-cli
|
|
4
|
+
brew install symfony-cli/tap/symfony-cli
|
|
5
|
+
else
|
|
6
|
+
arch=$(dpkg --print-architecture)
|
|
7
|
+
get -s -n "" "https://github.com/symfony-cli/symfony-cli/releases/latest/download/symfony-cli_linux_$arch.tar.gz" | sudo tar -xz -C "${tool_path_dir:?}"
|
|
8
|
+
sudo chmod a+x /usr/local/bin/symfony
|
|
9
9
|
fi
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
add_symfony() {
|
|
13
|
+
add_symfony_helper >/dev/null 2>&1
|
|
10
14
|
symfony_path="$(command -v symfony)"
|
|
11
15
|
if [[ -n "$symfony_path" ]]; then
|
|
12
16
|
sudo ln -s "$symfony_path" "${tool_path_dir:?}"/symfony-cli
|