setup-php 2.32.0 → 2.33.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 +52 -52
- package/lib/extensions.js +12 -12
- package/lib/tools.js +3 -0
- package/lib/tools.js.map +1 -1
- package/package.json +16 -16
- package/src/configs/mod_priority +1 -1
- package/src/configs/tools.json +3 -3
- package/src/extensions.ts +27 -27
- package/src/scripts/darwin.sh +1 -1
- package/src/scripts/extensions/add_extensions.ps1 +4 -0
- package/src/scripts/extensions/couchbase.sh +1 -1
- package/src/scripts/extensions/firebird.sh +1 -0
- package/src/scripts/extensions/intl.sh +6 -3
- package/src/scripts/extensions/oci.ps1 +10 -14
- package/src/scripts/extensions/oci.sh +14 -6
- package/src/scripts/extensions/patches/common.sh +2 -2
- package/src/scripts/extensions/phalcon.ps1 +2 -2
- package/src/scripts/extensions/phalcon.sh +1 -1
- package/src/scripts/extensions/relay.sh +9 -0
- package/src/scripts/extensions/source.sh +1 -1
- package/src/scripts/extensions/zephir_parser.ps1 +9 -2
- package/src/scripts/extensions/zephir_parser.sh +7 -3
- package/src/scripts/linux.sh +1 -1
- package/src/scripts/tools/add_tools.sh +0 -1
- package/src/scripts/tools/grpc_php_plugin.ps1 +7 -1
- package/src/scripts/tools/ppa.sh +11 -8
- package/src/scripts/tools/protoc.sh +3 -1
- package/src/scripts/unix.sh +38 -10
- package/src/tools.ts +3 -0
package/README.md
CHANGED
|
@@ -68,17 +68,18 @@ Both `GitHub-hosted` and `self-hosted` runners are supported by `setup-php` on t
|
|
|
68
68
|
|
|
69
69
|
### GitHub-Hosted Runners
|
|
70
70
|
|
|
71
|
-
| Virtual environment | YAML workflow label | Pre-installed PHP |
|
|
72
|
-
|
|
73
|
-
| Ubuntu 24.04 | `ubuntu-24.04`
|
|
74
|
-
| Ubuntu 22.04 |
|
|
75
|
-
| Ubuntu
|
|
76
|
-
|
|
|
77
|
-
| Windows Server
|
|
78
|
-
| Windows Server
|
|
79
|
-
|
|
|
80
|
-
| macOS
|
|
81
|
-
| macOS
|
|
71
|
+
| Virtual environment | Arch | YAML workflow label | Pre-installed PHP |
|
|
72
|
+
|---------------------|---------|------------------------------------|------------------------|
|
|
73
|
+
| Ubuntu 24.04 | x86_64 | `ubuntu-latest` or `ubuntu-24.04` | `PHP 8.3` |
|
|
74
|
+
| Ubuntu 22.04 | x86_64 | `ubuntu-22.04` | `PHP 8.1` |
|
|
75
|
+
| Ubuntu 24.04 | aarch64 | `ubuntu-24.04-arm` | `PHP 8.3` |
|
|
76
|
+
| Ubuntu 22.04 | aarch64 | `ubuntu-22.04-arm` | `PHP 8.1` |
|
|
77
|
+
| Windows Server 2025 | x64 | `windows-2025` | `PHP 8.3` |
|
|
78
|
+
| Windows Server 2022 | x64 | `windows-latest` or `windows-2022` | `PHP 8.3` |
|
|
79
|
+
| Windows Server 2019 | x64 | `windows-2019` | `PHP 8.3` |
|
|
80
|
+
| macOS Sequoia 15.x | arm64 | `macos-15` | - |
|
|
81
|
+
| macOS Sonoma 14.x | arm64 | `macos-latest` or `macos-14` | - |
|
|
82
|
+
| macOS Ventura 13.x | x86_64 | `macos-13` | `PHP 8.3` |
|
|
82
83
|
|
|
83
84
|
### Self-Hosted Runners
|
|
84
85
|
|
|
@@ -86,7 +87,6 @@ Both `GitHub-hosted` and `self-hosted` runners are supported by `setup-php` on t
|
|
|
86
87
|
|----------------------------------|----------------------------|
|
|
87
88
|
| Ubuntu 24.04 | `self-hosted` or `Linux` |
|
|
88
89
|
| Ubuntu 22.04 | `self-hosted` or `Linux` |
|
|
89
|
-
| Ubuntu 20.04 | `self-hosted` or `Linux` |
|
|
90
90
|
| Debian 12 | `self-hosted` or `Linux` |
|
|
91
91
|
| Debian 11 | `self-hosted` or `Linux` |
|
|
92
92
|
| Windows 7 and newer | `self-hosted` or `Windows` |
|
|
@@ -120,14 +120,15 @@ On all supported OS/Platforms the following PHP versions can be set up as per th
|
|
|
120
120
|
| `7.4` | `Stable` | `End of life` | `GitHub-hosted`, `self-hosted` |
|
|
121
121
|
| `8.0` | `Stable` | `End of life` | `GitHub-hosted`, `self-hosted` |
|
|
122
122
|
| `8.1` | `Stable` | `Security fixes only` | `GitHub-hosted`, `self-hosted` |
|
|
123
|
-
| `8.2` | `Stable` | `
|
|
123
|
+
| `8.2` | `Stable` | `Security fixes only` | `GitHub-hosted`, `self-hosted` |
|
|
124
124
|
| `8.3` | `Stable` | `Active` | `GitHub-hosted`, `self-hosted` |
|
|
125
125
|
| `8.4` | `Stable` | `Active` | `GitHub-hosted`, `self-hosted` |
|
|
126
126
|
| `8.5` | `Nightly` | `In development` | `GitHub-hosted`, `self-hosted` |
|
|
127
127
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
-
|
|
128
|
+
|
|
129
|
+
> [!Note]
|
|
130
|
+
> - Specifying `8.5` in `php-version` input installs a nightly build of `PHP 8.5.0-dev`. See [nightly build setup](#nightly-build-setup) for more information.
|
|
131
|
+
> - To use JIT on `PHP 8.0` and above, refer to the [JIT configuration](#jit-configuration) section.
|
|
131
132
|
|
|
132
133
|
## :heavy_plus_sign: PHP Extension Support
|
|
133
134
|
|
|
@@ -185,7 +186,7 @@ PHP extensions can be set up using the `extensions` input. It accepts a `string`
|
|
|
185
186
|
|
|
186
187
|
- All shared extensions can be disabled by specifying `none`. When `none` is specified along with other extensions, it is hoisted to the start of the input. So, all the shared extensions will be disabled first, then rest of the extensions in the input will be processed.
|
|
187
188
|
|
|
188
|
-
|
|
189
|
+
This disables all core and third-party shared extensions and thus, can break some tools which need them. Required extensions are enabled again when the tools are set up on a best-effort basis. So it is recommended to add the extensions required for your tools after `none` in the `extensions` input to avoid any issues.
|
|
189
190
|
|
|
190
191
|
```yaml
|
|
191
192
|
- name: Setup PHP without any shared extensions except mbstring
|
|
@@ -249,13 +250,13 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
249
250
|
```
|
|
250
251
|
|
|
251
252
|
- To set up a particular version of a tool, specify it in the form `tool:version`.
|
|
252
|
-
|
|
253
|
+
|
|
253
254
|
Version can be in the following format:
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
When you specify just the major version or the version in `major.minor` format, the latest patch version matching the input will be setup.
|
|
255
|
+
- Semver. For example `tool:1.2.3` or `tool:1.2.3-beta1`.
|
|
256
|
+
- Major version. For example `tool:1` or `tool:1.x`.
|
|
257
|
+
- Major and minor version. For example `tool:1.2` or `tool:1.2.x`.
|
|
258
|
+
|
|
259
|
+
When you specify just the major version or the version in `major.minor` format, the latest patch version matching the input will be setup.
|
|
259
260
|
|
|
260
261
|
With the exception of major versions of `composer`, if you specify only the `major` version or the version in `major.minor` format for a 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").
|
|
261
262
|
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.
|
|
@@ -308,12 +309,12 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
308
309
|
fail-fast: true
|
|
309
310
|
```
|
|
310
311
|
|
|
311
|
-
|
|
312
|
-
- Input `tools` is useful to set up tools which are only used in CI workflows, thus keeping your `composer.json` tidy.
|
|
313
|
-
- If you do not want to use all your dev-dependencies in workflow, you can run composer with `--no-dev` and install required tools using `tools` input to speed up your workflow.
|
|
314
|
-
- By default, `COMPOSER_NO_INTERACTION` is set to `1` and `COMPOSER_PROCESS_TIMEOUT` is set to `0`. In effect, this means that Composer commands in your scripts do not need to specify `--no-interaction`.
|
|
315
|
-
- Also, `COMPOSER_NO_AUDIT` is set to `1`. So if you want to audit your dependencies for security vulnerabilities, it is recommended to add a `composer audit` step before you install them.
|
|
316
|
-
- If you want to set a different `COMPOSER_PROCESS_TIMEOUT`, you can set it in your workflow file using the `env` keyword.
|
|
312
|
+
> [!NOTE]
|
|
313
|
+
> - Input `tools` is useful to set up tools which are only used in CI workflows, thus keeping your `composer.json` tidy.
|
|
314
|
+
> - If you do not want to use all your dev-dependencies in workflow, you can run composer with `--no-dev` and install required tools using `tools` input to speed up your workflow.
|
|
315
|
+
> - By default, `COMPOSER_NO_INTERACTION` is set to `1` and `COMPOSER_PROCESS_TIMEOUT` is set to `0`. In effect, this means that Composer commands in your scripts do not need to specify `--no-interaction`.
|
|
316
|
+
> - Also, `COMPOSER_NO_AUDIT` is set to `1`. So if you want to audit your dependencies for security vulnerabilities, it is recommended to add a `composer audit` step before you install them.
|
|
317
|
+
> - If you want to set a different `COMPOSER_PROCESS_TIMEOUT`, you can set it in your workflow file using the `env` keyword.
|
|
317
318
|
|
|
318
319
|
```yaml
|
|
319
320
|
- name: Setup PHP with composer and custom process timeout
|
|
@@ -350,14 +351,15 @@ Runs on all [PHP versions supported](#tada-php-support "List of PHP versions sup
|
|
|
350
351
|
coverage: xdebug2
|
|
351
352
|
```
|
|
352
353
|
|
|
353
|
-
|
|
354
|
+
> [!NOTE]
|
|
355
|
+
> Xdebug is enabled by default on Ubuntu GitHub Actions images, so if you are not using it in your workflow it is recommended to disable it as that will have a positive impact on your PHP performance. Please refer to the [disable coverage](#disable-coverage) section for details.
|
|
354
356
|
|
|
355
357
|
### PCOV
|
|
356
358
|
|
|
357
359
|
Specify `coverage: pcov` to use `PCOV` and disable `Xdebug`.
|
|
358
360
|
Runs on PHP 7.1 and newer PHP versions.
|
|
359
361
|
|
|
360
|
-
- If your source code directory is other than `src`, `lib` or, `app`, specify `pcov.directory` using the `ini-values` input.
|
|
362
|
+
- If your source code directory is other than `src`, `lib` or, `app`, specify `pcov.directory` using the `ini-values` input.
|
|
361
363
|
|
|
362
364
|
```yaml
|
|
363
365
|
- name: Setup PHP with PCOV
|
|
@@ -368,7 +370,7 @@ Runs on PHP 7.1 and newer PHP versions.
|
|
|
368
370
|
coverage: pcov
|
|
369
371
|
```
|
|
370
372
|
|
|
371
|
-
- PHPUnit 8.x and above supports PCOV out of the box.
|
|
373
|
+
- PHPUnit 8.x and above supports PCOV out of the box.
|
|
372
374
|
- If you are using PHPUnit 5.x, 6.x or 7.x, you need to set up `pcov/clobber` before executing your tests.
|
|
373
375
|
|
|
374
376
|
```yaml
|
|
@@ -411,7 +413,7 @@ Disable coverage for these reasons:
|
|
|
411
413
|
- Accepts `highest` or `latest` to set up the latest stable PHP version.
|
|
412
414
|
- Accepts `nightly` to set up a nightly build from the master branch of PHP.
|
|
413
415
|
- Accepts `pre-installed` to set up the highest pre-installed PHP version. You can combine this with `update: true` to update the pre-installed PHP version.
|
|
414
|
-
- Accepts the format `d.x`, where `d` is the major version. For example `5.x`, `7.x` and `8.x`.
|
|
416
|
+
- Accepts the format `d.x`, where `d` is the major version. For example `5.x`, `7.x` and `8.x`.
|
|
415
417
|
- See [PHP support](#tada-php-support) for the supported PHP versions.
|
|
416
418
|
- If not specified, it looks for the following in order:
|
|
417
419
|
- The `php-version-file` input if it exists
|
|
@@ -425,6 +427,7 @@ Disable coverage for these reasons:
|
|
|
425
427
|
- Accepts a `string`. For example `'.phpenv-version'`.
|
|
426
428
|
- See [PHP support](#tada-php-support) for the supported PHP versions.
|
|
427
429
|
- By default, `.php-version` file is used.
|
|
430
|
+
- The file either have the PHP version as its content, or follow the asdf `.tool-versions` format.
|
|
428
431
|
- If not specified and the default `.php-version` file is not found, the latest stable PHP version is set up.
|
|
429
432
|
|
|
430
433
|
#### `extensions` (optional)
|
|
@@ -443,9 +446,9 @@ Disable coverage for these reasons:
|
|
|
443
446
|
|
|
444
447
|
#### `ini-values` (optional)
|
|
445
448
|
|
|
446
|
-
- Specify the values you want to add to `php.ini`.
|
|
449
|
+
- Specify the values you want to add to `php.ini`.
|
|
447
450
|
- Accepts a `string` in csv-format. For example `post_max_size=256M, max_execution_time=180`.
|
|
448
|
-
- Accepts ini values with commas if wrapped in quotes. For example `xdebug.mode="develop,coverage"`.
|
|
451
|
+
- Accepts ini values with commas if wrapped in quotes. For example `xdebug.mode="develop,coverage"`.
|
|
449
452
|
|
|
450
453
|
#### `coverage` (optional)
|
|
451
454
|
|
|
@@ -577,10 +580,10 @@ steps:
|
|
|
577
580
|
- Production release builds of PHP without debugging symbols are set up by default.
|
|
578
581
|
- You can use the `debug` environment variable to set up a build with debugging symbols for PHP 5.6 and above.
|
|
579
582
|
|
|
580
|
-
|
|
581
|
-
- On Linux, the debug symbols are added as [debug info files](https://sourceware.org/gdb/current/onlinedocs/gdb.html/Separate-Debug-Files.html) in the `/usr/lib/debug/.build-id` directory. These files match the `build-id` in the ELF section of the PHP binaries and debugging tools like `gdb` are able to resolve the symbols from these files.
|
|
582
|
-
- On Windows, the debug symbols are added as `pdb` files in the PHP installation directory.
|
|
583
|
-
- On macOS, the debug symbols are compiled into the binaries.
|
|
583
|
+
> [!NOTE]
|
|
584
|
+
> - On Linux, the debug symbols are added as [debug info files](https://sourceware.org/gdb/current/onlinedocs/gdb.html/Separate-Debug-Files.html) in the `/usr/lib/debug/.build-id` directory. These files match the `build-id` in the ELF section of the PHP binaries and debugging tools like `gdb` are able to resolve the symbols from these files.
|
|
585
|
+
> - On Windows, the debug symbols are added as `pdb` files in the PHP installation directory.
|
|
586
|
+
> - On macOS, the debug symbols are compiled into the binaries.
|
|
584
587
|
|
|
585
588
|
```yaml
|
|
586
589
|
steps:
|
|
@@ -695,10 +698,10 @@ jobs:
|
|
|
695
698
|
runner: self-hosted
|
|
696
699
|
```
|
|
697
700
|
|
|
698
|
-
|
|
699
|
-
- Do not set up multiple self-hosted runners on a single server instance as parallel workflow will conflict with each other.
|
|
700
|
-
- Do not set up self-hosted runners on the side on your development environment or your production server.
|
|
701
|
-
- Avoid using the same labels for your `self-hosted` runners which are used by `GitHub-hosted` runners.
|
|
701
|
+
> [!NOTE]
|
|
702
|
+
> - Do not set up multiple self-hosted runners on a single server instance as parallel workflow will conflict with each other.
|
|
703
|
+
> - Do not set up self-hosted runners on the side on your development environment or your production server.
|
|
704
|
+
> - Avoid using the same labels for your `self-hosted` runners which are used by `GitHub-hosted` runners.
|
|
702
705
|
|
|
703
706
|
### Local Testing Setup
|
|
704
707
|
|
|
@@ -717,7 +720,7 @@ jobs:
|
|
|
717
720
|
|
|
718
721
|
Run the workflow locally with `act` using [`shivammathur/node`](https://github.com/shivammathur/node-docker "Docker image to run setup-php") docker images.
|
|
719
722
|
|
|
720
|
-
Choose the image tag which matches the `runs-on` property in your workflow. For example, if you are using `ubuntu-
|
|
723
|
+
Choose the image tag which matches the `runs-on` property in your workflow. For example, if you are using `ubuntu-22.04` in your workflow, run `act -P ubuntu-22.04=shivammathur/node:2204`.
|
|
721
724
|
|
|
722
725
|
```bash
|
|
723
726
|
# For runs-on: ubuntu-latest
|
|
@@ -728,9 +731,6 @@ act -P ubuntu-24.04=shivammathur/node:2404
|
|
|
728
731
|
|
|
729
732
|
# For runs-on: ubuntu-22.04
|
|
730
733
|
act -P ubuntu-22.04=shivammathur/node:2204
|
|
731
|
-
|
|
732
|
-
# For runs-on: ubuntu-20.04
|
|
733
|
-
act -P ubuntu-20.04=shivammathur/node:2004
|
|
734
734
|
```
|
|
735
735
|
|
|
736
736
|
### JIT Configuration
|
|
@@ -742,7 +742,7 @@ act -P ubuntu-20.04=shivammathur/node:2004
|
|
|
742
742
|
- By default, `opcache.jit=1235` and `opcache.jit_buffer_size=256M` are set which can be changed using `ini-values` input.
|
|
743
743
|
- For detailed information about JIT related directives refer to the [`official PHP documentation`](https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.jit "opcache.jit documentation").
|
|
744
744
|
|
|
745
|
-
For example to enable JIT in `tracing` mode with buffer size of `64 MB`.
|
|
745
|
+
For example to enable JIT in `tracing` mode with buffer size of `64 MB`.
|
|
746
746
|
|
|
747
747
|
```yaml
|
|
748
748
|
- name: Setup PHP with JIT in tracing mode
|
|
@@ -778,9 +778,9 @@ If your project uses composer, you can persist the composer's internal cache dir
|
|
|
778
778
|
run: composer install --prefer-dist
|
|
779
779
|
```
|
|
780
780
|
|
|
781
|
-
|
|
782
|
-
- Please do not cache `vendor` directory using `action/cache` as that will have side effects.
|
|
783
|
-
- If you do not commit `composer.lock`, you can use the hash of `composer.json` as the key for your cache.
|
|
781
|
+
> [!NOTE]
|
|
782
|
+
> - Please do not cache `vendor` directory using `action/cache` as that will have side effects.
|
|
783
|
+
> - If you do not commit `composer.lock`, you can use the hash of `composer.json` as the key for your cache.
|
|
784
784
|
```yaml
|
|
785
785
|
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
|
|
786
786
|
```
|
|
@@ -973,7 +973,7 @@ Examples of using `setup-php` with various PHP frameworks and packages.
|
|
|
973
973
|
|
|
974
974
|
## :scroll: License
|
|
975
975
|
|
|
976
|
-
- The scripts and documentation in this project are under the [MIT License](LICENSE "License for shivammathur/setup-php").
|
|
976
|
+
- The scripts and documentation in this project are under the [MIT License](LICENSE "License for shivammathur/setup-php").
|
|
977
977
|
- This project has multiple [dependencies](#package-dependencies "Dependencies for this PHP Action"). Their licenses can be found in their respective repositories.
|
|
978
978
|
- The logo for `setup-php` is a derivative work of [php.net logo](https://www.php.net/download-logos.php) and is licensed under the [CC BY-SA 4.0 License](https://creativecommons.org/licenses/by-sa/4.0/ "Creative Commons License").
|
|
979
979
|
|
package/lib/extensions.js
CHANGED
|
@@ -57,12 +57,12 @@ async function addExtensionDarwin(extension_csv, version) {
|
|
|
57
57
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
58
58
|
return;
|
|
59
59
|
case /^(7\.4|8\.[0-5])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
60
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
60
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
61
61
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
|
62
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
63
|
-
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-
|
|
62
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
63
|
+
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-4])phalcon5?/.test(version_extension):
|
|
64
64
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
65
|
-
case /^(7\.[0-4]|8\.[0-
|
|
65
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
66
66
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'darwin');
|
|
67
67
|
return;
|
|
68
68
|
case /.+-(stable|beta|alpha|devel|snapshot|rc|preview)/.test(extension):
|
|
@@ -106,13 +106,13 @@ async function addExtensionWindows(extension_csv, version) {
|
|
|
106
106
|
case /^none$/.test(ext_name):
|
|
107
107
|
add_script += '\nDisable-AllShared';
|
|
108
108
|
break;
|
|
109
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
109
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
110
110
|
case /^pdo_oci$|^oci8$|^pdo_firebird$/.test(extension):
|
|
111
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
112
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-
|
|
111
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
112
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-4])phalcon5?$/.test(version_extension):
|
|
113
113
|
case /^(7\.[1-4]|8\.1)(pecl_)?http/.test(version_extension):
|
|
114
114
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
115
|
-
case /^(7\.[0-4]|8\.[0-
|
|
115
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
116
116
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'win32');
|
|
117
117
|
return;
|
|
118
118
|
case /.+-(stable|beta|alpha|devel|snapshot)/.test(extension):
|
|
@@ -173,14 +173,14 @@ async function addExtensionLinux(extension_csv, version) {
|
|
|
173
173
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
174
174
|
return;
|
|
175
175
|
case /^(7\.4|8\.[0-5])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
176
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
176
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
177
177
|
case /^((5\.[3-6])|(7\.[0-2]))pdo_cubrid$|^((5\.[3-6])|(7\.[0-4]))cubrid$/.test(version_extension):
|
|
178
178
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
|
179
179
|
case /(?<!5\.[3-5])intl-\d+\.\d+$/.test(version_extension):
|
|
180
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
181
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-
|
|
180
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
181
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-4])phalcon5?$/.test(version_extension):
|
|
182
182
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
183
|
-
case /^(7\.[0-4]|8\.[0-
|
|
183
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
184
184
|
add_script += await utils.customPackage(ext_name, 'extensions', extension, 'linux');
|
|
185
185
|
return;
|
|
186
186
|
case /.+-(stable|beta|alpha|devel|snapshot|rc|preview)/.test(extension):
|
package/lib/tools.js
CHANGED
|
@@ -320,6 +320,9 @@ async function addPHPUnitTools(data) {
|
|
|
320
320
|
'latest';
|
|
321
321
|
}
|
|
322
322
|
data['url'] = await getPharUrl(data);
|
|
323
|
+
if (data['url'].match(/-\d+/)) {
|
|
324
|
+
data['url'] += ',' + data['url'].replace(/-(\d+)\.\d+\.\d+/, '-$1');
|
|
325
|
+
}
|
|
323
326
|
return await addArchive(data);
|
|
324
327
|
}
|
|
325
328
|
async function addWPCLI(data) {
|
package/lib/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.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.33.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Setup PHP for use with GitHub Actions",
|
|
6
6
|
"main": "lib/install.js",
|
|
@@ -40,26 +40,26 @@
|
|
|
40
40
|
"compare-versions": "^6.1.1"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@eslint/compat": "^1.2.
|
|
44
|
-
"@eslint/js": "9.
|
|
43
|
+
"@eslint/compat": "^1.2.8",
|
|
44
|
+
"@eslint/js": "9.24.0",
|
|
45
45
|
"@types/jest": "^29.5.14",
|
|
46
|
-
"@types/node": "^22.
|
|
47
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
48
|
-
"@typescript-eslint/parser": "^8.
|
|
46
|
+
"@types/node": "^22.14.1",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^8.29.1",
|
|
48
|
+
"@typescript-eslint/parser": "^8.29.1",
|
|
49
49
|
"@vercel/ncc": "^0.38.3",
|
|
50
|
-
"eslint": "9.
|
|
51
|
-
"eslint-config-prettier": "^
|
|
50
|
+
"eslint": "9.24.0",
|
|
51
|
+
"eslint-config-prettier": "^10.1.2",
|
|
52
52
|
"eslint-plugin-import": "^2.31.0",
|
|
53
|
-
"eslint-plugin-jest": "^28.
|
|
54
|
-
"eslint-plugin-prettier": "^5.2.
|
|
55
|
-
"globals": "^
|
|
53
|
+
"eslint-plugin-jest": "^28.11.0",
|
|
54
|
+
"eslint-plugin-prettier": "^5.2.6",
|
|
55
|
+
"globals": "^16.0.0",
|
|
56
56
|
"jest": "^29.7.0",
|
|
57
57
|
"jest-circus": "^29.7.0",
|
|
58
|
-
"nock": "^
|
|
59
|
-
"prettier": "^3.
|
|
60
|
-
"simple-git-hooks": "^2.
|
|
61
|
-
"ts-jest": "^29.
|
|
62
|
-
"typescript": "^5.
|
|
58
|
+
"nock": "^14.0.3",
|
|
59
|
+
"prettier": "^3.5.3",
|
|
60
|
+
"simple-git-hooks": "^2.12.1",
|
|
61
|
+
"ts-jest": "^29.3.1",
|
|
62
|
+
"typescript": "^5.8.3"
|
|
63
63
|
},
|
|
64
64
|
"bugs": {
|
|
65
65
|
"url": "https://github.com/shivammathur/setup-php/issues"
|
package/src/configs/mod_priority
CHANGED
package/src/configs/tools.json
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"composer-dependency-analyser": {
|
|
20
20
|
"type": "composer",
|
|
21
|
-
"repository": "shipmonk
|
|
21
|
+
"repository": "shipmonk/composer-dependency-analyser",
|
|
22
22
|
"scope": "scoped"
|
|
23
23
|
},
|
|
24
24
|
"composer-unused": {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"extension": ".phar",
|
|
36
36
|
"domain": "https://github.com",
|
|
37
37
|
"version_prefix": "",
|
|
38
|
-
"version_parameter": "
|
|
38
|
+
"version_parameter": "diagnose"
|
|
39
39
|
},
|
|
40
40
|
"cs2pr": {
|
|
41
41
|
"type": "phar",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
},
|
|
72
72
|
"php-cs-fixer": {
|
|
73
73
|
"type": "phar",
|
|
74
|
-
"repository": "
|
|
74
|
+
"repository": "PHP-CS-Fixer/PHP-CS-Fixer",
|
|
75
75
|
"extension": ".phar",
|
|
76
76
|
"domain": "https://github.com",
|
|
77
77
|
"fetch_latest": "true",
|
package/src/extensions.ts
CHANGED
|
@@ -32,25 +32,25 @@ export async function addExtensionDarwin(
|
|
|
32
32
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
33
33
|
return;
|
|
34
34
|
// match 7.4relay...8.5relay
|
|
35
|
-
// match 5.3blackfire...8.
|
|
36
|
-
// match 5.3blackfire-(semver)...8.
|
|
35
|
+
// match 5.3blackfire...8.4blackfire
|
|
36
|
+
// match 5.3blackfire-(semver)...8.4blackfire-(semver)
|
|
37
37
|
// match couchbase, event, geos, pdo_oci, oci8, http, pecl_http
|
|
38
|
-
// match 5.3ioncube...8.
|
|
39
|
-
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.
|
|
40
|
-
// match 7.0zephir_parser...8.
|
|
38
|
+
// match 5.3ioncube...8.4ioncube
|
|
39
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.4phalcon5
|
|
40
|
+
// match 7.0zephir_parser...8.4zephir_parser
|
|
41
41
|
case /^(7\.4|8\.[0-5])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
42
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
42
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
43
43
|
version_extension
|
|
44
44
|
):
|
|
45
45
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(
|
|
46
46
|
extension
|
|
47
47
|
):
|
|
48
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
49
|
-
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-
|
|
48
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
49
|
+
case /(5\.6|7\.[0-3])phalcon3|7\.[2-4]phalcon4|(7\.4|8\.[0-4])phalcon5?/.test(
|
|
50
50
|
version_extension
|
|
51
51
|
):
|
|
52
52
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
53
|
-
case /^(7\.[0-4]|8\.[0-
|
|
53
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(
|
|
54
54
|
version_extension
|
|
55
55
|
):
|
|
56
56
|
add_script += await utils.customPackage(
|
|
@@ -134,24 +134,24 @@ export async function addExtensionWindows(
|
|
|
134
134
|
case /^none$/.test(ext_name):
|
|
135
135
|
add_script += '\nDisable-AllShared';
|
|
136
136
|
break;
|
|
137
|
-
// match 5.3blackfire...8.
|
|
138
|
-
// match 5.3blackfire-(semver)...8.
|
|
137
|
+
// match 5.3blackfire...8.4blackfire
|
|
138
|
+
// match 5.3blackfire-(semver)...8.4blackfire-(semver)
|
|
139
139
|
// match pdo_oci and oci8
|
|
140
|
-
// match 5.3ioncube...8.
|
|
141
|
-
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.
|
|
140
|
+
// match 5.3ioncube...8.4ioncube
|
|
141
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.4phalcon5
|
|
142
142
|
// match 7.1pecl_http...8.1pecl_http and 7.1http...8.1http
|
|
143
|
-
// match 7.0zephir_parser...8.
|
|
144
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
143
|
+
// match 7.0zephir_parser...8.4zephir_parser
|
|
144
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
145
145
|
version_extension
|
|
146
146
|
):
|
|
147
147
|
case /^pdo_oci$|^oci8$|^pdo_firebird$/.test(extension):
|
|
148
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
149
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-
|
|
148
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
149
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-4])phalcon5?$/.test(
|
|
150
150
|
version_extension
|
|
151
151
|
):
|
|
152
152
|
case /^(7\.[1-4]|8\.1)(pecl_)?http/.test(version_extension):
|
|
153
153
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
154
|
-
case /^(7\.[0-4]|8\.[0-
|
|
154
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(
|
|
155
155
|
version_extension
|
|
156
156
|
):
|
|
157
157
|
add_script += await utils.customPackage(
|
|
@@ -264,15 +264,15 @@ export async function addExtensionLinux(
|
|
|
264
264
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
265
265
|
return;
|
|
266
266
|
// match 7.4relay...8.5relay
|
|
267
|
-
// match 5.3blackfire...8.
|
|
268
|
-
// match 5.3blackfire-(semver)...8.
|
|
267
|
+
// match 5.3blackfire...8.4blackfire
|
|
268
|
+
// match 5.3blackfire-(semver)...8.4blackfire-(semver)
|
|
269
269
|
// match 5.3pdo_cubrid...7.2php_cubrid, 5.3cubrid...7.4cubrid
|
|
270
270
|
// match couchbase, geos, pdo_oci, oci8, http, pecl_http
|
|
271
|
-
// match 5.3ioncube...8.
|
|
272
|
-
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, 7.4phalcon5...8.
|
|
273
|
-
// match 7.0zephir_parser...8.
|
|
271
|
+
// match 5.3ioncube...8.4ioncube
|
|
272
|
+
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, 7.4phalcon5...8.4phalcon5
|
|
273
|
+
// match 7.0zephir_parser...8.4zephir_parser
|
|
274
274
|
case /^(7\.4|8\.[0-5])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
275
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
275
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
276
276
|
version_extension
|
|
277
277
|
):
|
|
278
278
|
case /^((5\.[3-6])|(7\.[0-2]))pdo_cubrid$|^((5\.[3-6])|(7\.[0-4]))cubrid$/.test(
|
|
@@ -282,12 +282,12 @@ export async function addExtensionLinux(
|
|
|
282
282
|
extension
|
|
283
283
|
):
|
|
284
284
|
case /(?<!5\.[3-5])intl-\d+\.\d+$/.test(version_extension):
|
|
285
|
-
case /^(5\.[3-6]|7\.[0-4]|8\.[0-
|
|
286
|
-
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-
|
|
285
|
+
case /^(5\.[3-6]|7\.[0-4]|8\.[0-4])ioncube$/.test(version_extension):
|
|
286
|
+
case /^7\.[0-3]phalcon3$|^7\.[2-4]phalcon4$|^(7\.4|8\.[0-4])phalcon5?$/.test(
|
|
287
287
|
version_extension
|
|
288
288
|
):
|
|
289
289
|
case /(?<!5\.[3-6])(pdo_)?sqlsrv$/.test(version_extension):
|
|
290
|
-
case /^(7\.[0-4]|8\.[0-
|
|
290
|
+
case /^(7\.[0-4]|8\.[0-4])zephir_parser(-v?\d+\.\d+\.\d+)?$/.test(
|
|
291
291
|
version_extension
|
|
292
292
|
):
|
|
293
293
|
add_script += await utils.customPackage(
|
package/src/scripts/darwin.sh
CHANGED
|
@@ -136,6 +136,10 @@ Function Add-Extension {
|
|
|
136
136
|
{
|
|
137
137
|
$params["Version"] = $extension_version
|
|
138
138
|
}
|
|
139
|
+
# If extension for a different version exists
|
|
140
|
+
if(Test-Path $ext_dir\php_$extension.dll) {
|
|
141
|
+
Move-Item $ext_dir\php_$extension.dll $ext_dir\php_$extension.bak.dll -Force
|
|
142
|
+
}
|
|
139
143
|
Install-PhpExtension @params
|
|
140
144
|
Set-ExtensionPrerequisites $extension
|
|
141
145
|
}
|
|
@@ -23,7 +23,7 @@ add_couchbase_clibs() {
|
|
|
23
23
|
|
|
24
24
|
add_old_libssl() {
|
|
25
25
|
if [[ "$VERSION_ID" = "24.04" ]]; then
|
|
26
|
-
get -q -n /tmp/libssl.deb http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-
|
|
26
|
+
get -q -n /tmp/libssl.deb http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
|
|
27
27
|
[ -e /tmp/libssl.deb ] && sudo dpkg -i /tmp/libssl.deb || add_extension_log "couchbase" "Could not install libssl1.1"
|
|
28
28
|
fi
|
|
29
29
|
}
|
|
@@ -15,6 +15,7 @@ add_firebird_client_darwin() {
|
|
|
15
15
|
add_firebird_helper() {
|
|
16
16
|
firebird_dir=$1
|
|
17
17
|
tag="$(php_src_tag)"
|
|
18
|
+
export PDO_FIREBIRD_CONFIGURE_PREFIX_OPTS="CFLAGS=-Wno-incompatible-function-pointer-types EXTRA_CFLAGS=-Wno-int-conversion"
|
|
18
19
|
export PDO_FIREBIRD_CONFIGURE_OPTS="--with-pdo-firebird=$firebird_dir"
|
|
19
20
|
export PDO_FIREBIRD_LINUX_LIBS="firebird-dev"
|
|
20
21
|
export PDO_FIREBIRD_PATH="ext/pdo_firebird"
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
install_icu() {
|
|
3
3
|
icu=$1
|
|
4
4
|
if [ "$(php -i | grep "ICU version =>" | sed -e "s|.*=> s*||")" != "$icu" ]; then
|
|
5
|
-
get -q -n /tmp/icu.tar.zst "https://github.com/shivammathur/icu-intl/releases/download/icu4c/icu4c-$icu.tar.zst"
|
|
5
|
+
get -q -n /tmp/icu.tar.zst "https://github.com/shivammathur/icu-intl/releases/download/icu4c/icu4c-$icu$arch_suffix.tar.zst"
|
|
6
6
|
sudo tar -I zstd -xf /tmp/icu.tar.zst -C /usr/local
|
|
7
|
-
sudo cp -r /usr/local/icu/lib/* /usr/lib/
|
|
7
|
+
sudo cp -r /usr/local/icu/lib/* /usr/lib/"$(uname -m)"-linux-gnu/
|
|
8
8
|
fi
|
|
9
9
|
}
|
|
10
10
|
|
|
@@ -17,8 +17,11 @@ add_intl() {
|
|
|
17
17
|
else
|
|
18
18
|
[ "${ts:?}" = 'zts' ] && suffix='-zts'
|
|
19
19
|
install_icu "$icu" >/dev/null 2>&1
|
|
20
|
-
get -q -n "${ext_dir:?}/intl.so" "https://github.com/shivammathur/icu-intl/releases/download/intl/php${version:?}-intl-$icu$suffix.so"
|
|
20
|
+
get -q -n "${ext_dir:?}/intl.so" "https://github.com/shivammathur/icu-intl/releases/download/intl/php${version:?}-intl-$icu$suffix$arch_suffix.so"
|
|
21
21
|
enable_extension intl extension
|
|
22
22
|
add_extension_log intl "Installed and enabled with ICU $icu"
|
|
23
23
|
fi
|
|
24
24
|
}
|
|
25
|
+
|
|
26
|
+
arch="$(uname -m)"
|
|
27
|
+
[[ "$arch" = 'arm64' || "$arch" = 'aarch64' ]] && arch_suffix='-arm64' || arch_suffix=''
|
|
@@ -48,6 +48,7 @@ Function Get-Oci8DLL() {
|
|
|
48
48
|
return $_
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
+
return $null
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
# Function to install oci8 and pdo_oci.
|
|
@@ -62,22 +63,17 @@ Function Add-Oci() {
|
|
|
62
63
|
try {
|
|
63
64
|
$status = 'Enabled'
|
|
64
65
|
Add-InstantClient
|
|
65
|
-
if
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
$
|
|
70
|
-
if($oci8DLL) {
|
|
71
|
-
Copy-Item -Path $oci8DLL -Destination $ext_dir\php_oci8.dll
|
|
72
|
-
} else {
|
|
73
|
-
$status = 'Installed and enabled'
|
|
74
|
-
Get-File -Url (Get-Oci8Url) -OutFile $php_dir\oci8.zip
|
|
75
|
-
Expand-Archive -Path $php_dir\oci8.zip -DestinationPath $ext_dir -Force
|
|
76
|
-
}
|
|
66
|
+
if($version -lt '8.4') {
|
|
67
|
+
if($version -lt '5.6' -and $extension -eq 'oci8') {
|
|
68
|
+
Add-Content -Value "`r`nextension=php_oci8.dll" -Path $php_dir\php.ini
|
|
69
|
+
} else {
|
|
70
|
+
Enable-PhpExtension $extension -Path $php_dir
|
|
77
71
|
}
|
|
78
|
-
|
|
72
|
+
} else {
|
|
73
|
+
$status = 'Installed and enabled'
|
|
74
|
+
Add-Extension $extension >$null 2>&1
|
|
79
75
|
}
|
|
80
|
-
Add-
|
|
76
|
+
Add-ExtensionLog $extension $status
|
|
81
77
|
Add-LicenseLog
|
|
82
78
|
} catch {
|
|
83
79
|
Add-Log $cross $extension "Could not install $extension on PHP $( $installed.FullVersion )"
|
|
@@ -11,28 +11,36 @@ add_license_log() {
|
|
|
11
11
|
add_client() {
|
|
12
12
|
if [ ! -e "$oracle_client" ]; then
|
|
13
13
|
sudo mkdir -p -m 777 "$oracle_home" "$oracle_client"
|
|
14
|
+
arch="$(uname -m)"
|
|
14
15
|
for package in basiclite sdk; do
|
|
15
16
|
if [ "$os" = 'Linux' ]; then
|
|
16
17
|
libs='/usr/lib/'
|
|
17
18
|
os_name='linux'
|
|
18
|
-
arch='linuxx64'
|
|
19
|
+
[[ "$arch" = 'arm64' || "$arch" = 'aarch64' ]] && arch_suffix='linux-arm64' || arch_suffix='linuxx64'
|
|
19
20
|
lib_ext='so'
|
|
20
21
|
elif [ "$os" = 'Darwin' ]; then
|
|
21
22
|
libs='/usr/local/lib/'
|
|
22
23
|
os_name='mac'
|
|
23
|
-
|
|
24
|
+
arch_suffix='macos'
|
|
24
25
|
lib_ext='dylib'
|
|
25
26
|
fi
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
if [[ "$os" = 'Darwin' && ("$arch" = 'arm64' || "$arch" = 'aarch64') ]]; then
|
|
28
|
+
get -q -n "/opt/oracle/$package.dmg" "https://download.oracle.com/otn_software/$os_name/instantclient/instantclient-$package-macos-arm64.dmg"
|
|
29
|
+
sudo hdiutil attach "/opt/oracle/$package.dmg"
|
|
30
|
+
(cd /Volumes/instantclient-"$package"-macos.arm64-* && bash install_ic.sh)
|
|
31
|
+
sudo cp -a ~/Downloads/instantclient_* /opt/oracle/
|
|
32
|
+
else
|
|
33
|
+
get -q -n "/opt/oracle/$package.zip" "https://download.oracle.com/otn_software/$os_name/instantclient/instantclient-$package-$arch_suffix.zip"
|
|
34
|
+
unzip -o "/opt/oracle/$package.zip" -d "$oracle_home"
|
|
35
|
+
fi
|
|
28
36
|
done
|
|
29
37
|
for icdir in /opt/oracle/instantclient_*; do
|
|
30
38
|
sudo mv "$icdir"/* "$oracle_client"/
|
|
31
39
|
done
|
|
40
|
+
sudo mkdir -p "$libs"
|
|
32
41
|
sudo ln -sf /opt/oracle/instantclient/*.$lib_ext* $libs
|
|
33
42
|
if [ "$os" = "Linux" ]; then
|
|
34
|
-
arch
|
|
35
|
-
[ -e "$libs/$arch"-linux-gnu/libaio.so.1t64 ] && sudo ln -sf "$libs/$arch"-linux-gnu/libaio.so.1t64 "$libs/$arch"-linux-gnu/libaio.so.1
|
|
43
|
+
[ -e "$libs/$arch"-linux-gnu/libaio.so.1 ] || sudo ln -sf "$libs/$arch"-linux-gnu/libaio.so.1t64 "$libs/$arch"-linux-gnu/libaio.so.1
|
|
36
44
|
fi
|
|
37
45
|
fi
|
|
38
46
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
process_file() {
|
|
2
2
|
local file=$1
|
|
3
|
-
sed -i '0,/#include.*\(php_lcg.h\|php_mt_rand.h\|php_rand.h\|standard\/php_random\.h\).*/s//\#include <ext\/random\/php_random.h>/' "$file"
|
|
4
|
-
sed -i '/#include.*\(php_lcg.h\|php_mt_rand.h\|php_rand.h\|standard\/php_random\.h\)/d' "$file"
|
|
3
|
+
sed -i'' -e '0,/#include.*\(php_lcg.h\|php_mt_rand.h\|php_rand.h\|standard\/php_random\.h\).*/s//\#include <ext\/random\/php_random.h>/' "$file"
|
|
4
|
+
sed -i'' -e '/#include.*\(php_lcg.h\|php_mt_rand.h\|php_rand.h\|standard\/php_random\.h\)/d' "$file"
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export -f process_file
|
|
@@ -80,9 +80,9 @@ Function Get-PhalconSemver() {
|
|
|
80
80
|
# Function to install phalcon
|
|
81
81
|
Function Add-PhalconHelper() {
|
|
82
82
|
$semver = Get-PhalconSemver
|
|
83
|
-
if (
|
|
83
|
+
if ($extension_version -eq '3') {
|
|
84
84
|
Add-PhalconFromGitHub $semver
|
|
85
|
-
}
|
|
85
|
+
} else {
|
|
86
86
|
Add-Extension -Extension phalcon -Stability stable -Extension_version $semver
|
|
87
87
|
}
|
|
88
88
|
}
|
|
@@ -48,6 +48,14 @@ change_library_paths() {
|
|
|
48
48
|
fi
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
# Link hiredis library
|
|
52
|
+
link_hiredis() {
|
|
53
|
+
lib_dir="${brew_prefix:?}"/opt/hiredis/lib
|
|
54
|
+
if [ -e "$lib_dir"/libhiredis_ssl.1.1.0.dylib ]; then
|
|
55
|
+
sudo ln -sf "$lib_dir"/libhiredis_ssl.1.1.0.dylib "$lib_dir"/libhiredis_ssl.dylib.1.1.0
|
|
56
|
+
fi
|
|
57
|
+
}
|
|
58
|
+
|
|
51
59
|
# Add relay dependencies
|
|
52
60
|
add_relay_dependencies() {
|
|
53
61
|
add_extension json
|
|
@@ -57,6 +65,7 @@ add_relay_dependencies() {
|
|
|
57
65
|
. "${0%/*}"/tools/brew.sh
|
|
58
66
|
configure_brew
|
|
59
67
|
brew install hiredis lz4 zstd concurrencykit
|
|
68
|
+
link_hiredis
|
|
60
69
|
fi
|
|
61
70
|
}
|
|
62
71
|
|
|
@@ -152,7 +152,7 @@ add_extension_from_source() {
|
|
|
152
152
|
patch_extension "$extension" >/dev/null 2>&1
|
|
153
153
|
run_group "phpize" "phpize"
|
|
154
154
|
run_group "sudo $prefix_opts ./configure $suffix_opts $opts" "configure"
|
|
155
|
-
run_group "sudo make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu)" "make"
|
|
155
|
+
run_group "sudo $prefix_opts make -j$(nproc 2>/dev/null || sysctl -n hw.ncpu)" "make"
|
|
156
156
|
run_group "sudo make install" "make install"
|
|
157
157
|
enable_extension "$extension" "$prefix"
|
|
158
158
|
fi
|
|
@@ -31,6 +31,9 @@ Function Get-ZephirParserVersion() {
|
|
|
31
31
|
$repo = 'zephir-lang/php-zephir-parser'
|
|
32
32
|
$zp_releases = "$github/$repo/releases"
|
|
33
33
|
if($extension -eq 'zephir_parser') {
|
|
34
|
+
if($version -lt '7.2') {
|
|
35
|
+
return 'v1.6.1'
|
|
36
|
+
}
|
|
34
37
|
return (Get-File -Url $zp_releases/latest).BaseResponse.RequestMessage.RequestUri.Segments[-1]
|
|
35
38
|
} else {
|
|
36
39
|
return 'v' + ($extension.split('-')[1] -replace 'v')
|
|
@@ -71,10 +74,14 @@ Function Add-ZephirParser() {
|
|
|
71
74
|
Enable-PhpExtension -Extension zephir_parser -Path $php_dir
|
|
72
75
|
} else {
|
|
73
76
|
$status = 'Installed and enabled'
|
|
74
|
-
|
|
77
|
+
try {
|
|
78
|
+
Add-ZephirParserFromGitHub $extension
|
|
79
|
+
} catch {
|
|
80
|
+
Add-Extension $extension >$null 2>&1
|
|
81
|
+
}
|
|
75
82
|
}
|
|
76
83
|
Add-ExtensionLog zephir_parser $status
|
|
77
84
|
} catch {
|
|
78
85
|
Add-Log $cross $extension "Could not install $extension on PHP $($installed.FullVersion)"
|
|
79
86
|
}
|
|
80
|
-
}
|
|
87
|
+
}
|
|
@@ -17,9 +17,13 @@ add_zephir_parser_helper() {
|
|
|
17
17
|
[ "$(uname -s)" = "Linux" ] && os_suffix=ubuntu || os_suffix=macos
|
|
18
18
|
build_name=$(get -s -n "" https://api.github.com/repos/"$repo"/releases/tags/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}-$nts-$os_suffix-.*.zip" | head -n 1)
|
|
19
19
|
[ -z "$build_name" ] && build_name=$(get -s -n "" "$zp_releases"/expanded_assets/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}-$nts-$os_suffix-.*.zip" | head -n 1)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
if [ -n "$build_name" ]; then
|
|
21
|
+
get -q -e "/tmp/zp.zip" "$zp_releases"/download/"$ext_version"/"$build_name"
|
|
22
|
+
sudo unzip -o "/tmp/zp.zip" -d "${ext_dir:?}"
|
|
23
|
+
enable_extension zephir_parser extension
|
|
24
|
+
else
|
|
25
|
+
pecl_install zephir_parser
|
|
26
|
+
fi
|
|
23
27
|
}
|
|
24
28
|
|
|
25
29
|
# Add zephir_parser
|
package/src/scripts/linux.sh
CHANGED
|
@@ -9,7 +9,13 @@ Function Add-Msys2() {
|
|
|
9
9
|
|
|
10
10
|
Function Add-GrpcPhpPlugin() {
|
|
11
11
|
$msys_location = Add-Msys2
|
|
12
|
-
$
|
|
12
|
+
$arch = arch
|
|
13
|
+
if($arch -eq 'arm64' -or $arch -eq 'aarch64') {
|
|
14
|
+
$grpc_package = 'mingw-w64-clang-aarch64-grpc'
|
|
15
|
+
} else {
|
|
16
|
+
$grpc_package = 'mingw-w64-x86_64-grpc'
|
|
17
|
+
}
|
|
18
|
+
$logs = . $msys_location\usr\bin\bash -l -c "pacman -S --noconfirm $grpc_package" >$null 2>&1
|
|
13
19
|
$grpc_version = Get-ToolVersion 'Write-Output' "$logs"
|
|
14
20
|
Add-Path $msys_location\mingw64\bin
|
|
15
21
|
Set-Output grpc_php_plugin_path "$msys_location\mingw64\bin\grpc_php_plugin.exe"
|
package/src/scripts/tools/ppa.sh
CHANGED
|
@@ -67,7 +67,7 @@ update_lists() {
|
|
|
67
67
|
# Function to get fingerprint from an Ubuntu PPA.
|
|
68
68
|
ubuntu_fingerprint() {
|
|
69
69
|
ppa=$1
|
|
70
|
-
get -s -n "" "$lp_api
|
|
70
|
+
get -s -n "" "${lp_api[@]/%//~${ppa%/*}/+archive/${ppa##*/}}" | jq -r '.signing_key_fingerprint'
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
# Function to get fingerprint from a Debian PPA.
|
|
@@ -88,7 +88,7 @@ add_key() {
|
|
|
88
88
|
key_source=$4
|
|
89
89
|
key_file=$5
|
|
90
90
|
key_urls=("$key_source")
|
|
91
|
-
if [[ "$key_source" =~
|
|
91
|
+
if [[ "$key_source" =~ launchpadcontent.net|debian.org ]]; then
|
|
92
92
|
fingerprint="$("${ID}"_fingerprint "$ppa" "$ppa_url" "$package_dist")"
|
|
93
93
|
sks_params="op=get&options=mr&exact=on&search=0x$fingerprint"
|
|
94
94
|
key_urls=("${sks[@]/%/\/pks\/lookup\?"$sks_params"}")
|
|
@@ -117,7 +117,7 @@ check_lists() {
|
|
|
117
117
|
# Function to add a sources list.
|
|
118
118
|
add_list() {
|
|
119
119
|
ppa=${1-ondrej/php}
|
|
120
|
-
ppa_url=${2:-"$
|
|
120
|
+
ppa_url=${2:-"$lpc_ppa/$ppa/ubuntu"}
|
|
121
121
|
key_source=${3:-"$ppa_url"}
|
|
122
122
|
package_dist=${4:-"$VERSION_CODENAME"}
|
|
123
123
|
branches=${5:-main}
|
|
@@ -139,7 +139,7 @@ add_list() {
|
|
|
139
139
|
# Function to check if a PPA exists
|
|
140
140
|
check_ppa() {
|
|
141
141
|
ppa=$1
|
|
142
|
-
ppa_url=${2:-"$
|
|
142
|
+
ppa_url=${2:-"$lpc_ppa/$ppa/ubuntu"}
|
|
143
143
|
package_dist=${3:-"$VERSION_CODENAME"}
|
|
144
144
|
branches=${4:-main}
|
|
145
145
|
ppa_search="deb .*$ppa_url $package_dist .*$branches$"
|
|
@@ -163,7 +163,7 @@ remove_list() {
|
|
|
163
163
|
# Function to check if ubuntu ppa is up
|
|
164
164
|
is_ubuntu_ppa_up() {
|
|
165
165
|
ppa=${1:-ondrej/php}
|
|
166
|
-
curl -s --connect-timeout 5 --max-time 5 --head --fail "$
|
|
166
|
+
curl -s --connect-timeout 5 --max-time 5 --head --fail "$lpc_ppa/$ppa/ubuntu/dists/$VERSION_CODENAME/Release" > /dev/null
|
|
167
167
|
}
|
|
168
168
|
|
|
169
169
|
# Function to add the PPA mirror.
|
|
@@ -181,7 +181,7 @@ add_ppa() {
|
|
|
181
181
|
ppa=${1:-ondrej/php}
|
|
182
182
|
if [[ "$ID" = "ubuntu" || "$ID_LIKE" =~ ubuntu ]] && [[ "$ppa" =~ "ondrej/" ]]; then
|
|
183
183
|
if is_ubuntu_ppa_up "$ppa" ; then
|
|
184
|
-
[ "${debug:?}" = "debug" ] && add_list "$ppa" "$
|
|
184
|
+
[ "${debug:?}" = "debug" ] && add_list "$ppa" "$lpc_ppa/$ppa/ubuntu" "$lpc_ppa/$ppa/ubuntu" "$VERSION_CODENAME" "main/debug"
|
|
185
185
|
add_list "$ppa"
|
|
186
186
|
else
|
|
187
187
|
add_ppa_sp_mirror "$ppa"
|
|
@@ -201,7 +201,7 @@ add_ppa() {
|
|
|
201
201
|
update_ppa() {
|
|
202
202
|
set_base_version
|
|
203
203
|
ppa=${1:-ondrej/php}
|
|
204
|
-
ppa_url=${2:-"$
|
|
204
|
+
ppa_url=${2:-"$lpc_ppa/$ppa/ubuntu"}
|
|
205
205
|
package_dist=${4:-"$VERSION_CODENAME"}
|
|
206
206
|
branches=${5:-main}
|
|
207
207
|
ppa_search="deb .*$ppa_url $package_dist .*$branches"
|
|
@@ -214,7 +214,10 @@ list_dir='/etc/apt/sources.list.d'
|
|
|
214
214
|
list_file="/etc/apt/sources.list.d/$ID.sources"
|
|
215
215
|
[ -e "$list_file" ] || list_file='/etc/apt/sources.list'
|
|
216
216
|
upstream_lsb='/etc/upstream-release/lsb-release'
|
|
217
|
-
lp_api=
|
|
217
|
+
lp_api=(
|
|
218
|
+
'https://api.launchpad.net/1.0'
|
|
219
|
+
'https://api.launchpad.net/devel'
|
|
220
|
+
)
|
|
218
221
|
lp_ppa='http://ppa.launchpad.net'
|
|
219
222
|
lpc_ppa='https://ppa.launchpadcontent.net'
|
|
220
223
|
key_dir='/usr/share/keyrings'
|
|
@@ -17,7 +17,9 @@ add_protoc() {
|
|
|
17
17
|
(
|
|
18
18
|
platform='linux'
|
|
19
19
|
[ "$(uname -s)" = "Darwin" ] && platform='osx'
|
|
20
|
-
|
|
20
|
+
arch="$(uname -m)"
|
|
21
|
+
[[ "$arch" = 'arm64' || "$arch" = 'aarch64' ]] && arch='aarch_64'
|
|
22
|
+
get -q -n /tmp/protobuf.zip "https://github.com/protocolbuffers/protobuf/releases/download/$protobuf_tag/protoc-${protobuf_tag:1}-$platform-$arch.zip"
|
|
21
23
|
sudo unzip /tmp/protobuf.zip -d /usr/local/
|
|
22
24
|
sudo chmod -R 777 /usr/local/bin/protoc /usr/local/include/google
|
|
23
25
|
) >/dev/null 2>&1
|
package/src/scripts/unix.sh
CHANGED
|
@@ -55,6 +55,7 @@ read_env() {
|
|
|
55
55
|
fail_fast="${fail_fast:-${FAIL_FAST:-false}}"
|
|
56
56
|
[[ -z "${ImageOS}" && -z "${ImageVersion}" || -n ${ACT} ]] && _runner=self-hosted || _runner=github
|
|
57
57
|
runner="${runner:-${RUNNER:-$_runner}}"
|
|
58
|
+
tool_path_dir="${tools_dir:-${TOOLS_DIR:-/usr/local/bin}}"
|
|
58
59
|
|
|
59
60
|
if [[ "$runner" = "github" && $_runner = "self-hosted" ]]; then
|
|
60
61
|
fail_fast=true
|
|
@@ -75,6 +76,33 @@ read_env() {
|
|
|
75
76
|
export runner
|
|
76
77
|
export update
|
|
77
78
|
export ts
|
|
79
|
+
export tools_dir_path
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
# Function to create a lock.
|
|
83
|
+
acquire_lock() {
|
|
84
|
+
lock_path="$1"
|
|
85
|
+
while true; do
|
|
86
|
+
if sudo mkdir "$lock_path" 2>/dev/null; then
|
|
87
|
+
echo $$ | sudo tee "$lock_path/pid" >/dev/null
|
|
88
|
+
return 0
|
|
89
|
+
else
|
|
90
|
+
if sudo test -f "$lock_path/pid"; then
|
|
91
|
+
lock_pid=$(sudo cat "$lock_path/pid")
|
|
92
|
+
if ! ps -p "$lock_pid" >/dev/null 2>&1; then
|
|
93
|
+
sudo rm -rf "$lock_path"
|
|
94
|
+
continue
|
|
95
|
+
fi
|
|
96
|
+
fi
|
|
97
|
+
sleep 1
|
|
98
|
+
fi
|
|
99
|
+
done
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
# Function to release the lock.
|
|
103
|
+
release_lock() {
|
|
104
|
+
lock_path="$1"
|
|
105
|
+
sudo rm -rf "$lock_path"
|
|
78
106
|
}
|
|
79
107
|
|
|
80
108
|
# Function to download a file using cURL.
|
|
@@ -89,23 +117,23 @@ get() {
|
|
|
89
117
|
if [ "$mode" = "-s" ]; then
|
|
90
118
|
sudo curl "${curl_opts[@]}" "${links[0]}"
|
|
91
119
|
else
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
120
|
+
if [ "$runner" = "self-hosted" ]; then
|
|
121
|
+
lock_path="$file_path.lock"
|
|
122
|
+
acquire_lock "$lock_path"
|
|
123
|
+
if [ "$execute" = "-e" ]; then
|
|
124
|
+
until [ -z "$(fuser "$file_path" 2>/dev/null)" ]; do
|
|
125
|
+
sleep 1
|
|
126
|
+
done
|
|
127
|
+
fi
|
|
128
|
+
trap 'release_lock "$lock_path"' EXIT SIGINT SIGTERM
|
|
100
129
|
fi
|
|
101
|
-
trap 'sudo rm -rf "$lock_path"' EXIT SIGINT SIGTERM
|
|
102
130
|
for link in "${links[@]}"; do
|
|
103
131
|
status_code=$(sudo curl -w "%{http_code}" -o "$file_path" "${curl_opts[@]}" "$link")
|
|
104
132
|
[ "$status_code" = "200" ] && break
|
|
105
133
|
done
|
|
106
134
|
[ "$execute" = "-e" ] && sudo chmod a+x "$file_path"
|
|
107
135
|
[ "$mode" = "-v" ] && echo "$status_code"
|
|
108
|
-
|
|
136
|
+
[ "$runner" = "self-hosted" ] && release_lock "$lock_path"
|
|
109
137
|
fi
|
|
110
138
|
}
|
|
111
139
|
|
package/src/tools.ts
CHANGED
|
@@ -422,6 +422,9 @@ export async function addPHPUnitTools(data: RS): Promise<string> {
|
|
|
422
422
|
'latest';
|
|
423
423
|
}
|
|
424
424
|
data['url'] = await getPharUrl(data);
|
|
425
|
+
if (data['url'].match(/-\d+/)) {
|
|
426
|
+
data['url'] += ',' + data['url'].replace(/-(\d+)\.\d+\.\d+/, '-$1');
|
|
427
|
+
}
|
|
425
428
|
return await addArchive(data);
|
|
426
429
|
}
|
|
427
430
|
|