From 40fcbf4422fad135e1dac1430ef9e95b7f1c51a7 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Thu, 25 Sep 2025 00:01:42 +0100 Subject: [PATCH 01/34] #160 - Enable PHP8.5 support --- .github/workflows/ci.yml | 6 ++++-- CHANGELOG.md | 4 ++++ VERSION | 2 +- package.xml | 12 ++++++------ 4 files changed, 15 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ef12f04..622e1f3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: strategy: fail-fast: false matrix: - php: [ '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4' ] + php: [ '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5' ] ts: [ 'ts', 'nts' ] arch: [ 'x64' ] @@ -64,6 +64,8 @@ jobs: - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } #- { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } #- { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } steps: - uses: actions/checkout@v4 @@ -195,7 +197,7 @@ jobs: - name: Install PHP uses: shivammathur/setup-php@v2 with: - php-version: '8.4' + php-version: '8.5' tools: pecl - name: Install System Dependencies diff --git a/CHANGELOG.md b/CHANGELOG.md index a995760..666e67d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] - xxxx-xx-xx +## [1.8.0] - 2025-09-24 +### Added +- Enabled PHP 8.5 support [#160](https://github.com/phalcon/php-zephir-parser/issues/160) + ## [1.7.0] - 2024-11-23 ### Added - Enabled PHP 8.4 support [#154](https://github.com/phalcon/php-zephir-parser/issues/154) diff --git a/VERSION b/VERSION index bd8bf88..27f9cd3 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.7.0 +1.8.0 diff --git a/package.xml b/package.xml index 84f2965..3a83c31 100644 --- a/package.xml +++ b/package.xml @@ -12,11 +12,11 @@ anton@phalcon.io yes - 2024-11-23 + 2025-09-24 - 1.7.0 - 1.7.0 + 1.8.0 + 1.8.0 stable @@ -24,11 +24,11 @@ MIT - Sat, Nov 23, 2024 - Zephir Parser 1.7.0 + Wed, Sep 24, 2025 - Zephir Parser 1.8.0 = Added: - - Enabled support for PHP 8.4 + - Enabled support for PHP 8.5 @@ -215,7 +215,7 @@ 7.0.0 - 8.4.99 + 8.5.99 1.10 From b56d4c5c3467f50d74da7eaf121b02846c2dfbb9 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Thu, 25 Sep 2025 00:07:07 +0100 Subject: [PATCH 02/34] Disable 'schedule' trigger --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 622e1f3..d5dbc83 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,8 +8,8 @@ name: Zephir Parser CI on: - schedule: - - cron: '0 2 * * *' # Daily at 02:00 runs only on default branch +# schedule: +# - cron: '0 2 * * *' # Daily at 02:00 runs only on default branch push: paths-ignore: - '**.md' From 54a218f9b0950309bd4a8c43d5ce98cab89275d6 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Thu, 25 Sep 2025 00:08:57 +0100 Subject: [PATCH 03/34] #160 - Update macOS version in CI configuration to 13 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d5dbc83..664afc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,7 @@ jobs: # Linux - { name: ubuntu-gcc, os: ubuntu-latest, compiler: gcc, ccov: 'ON' } # macOS - - { name: macos-clang, os: macos-12, compiler: clang, ccov: 'OFF' } + - { name: macos-clang, os: macos-13, compiler: clang, ccov: 'OFF' } # Windows - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } From 9430f4f3541291001762eaa1db32e303f3ba05b8 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Thu, 25 Sep 2025 08:43:28 +0100 Subject: [PATCH 04/34] #160 - Update macOS version in CI configuration to 14 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 664afc1..6106ee8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,7 @@ jobs: # Linux - { name: ubuntu-gcc, os: ubuntu-latest, compiler: gcc, ccov: 'ON' } # macOS - - { name: macos-clang, os: macos-13, compiler: clang, ccov: 'OFF' } + - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } From f471c5302e7afb7edcc3928892e575bd80d1f88a Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:10:21 +0100 Subject: [PATCH 05/34] #160 - Adjust test case --- tests/base/extension_info.phpt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index e74f66a..af3f6ec 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -21,7 +21,7 @@ ob_start(); phpinfo(INFO_MODULES); $info = trim(ob_get_clean()); -echo contains($info, 'Zephir Parser').PHP_EOL; +echo contains($info, 'zephir_parser').PHP_EOL; echo contains($info, 'The Zephir Parser delivered as a C extension for the PHP language.').PHP_EOL; echo contains($info, 'zephir_parser => enabled').PHP_EOL; echo contains($info, 'Author => Zephir Team and contributors').PHP_EOL; From 09a13fcb9ead155a19ebba487996d400882987f8 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:13:44 +0100 Subject: [PATCH 06/34] #160 - Adjust test case --- tests/base/extension_info.phpt | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index af3f6ec..1213fd0 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -31,6 +31,7 @@ echo contains($info, 'Build Date =>').PHP_EOL; --EXPECT-- bool(true) Zephir Parser + The Zephir Parser delivered as a C extension for the PHP language. zephir_parser => enabled Author => Zephir Team and contributors From 66cd9c1f9a5547730841d68d855ee1ce542f86b9 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:17:49 +0100 Subject: [PATCH 07/34] #160 - Adjust test case --- tests/base/extension_info.phpt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index 1213fd0..6729776 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -30,8 +30,7 @@ echo contains($info, 'Build Date =>').PHP_EOL; ?> --EXPECT-- bool(true) -Zephir Parser - +zephir_parser The Zephir Parser delivered as a C extension for the PHP language. zephir_parser => enabled Author => Zephir Team and contributors From f0f85c4ef2aae8b05443c9a463334b5cfda3e68d Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:20:47 +0100 Subject: [PATCH 08/34] #160 - Adjust test case --- tests/base/extension_info.phpt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index 6729776..8254c68 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -21,7 +21,7 @@ ob_start(); phpinfo(INFO_MODULES); $info = trim(ob_get_clean()); -echo contains($info, 'zephir_parser').PHP_EOL; +//echo contains($info, 'zephir_parser').PHP_EOL; echo contains($info, 'The Zephir Parser delivered as a C extension for the PHP language.').PHP_EOL; echo contains($info, 'zephir_parser => enabled').PHP_EOL; echo contains($info, 'Author => Zephir Team and contributors').PHP_EOL; @@ -30,7 +30,6 @@ echo contains($info, 'Build Date =>').PHP_EOL; ?> --EXPECT-- bool(true) -zephir_parser The Zephir Parser delivered as a C extension for the PHP language. zephir_parser => enabled Author => Zephir Team and contributors From d3386b8abdf641fde7c3a81cdd4eaa1e3905fe2d Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:27:35 +0100 Subject: [PATCH 09/34] #160 - Adjust path in test --- tests/base/extension_info.phpt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index 8254c68..0129038 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -12,7 +12,7 @@ function contains($input, $expected) { } $version = phpversion('zephir_parser'); -$actual = trim(file_get_contents(__DIR__ . '/../../VERSION')); +$actual = trim(file_get_contents(__DIR__ . '/VERSION')); $compare = $version === $actual; var_dump($compare); From d71ce1fd86db247443eb45ca2c23569d33878f70 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 15:56:39 +0100 Subject: [PATCH 10/34] #160 - Revert version --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 27f9cd3..bd8bf88 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.8.0 +1.7.0 From d08128c5101c45fa1d4ab193208563e1d225f48b Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Thu, 25 Sep 2025 16:09:47 +0100 Subject: [PATCH 11/34] #160 - Revert version path --- tests/base/extension_info.phpt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/base/extension_info.phpt b/tests/base/extension_info.phpt index 0129038..8254c68 100644 --- a/tests/base/extension_info.phpt +++ b/tests/base/extension_info.phpt @@ -12,7 +12,7 @@ function contains($input, $expected) { } $version = phpversion('zephir_parser'); -$actual = trim(file_get_contents(__DIR__ . '/VERSION')); +$actual = trim(file_get_contents(__DIR__ . '/../../VERSION')); $compare = $version === $actual; var_dump($compare); From 427edfa09988fb992a42ec8ad69174c1e6bd082f Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 15:36:54 +0100 Subject: [PATCH 12/34] #160 - Replace `windows-2019` to `windows-2022` image --- .github/workflows/ci.yml | 44 ++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6106ee8..5a1deae 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,28 +44,28 @@ jobs: # macOS - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2019', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2019', compiler: 'vc15', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2019', compiler: 'vs16', ccov: 'OFF' } + - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } + - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } + - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } + - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } + - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + #- { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } steps: - uses: actions/checkout@v4 From 207c810fb59a176b50295aa7aa56b08481af46f0 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 15:58:09 +0100 Subject: [PATCH 13/34] #160 - Fix warning --- parser/lemon.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/parser/lemon.c b/parser/lemon.c index 7562bde..5d416df 100644 --- a/parser/lemon.c +++ b/parser/lemon.c @@ -41,7 +41,6 @@ extern int access(const char *path, int mode); #endif char *msort(); -extern void *malloc(); /******** From the file "action.h" *************************************/ struct action *Action_new(); @@ -305,7 +304,7 @@ struct symbol *Symbol_new(); int Symbolcmpp(/* struct symbol **, struct symbol ** */); void Symbol_init(/* void */); int Symbol_insert(/* struct symbol *, char * */); -struct symbol *Symbol_find(/* char * */); +struct symbol *Symbol_find(char *key); /* modern prototype to satisfy C2x */ struct symbol *Symbol_Nth(/* int */); int Symbol_count(/* */); struct symbol **Symbol_arrayof(/* */); @@ -3620,7 +3619,7 @@ int mhflag; /* Output in makeheaders format if true */ } tplt_xfer(lemp->name,in,out,&lineno); - /* Generate code which executes every time a symbol is popped from + /* Generate code which executes when a symbol is popped from ** the stack while processing errors or while destroying the parser. ** (In other words, generate the %destructor actions) */ @@ -3729,7 +3728,7 @@ void ReportHeader(lemp) struct lemon *lemp; { FILE *out, *in; - char *prefix; + char *prefix; char line[LINESIZE]; char pattern[LINESIZE]; int i; @@ -4181,8 +4180,7 @@ char *key; /* Return a pointer to data assigned to the given key. Return NULL ** if no such key. */ -struct symbol *Symbol_find(key) -char *key; +struct symbol *Symbol_find(char *key) { int h; x2node *np; From 99a28f9a709de9c4377165fe2c4147ae63506b65 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:02:33 +0100 Subject: [PATCH 14/34] #160 - Add debug command --- .github/actions/build-mac/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/build-mac/action.yml b/.github/actions/build-mac/action.yml index 770222f..5095868 100644 --- a/.github/actions/build-mac/action.yml +++ b/.github/actions/build-mac/action.yml @@ -37,6 +37,7 @@ runs: - name: Enable Zephir Parser shell: bash run: | + php --ini cp ./modules/zephir_parser.so "$(php -r 'echo ini_get("extension_dir");')/zephir_parser.so" if [ "${{ matrix.ts }}" = "ts" ]; then echo "extension=zephir_parser.so" > /usr/local/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini From a6185f68511d00d3366aef43ceb89526822fd927 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:06:57 +0100 Subject: [PATCH 15/34] #160 - Change PHP path in MacOS (homebrew) --- .github/actions/build-mac/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/build-mac/action.yml b/.github/actions/build-mac/action.yml index 5095868..cf58eb6 100644 --- a/.github/actions/build-mac/action.yml +++ b/.github/actions/build-mac/action.yml @@ -40,7 +40,7 @@ runs: php --ini cp ./modules/zephir_parser.so "$(php -r 'echo ini_get("extension_dir");')/zephir_parser.so" if [ "${{ matrix.ts }}" = "ts" ]; then - echo "extension=zephir_parser.so" > /usr/local/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini + echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini else - echo "extension=zephir_parser.so" > /usr/local/etc/php/${{ matrix.php }}/conf.d/ext-zephir_parser.ini + echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}/conf.d/ext-zephir_parser.ini fi From c3e72d0b984d0c89a15bd7934793ef1765d511f2 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:07:52 +0100 Subject: [PATCH 16/34] #160 - Remove pull_request trigger from CI configuration --- .github/workflows/ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5a1deae..4affd48 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,6 @@ on: paths-ignore: - '**.md' - '**.txt' - pull_request: env: RE2C_VERSION: 2.2 From d2032c953c9721b87053f48a8db943e7f18b1e03 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:13:12 +0100 Subject: [PATCH 17/34] #160 - Review Windows server Visual studio versions --- .github/workflows/ci.yml | 44 ++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4affd48..2f49f12 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,28 +43,28 @@ jobs: # macOS - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2019-vc14', os: 'windows-2022', compiler: 'vc14', ccov: 'OFF' } - - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2019-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - #- { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2019-vs16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } steps: - uses: actions/checkout@v4 From 2fad272dc2e0bcb4edcb1784f5e232ef097e3779 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:25:44 +0100 Subject: [PATCH 18/34] #160 - Review Windows server Visual studio versions --- .github/workflows/ci.yml | 44 ++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2f49f12..66f0fd2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,28 +43,28 @@ jobs: # macOS - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } - - { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } + - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } + - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } + - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } + - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } + - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } + - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } + - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } + - { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', ccov: 'OFF' } + - { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', ccov: 'OFF' } +# - { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } +# - { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } steps: - uses: actions/checkout@v4 From 894b6813b6cfb8e3b09add19be915d185ca79aa0 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 16:43:41 +0100 Subject: [PATCH 19/34] #160 - Update MSVC compiler configuration to use version 1.13.0 --- .github/actions/build-win/action.yml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/.github/actions/build-win/action.yml b/.github/actions/build-win/action.yml index e7faacb..a0f4e4d 100644 --- a/.github/actions/build-win/action.yml +++ b/.github/actions/build-win/action.yml @@ -53,20 +53,10 @@ runs: cache_dir: ${{ env.CACHE_DIR }} - name: Configure Developer Command Prompt for MSVC compiler - uses: ilammy/msvc-dev-cmd@v1.10.0 + uses: ilammy/msvc-dev-cmd@v1.13.0 with: arch: ${{ inputs.arch }} - # Workaround for - # PHP Warning: PHP Startup: Can't load module 'C:\tools\php\ext\php_zephir_parser.dll' - # as it's linked with 14.29, but the core is linked with 14.16 in Unknown on line 0 - - name: Configure Developer Command Prompt for MSVC compiler - uses: ilammy/msvc-dev-cmd@v1.10.0 - if: ${{ inputs.php_version }} == '7.4' - with: - arch: ${{ inputs.arch }} - toolset: 14.16 - - name: Getting Details About Installed PHP shell: powershell run: | From 41a920d786b122f3d9d60fb7ad8f88aba84d9652 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:00:53 +0100 Subject: [PATCH 20/34] #160 - Add MSVC toolset version input to action.yml and update CI configuration --- .github/actions/build-win/action.yml | 5 ++++ .github/workflows/ci.yml | 42 +++++++++++++--------------- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/.github/actions/build-win/action.yml b/.github/actions/build-win/action.yml index a0f4e4d..c18a736 100644 --- a/.github/actions/build-win/action.yml +++ b/.github/actions/build-win/action.yml @@ -16,6 +16,10 @@ inputs: description: 'Target architecture (x64, x86)' required: false default: 'x64' + toolset: + description: 'MSVC toolset version (e.g: 14.0, 15.0, 16.0)' + required: false + default: '' # Use default toolset version for the selected msvc runs: using: 'composite' @@ -56,6 +60,7 @@ runs: uses: ilammy/msvc-dev-cmd@v1.13.0 with: arch: ${{ inputs.arch }} + toolset: ${{ inputs.toolset }} - name: Getting Details About Installed PHP shell: powershell diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 66f0fd2..32b0265 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,28 +43,26 @@ jobs: # macOS - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } - - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } - - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } - - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', ccov: 'OFF' } - - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } - - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } - - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } - - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', ccov: 'OFF' } - - { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', ccov: 'OFF' } - - { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', ccov: 'OFF' } -# - { php: '8.5', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } -# - { php: '8.5', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vc16', ccov: 'OFF' } + - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } + - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } + - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } + - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } + - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.16', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', toolset: '14.44', ccov: 'OFF' } + - { php: '8.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc17', os: 'windows-2022', compiler: 'vs17', toolset: '14.44', ccov: 'OFF' } steps: - uses: actions/checkout@v4 From 0552348f638a47ae8753db1a43b83f83544c73bf Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:03:45 +0100 Subject: [PATCH 21/34] #160 - Add configuration files for PHP project and update action.yml --- .github/actions/build-mac/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/build-mac/action.yml b/.github/actions/build-mac/action.yml index cf58eb6..1c9746b 100644 --- a/.github/actions/build-mac/action.yml +++ b/.github/actions/build-mac/action.yml @@ -38,6 +38,7 @@ runs: shell: bash run: | php --ini + ls -la /opt/homebrew/etc/php cp ./modules/zephir_parser.so "$(php -r 'echo ini_get("extension_dir");')/zephir_parser.so" if [ "${{ matrix.ts }}" = "ts" ]; then echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini From 79786478c6f3eacd4c65d398914956fc39b5bdff Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:07:58 +0100 Subject: [PATCH 22/34] #160 - Add toolset parameter to CI configuration --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 32b0265..e35837f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -108,6 +108,7 @@ jobs: ts: ${{ matrix.ts }} msvc: ${{ matrix.compiler }} arch: ${{ matrix.arch }} + toolset: ${{ matrix.toolset }} env: CACHE_DIR: 'C:\Downloads' TOOLS_DIR: 'C:\tools' From a60bf82249db33e1fabb28fb015573b1c5f4e62b Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:20:08 +0100 Subject: [PATCH 23/34] #160 - Remove toolset version from Windows CI configuration for PHP versions 7.0 to 8.0 --- .github/workflows/ci.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e35837f..e882649 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,18 +43,18 @@ jobs: # macOS - { name: macos-clang, os: macos-14, compiler: clang, ccov: 'OFF' } # Windows - - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } - - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } - - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } - - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '14.16', ccov: 'OFF' } - - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.16', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '7.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '', ccov: 'OFF' } + - { php: '7.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '', ccov: 'OFF' } + - { php: '7.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '', ccov: 'OFF' } + - { php: '7.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc14', os: 'windows-2022', compiler: 'VC14', toolset: '', ccov: 'OFF' } + - { php: '7.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 5f693ebb0cc6a3e83f496164c0bc8da1e6a81155 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:33:55 +0100 Subject: [PATCH 24/34] #160 - Update toolset versions for PHP 7.4 and 8.0 in CI configuration --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e882649..7700616 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,10 +51,10 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '', ccov: 'OFF' } - - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } + - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.2', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From aafae87edcf9d061d1bfeb26814a5515e5746776 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 17:35:00 +0100 Subject: [PATCH 25/34] #160 - Add debug output --- .github/actions/build-mac/action.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/actions/build-mac/action.yml b/.github/actions/build-mac/action.yml index 1c9746b..84ef9ba 100644 --- a/.github/actions/build-mac/action.yml +++ b/.github/actions/build-mac/action.yml @@ -38,10 +38,11 @@ runs: shell: bash run: | php --ini - ls -la /opt/homebrew/etc/php cp ./modules/zephir_parser.so "$(php -r 'echo ini_get("extension_dir");')/zephir_parser.so" if [ "${{ matrix.ts }}" = "ts" ]; then + ls -la /opt/homebrew/etc/php/${{ matrix.php }}-zts echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini else + ls -la /opt/homebrew/etc/php/${{ matrix.php }} echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}/conf.d/ext-zephir_parser.ini fi From 3af9f92e1d0e18f2ae21d67ee27e4f57938c4d6b Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 18:03:04 +0100 Subject: [PATCH 26/34] #160 - Set default `toolset` for PHP 7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7700616..d2ade49 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 4aa4f74d74435c1ce7488796acc48d528e3f1d85 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 18:06:53 +0100 Subject: [PATCH 27/34] #160 - Add mkdir for `conf.d` folder if it misses --- .github/actions/build-mac/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/build-mac/action.yml b/.github/actions/build-mac/action.yml index 84ef9ba..1ff98e4 100644 --- a/.github/actions/build-mac/action.yml +++ b/.github/actions/build-mac/action.yml @@ -40,9 +40,9 @@ runs: php --ini cp ./modules/zephir_parser.so "$(php -r 'echo ini_get("extension_dir");')/zephir_parser.so" if [ "${{ matrix.ts }}" = "ts" ]; then - ls -la /opt/homebrew/etc/php/${{ matrix.php }}-zts + mkdir -p /opt/homebrew/etc/php/${{ matrix.php }}-zts/conf.d echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}-zts/conf.d/ext-zephir_parser.ini else - ls -la /opt/homebrew/etc/php/${{ matrix.php }} + mkdir -p /opt/homebrew/etc/php/${{ matrix.php }}/conf.d echo "extension=zephir_parser.so" > /opt/homebrew/etc/php/${{ matrix.php }}/conf.d/ext-zephir_parser.ini fi From 2a707b469a58bf0030783c5edaf4df3df181b478 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 18:32:24 +0100 Subject: [PATCH 28/34] #160 - Set default `toolset` and change `compiler` for PHP 7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2ade49..066c31c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From b5727bf8f0536e4d748b9b57dc7f21ddc3a18e9f Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 18:53:11 +0100 Subject: [PATCH 29/34] #160 - Set default `toolset` and change `compiler` for PHP 7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 066c31c..7cc4ba0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 33e1f31adca5e4e544a585d2066211baf4325c3f Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 19:12:10 +0100 Subject: [PATCH 30/34] #160 - Update compiler to 'vc15' for PHP 7.4 in CI configuration --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7cc4ba0..d2ade49 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 582a68fd97c3606917fee88137655765aa08fb34 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 20:08:07 +0100 Subject: [PATCH 31/34] #160 - Set default `toolset` and change `compiler` for PHP 7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d2ade49..7700616 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 16820aeb93f502fcb190973953d7feb51c8aead3 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 20:35:11 +0100 Subject: [PATCH 32/34] #160 - Set `toolset` `14.29` for PHP7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7700616..0e71999 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.29', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 37fb8f50e16dc024ccf73bdb6c7cfa820e5bec1a Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 21:42:19 +0100 Subject: [PATCH 33/34] #160 - Set `toolset` `14.16` for PHP7.4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0e71999..066c31c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,8 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.29', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'vc15', toolset: '14.29', ccov: 'OFF' } + - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } From 901a60db742f082c10c43364998c70e8d6e48816 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev <1695147@gmail.com> Date: Sat, 27 Sep 2025 22:01:17 +0100 Subject: [PATCH 34/34] #160 - Disable PHP7.4 in Windows --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 066c31c..73c8866 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,8 +51,12 @@ jobs: - { php: '7.2', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - { php: '7.3', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '', ccov: 'OFF' } - - { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } - - { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + + # MSVC toolsets 14.0 and 14.16 can no longer be installed on Windows runners + # See https://github.com/actions/runner-images/issues/12764 + #- { php: '7.4', ts: 'nts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + #- { php: '7.4', ts: 'ts', arch: 'x64', name: 'windows2022-vc15', os: 'windows-2022', compiler: 'VC15', toolset: '14.16', ccov: 'OFF' } + - { php: '8.0', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.0', ts: 'ts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' } - { php: '8.1', ts: 'nts', arch: 'x64', name: 'windows2022-vc16', os: 'windows-2022', compiler: 'vs16', toolset: '14.29', ccov: 'OFF' }