Skip to content

Commit b955f07

Browse files
committed
Merge remote-tracking branch 'upstream/master' into feat/zend-class-use-traits
2 parents 9783420 + 555e652 commit b955f07

944 files changed

Lines changed: 58454 additions & 45665 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.circleci/config.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ jobs:
55
resource_class: arm.medium
66
docker:
77
- image: cimg/base:current-24.04
8-
- image: mysql:8.3
8+
- image: mysql:8.4
99
environment:
1010
MYSQL_ALLOW_EMPTY_PASSWORD: true
1111
MYSQL_ROOT_PASSWORD: ''
@@ -166,6 +166,7 @@ jobs:
166166
name: Test
167167
no_output_timeout: 30m
168168
command: |
169+
export RUN_RESOURCE_HEAVY_TESTS=1
169170
sapi/cli/php run-tests.php \
170171
-d opcache.enable_cli=1 \
171172
-d opcache.jit_buffer_size=64M \

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
# Collapse generated files within git and pull request diff.
2323
**/*_arginfo.h linguist-generated -diff
24+
**/*_decl.h linguist-generated -diff
2425
/main/debug_gdb_scripts.c linguist-generated -diff
2526
/Zend/zend_vm_execute.h linguist-generated -diff
2627
/Zend/zend_vm_handlers.h linguist-generated -diff

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,15 @@ body:
2626
attributes:
2727
label: PHP Version
2828
description: |
29-
Please run PHP with the `-v` flag (e.g. `php -v`, `php8.3 -v`, `php-fpm -v` or similar) and provide the full output of that command. If executing that command is not possible, please provide the full version number as given in PHPInfo.
29+
Please run PHP with the `-v` flag (e.g. `php -v`, `php8.5 -v`, `php-fpm -v` or similar) and provide the full output of that command. If executing that command is not possible, please provide the full version number as given in PHPInfo.
3030
3131
Please make sure that the used PHP version [is a supported version](https://www.php.net/supported-versions.php).
3232
placeholder: |
33-
PHP 8.3.19 (cli) (built: Mar 13 2025 17:44:40) (NTS)
33+
PHP 8.5.2 (cli) (built: Jan 21 2026 17:35:28) (NTS)
3434
Copyright (c) The PHP Group
35-
Zend Engine v4.3.19, Copyright (c) Zend Technologies
36-
with Zend OPcache v8.3.19, Copyright (c), by Zend Technologies
35+
Built by Ubuntu
36+
Zend Engine v4.5.2, Copyright (c) Zend Technologies
37+
with Zend OPcache v8.5.2, Copyright (c), by Zend Technologies
3738
render: plain
3839
validations:
3940
required: true

.github/actions/brew/action.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,18 @@ runs:
1313
1414
# Some packages exist on x86 but not arm, or vice versa.
1515
# Install them with reinstall to avoid warnings.
16-
brew reinstall autoconf webp tidy-html5 libzip libsodium icu4c curl
17-
brew install \
16+
brew reinstall -v \
17+
autoconf \
18+
webp \
19+
tidy-html5 \
20+
libzip \
21+
libsodium \
22+
icu4c \
23+
curl
24+
brew install -v \
1825
bison \
1926
re2c
20-
brew install \
27+
brew install -v \
2128
bzip2 \
2229
enchant \
2330
libffi \

.github/actions/build-libmysqlclient/action.yml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ inputs:
55
required: false
66
libmysql:
77
required: true
8-
withMysqli:
9-
required: true
108
runs:
119
using: composite
1210
steps:
@@ -21,13 +19,11 @@ runs:
2119
wget -nv $URL
2220
tar -xf $LIBMYSQL --strip-components=1 -C $MYSQL_DIR
2321
PDO_MYSQL=${MYSQL_DIR}
24-
${{ inputs.withMysqli == 'true' && 'MYSQLI=${MYSQL_DIR}/bin/mysql_config' || '' }}
2522
./buildconf --force
2623
./configure ${{ inputs.configurationParameters }} \
2724
--enable-option-checking=fatal \
2825
--disable-all \
2926
--enable-pdo \
30-
--with-pdo-mysql=${PDO_MYSQL} \
31-
${{ inputs.withMysqli == 'true' && '--with-mysqli=${MYSQLI}' || '' }}
27+
--with-pdo-mysql=${PDO_MYSQL}
3228
make clean
3329
make -j$(/usr/bin/nproc) >/dev/null

.github/actions/ccache/action.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: ccache
2+
inputs:
3+
name:
4+
required: true
5+
php_directory:
6+
required: false
7+
default: '.'
8+
cc:
9+
required: false
10+
default: 'gcc'
11+
cxx:
12+
required: false
13+
default: 'g++'
14+
runs:
15+
using: composite
16+
steps:
17+
- name: Get cache key
18+
shell: bash
19+
id: cache_key
20+
run: |
21+
major=$(cat ${{ inputs.php_directory }}/main/php_version.h | sed -En 's/^#define PHP_MAJOR_VERSION ([0-9]+)/\1/p')
22+
minor=$(cat ${{ inputs.php_directory }}/main/php_version.h | sed -En 's/^#define PHP_MINOR_VERSION ([0-9]+)/\1/p')
23+
release=$(cat ${{ inputs.php_directory }}/main/php_version.h | sed -En 's/^#define PHP_RELEASE_VERSION ([0-9]+)/\1/p')
24+
week=$(date +"%Y-%W")
25+
prefix="${{ inputs.name }}-$major.$minor.$release"
26+
echo "key=$prefix-$week" >> $GITHUB_OUTPUT
27+
echo "prefix=$prefix-" >> $GITHUB_OUTPUT
28+
- name: ccache
29+
uses: hendrikmuhs/ccache-action@v1.2
30+
with:
31+
key: "${{ steps.cache_key.outputs.key }}"
32+
append-timestamp: false
33+
restore-keys: "${{ steps.cache_key.outputs.prefix }}"
34+
save: ${{ github.event_name != 'pull_request' }}
35+
- name: Export CC/CXX
36+
shell: bash
37+
run: |
38+
echo "CC=ccache ${{ inputs.cc }}" >> $GITHUB_ENV
39+
echo "CXX=ccache ${{ inputs.cxx }}" >> $GITHUB_ENV

.github/actions/freebsd/action.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ runs:
1515
release: '13.5'
1616
usesh: true
1717
copyback: false
18+
disable-cache: true
1819
# Temporarily disable sqlite, as FreeBSD ships it with disabled double quotes. We'll need to fix our tests.
1920
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269889
2021
prepare: |
@@ -45,7 +46,7 @@ runs:
4546
pkgconf \
4647
webp \
4748
libavif \
48-
`#sqlite3` \
49+
sqlite3 \
4950
curl \
5051
$OPCACHE_TLS_TESTS_DEPS
5152
@@ -56,9 +57,7 @@ runs:
5657
--enable-debug \
5758
--enable-option-checking=fatal \
5859
--enable-fpm \
59-
`#--with-pdo-sqlite` \
60-
--without-sqlite3 \
61-
--without-pdo-sqlite \
60+
--with-pdo-sqlite \
6261
--without-pear \
6362
--with-bz2 \
6463
--with-avif \
@@ -106,6 +105,7 @@ runs:
106105
export SKIP_IO_CAPTURE_TESTS=1
107106
export CI_NO_IPV6=1
108107
export STACK_LIMIT_DEFAULTS_CHECK=1
108+
export RUN_RESOURCE_HEAVY_TESTS=1
109109
sapi/cli/php run-tests.php \
110110
-P -q -j2 \
111111
-g FAIL,BORK,LEAK,XLEAK \

.github/actions/solaris/action.yml

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
name: Solaris
2+
inputs:
3+
configurationParameters:
4+
default: ''
5+
required: false
6+
runExtraTests:
7+
default: false
8+
required: false
9+
runs:
10+
using: composite
11+
steps:
12+
- name: Solaris
13+
uses: vmactions/solaris-vm@v1
14+
with:
15+
release: "11.4-gcc"
16+
usesh: true
17+
copyback: false
18+
disable-cache: true
19+
prepare: |
20+
cd $GITHUB_WORKSPACE
21+
pkg install bison developer/icu libzip oniguruma re2c
22+
23+
./buildconf -f
24+
CC=gcc CXX=g++ \
25+
CFLAGS="-Wno-char-subscripts" \
26+
PATH=/usr/gnu/bin:/usr/bin \
27+
PKG_CONFIG_PATH=/usr/lib/amd64/pkgconfig \
28+
./configure \
29+
--prefix=/usr/local \
30+
--enable-debug \
31+
--enable-werror \
32+
--enable-option-checking=fatal \
33+
--enable-fpm \
34+
--without-pear \
35+
--with-bz2 \
36+
--with-jpeg \
37+
--with-webp \
38+
--with-freetype \
39+
--enable-gd \
40+
--enable-exif \
41+
--with-zip \
42+
--with-zlib \
43+
--enable-soap \
44+
--enable-xmlreader \
45+
--with-xsl \
46+
--with-libxml \
47+
--enable-shmop \
48+
--enable-pcntl \
49+
--enable-mbstring \
50+
--with-curl \
51+
--enable-sockets \
52+
--with-openssl \
53+
--enable-bcmath \
54+
--enable-calendar \
55+
--enable-ftp \
56+
--enable-zend-test \
57+
--enable-dl-test=shared \
58+
--enable-intl \
59+
--with-mhash \
60+
--with-config-file-path=/etc \
61+
--with-config-file-scan-dir=/etc/php.d \
62+
${{ inputs.configurationParameters }}
63+
64+
gmake -j2
65+
mkdir /etc/php.d
66+
gmake install > /dev/null
67+
echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
68+
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
69+
echo opcache.preload_user=root >> /etc/php.d/opcache.ini
70+
run: |
71+
cd $GITHUB_WORKSPACE
72+
73+
export SKIP_IO_CAPTURE_TESTS=1
74+
export CI_NO_IPV6=1
75+
export STACK_LIMIT_DEFAULTS_CHECK=1
76+
PATH=/usr/gnu/bin:/usr/bin \
77+
sapi/cli/php run-tests.php \
78+
-P -q -j1 \
79+
-g FAIL,BORK,LEAK,XLEAK \
80+
--no-progress \
81+
--offline \
82+
--show-diff \
83+
--show-slow 1000 \
84+
--set-timeout 120
85+
86+
if test "${{ inputs.runExtraTests }}" = "true"; then
87+
sapi/cli/php run-extra-tests.php
88+
fi

.github/actions/test-alpine/action.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ inputs:
33
runTestsParameters:
44
default: ''
55
required: false
6+
enableOpcache:
7+
default: 'false'
8+
required: false
69
jitType:
710
default: 'disable'
811
required: false
@@ -15,6 +18,7 @@ runs:
1518
export SKIP_IO_CAPTURE_TESTS=1
1619
export STACK_LIMIT_DEFAULTS_CHECK=1
1720
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
21+
${{ inputs.enableOpcache == 'true' && '-d opcache.enable_cli=1' || '' }} \
1822
-d opcache.jit=${{ inputs.jitType }} \
1923
-d opcache.jit_buffer_size=64M \
2024
-j$(nproc) \

.github/actions/test-gentoo/action.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ runs:
2525
# Slow tests criteron is doubled because this runner isn't as fast as others
2626
export SKIP_IO_CAPTURE_TESTS=1
2727
export STACK_LIMIT_DEFAULTS_CHECK=1
28+
export RUN_RESOURCE_HEAVY_TESTS=1
2829
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
2930
-j$(nproc) \
3031
-g FAIL,BORK,LEAK,XLEAK \

0 commit comments

Comments
 (0)