Skip to content

Commit c466eb3

Browse files
Merge branch 'php:master' into master
2 parents 4dba11a + 0700313 commit c466eb3

File tree

4,111 files changed

+325388
-180504
lines changed

Some content is hidden

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

4,111 files changed

+325388
-180504
lines changed

.appveyor.yml

Lines changed: 0 additions & 60 deletions
This file was deleted.

.cirrus.yml

Lines changed: 213 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
env:
22
CIRRUS_CLONE_DEPTH: 1
3-
ARCH: amd64
43

5-
freebsd_instance:
6-
image_family: freebsd-13-0
7-
8-
task:
4+
freebsd_task:
95
name: FREEBSD_DEBUG_NTS
6+
freebsd_instance:
7+
image_family: freebsd-13-2
8+
env:
9+
ARCH: amd64
1010
install_script:
1111
#- sed -i -e 's/quarterly/latest/g' /etc/pkg/FreeBSD.conf
1212
#- pkg upgrade -y
@@ -25,4 +25,212 @@ task:
2525
tests_script:
2626
- export SKIP_IO_CAPTURE_TESTS=1
2727
- export CI_NO_IPV6=1
28+
- export STACK_LIMIT_DEFAULTS_CHECK=1
2829
- sapi/cli/php run-tests.php -P -q -j2 -g FAIL,BORK,LEAK,XLEAK --no-progress --offline --show-diff --show-slow 1000 --set-timeout 120 -d zend_extension=opcache.so
30+
31+
arm_task:
32+
name: ARM_DEBUG_NTS
33+
arm_container:
34+
image: debian:12
35+
additional_containers:
36+
- name: mysql
37+
image: mysql:8
38+
port: 3306
39+
cpu: 1.0
40+
memory: 1G
41+
env:
42+
MYSQL_ALLOW_EMPTY_PASSWORD: true
43+
MYSQL_ROOT_PASSWORD: ""
44+
MYSQL_DATABASE: "test"
45+
- name: postgres
46+
image: postgres:latest
47+
port: 5432
48+
env:
49+
POSTGRES_PASSWORD: "postgres"
50+
POSTGRES_DB: "test"
51+
install_script:
52+
- export DEBIAN_FRONTEND=noninteractive
53+
- apt-get update -y
54+
- >-
55+
apt-get install -y
56+
gcc
57+
g++
58+
autoconf
59+
bison
60+
re2c
61+
locales
62+
locales-all
63+
ldap-utils
64+
openssl
65+
slapd
66+
libgmp-dev
67+
libicu-dev
68+
libtidy-dev
69+
libenchant-2-dev
70+
libaspell-dev
71+
libpspell-dev
72+
libsasl2-dev
73+
libxpm-dev
74+
libzip-dev
75+
libbz2-dev
76+
libsqlite3-dev
77+
libwebp-dev
78+
libonig-dev
79+
libkrb5-dev
80+
libgssapi-krb5-2
81+
libcurl4-openssl-dev
82+
libxml2-dev
83+
libxslt1-dev
84+
libpq-dev
85+
libreadline-dev
86+
libldap2-dev
87+
libsodium-dev
88+
libargon2-0-dev
89+
libmm-dev
90+
libsnmp-dev
91+
snmpd
92+
`#snmp-mibs-downloader`
93+
freetds-dev
94+
`#unixodbc-dev`
95+
libc-client-dev
96+
dovecot-core
97+
dovecot-pop3d
98+
dovecot-imapd
99+
sendmail
100+
firebird-dev
101+
liblmdb-dev
102+
libtokyocabinet-dev
103+
libdb-dev
104+
libqdbm-dev
105+
libjpeg-dev
106+
libpng-dev
107+
libfreetype6-dev
108+
build_script:
109+
- ./buildconf -f
110+
- >-
111+
./configure
112+
--enable-debug
113+
--enable-zts
114+
--enable-option-checking=fatal
115+
--prefix=/usr
116+
--enable-phpdbg
117+
--enable-fpm
118+
--enable-opcache
119+
--with-pdo-mysql=mysqlnd
120+
--with-mysqli=mysqlnd
121+
--with-pgsql
122+
--with-pdo-pgsql
123+
--with-pdo-sqlite
124+
--enable-intl
125+
--without-pear
126+
--enable-gd
127+
--with-jpeg
128+
--with-webp
129+
--with-freetype
130+
--with-xpm
131+
--enable-exif
132+
--with-zip
133+
--with-zlib
134+
--enable-soap
135+
--enable-xmlreader
136+
--with-xsl
137+
--with-tidy
138+
--enable-sysvsem
139+
--enable-sysvshm
140+
--enable-shmop
141+
--enable-pcntl
142+
--with-readline
143+
--enable-mbstring
144+
--with-curl
145+
--with-gettext
146+
--enable-sockets
147+
--with-bz2
148+
--with-openssl
149+
--with-gmp
150+
--enable-bcmath
151+
--enable-calendar
152+
--enable-ftp
153+
--with-pspell=/usr
154+
--with-enchant=/usr
155+
--with-kerberos
156+
--enable-sysvmsg
157+
--with-ffi
158+
--enable-zend-test
159+
--enable-dl-test=shared
160+
--with-ldap
161+
--with-ldap-sasl
162+
--with-password-argon2
163+
--with-mhash
164+
--with-sodium
165+
--enable-dba
166+
--with-cdb
167+
--enable-flatfile
168+
--enable-inifile
169+
--with-tcadb
170+
--with-lmdb
171+
--with-qdbm
172+
--with-snmp
173+
`#--with-unixODBC`
174+
--with-imap
175+
--with-kerberos
176+
--with-imap-ssl
177+
`#--with-pdo-odbc=unixODBC,/usr`
178+
`#--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient`
179+
`#--with-oci8=shared,instantclient,/opt/oracle/instantclient`
180+
--with-config-file-path=/etc
181+
--with-config-file-scan-dir=/etc/php.d
182+
--with-pdo-firebird
183+
`#--with-pdo-dblib`
184+
--disable-phpdbg
185+
`#--enable-werror`
186+
- make -j2 > /dev/null
187+
- make install
188+
- mkdir -p /etc/php.d
189+
- echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
190+
- echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
191+
# Specify opcache.preload_user as we're running as root.
192+
- echo opcache.preload_user=root >> /etc/php.d/opcache.ini
193+
tests_script:
194+
- export SKIP_IO_CAPTURE_TESTS=1
195+
- export CI_NO_IPV6=1
196+
- export MYSQL_TEST_HOST=127.0.0.1
197+
- export MYSQL_TEST_USER=root
198+
- export MYSQL_TEST_PASSWD=
199+
- export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test"
200+
- export PDO_MYSQL_TEST_USER=root
201+
- export PDO_MYSQL_TEST_PASS=
202+
- export PDO_PGSQL_TEST_DSN="pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=postgres"
203+
- >-
204+
sapi/cli/php run-tests.php
205+
-d zend_extension=opcache.so
206+
-d opcache.enable_cli=1
207+
-d opcache.jit_buffer_size=64M
208+
-d opcache.jit=function
209+
-P -q -x -j2
210+
-g FAIL,BORK,LEAK,XLEAK
211+
--no-progress
212+
--offline
213+
--show-diff
214+
--show-slow 1000
215+
--set-timeout 120
216+
- >-
217+
sapi/cli/php run-tests.php
218+
-d zend_extension=opcache.so
219+
-d opcache.enable_cli=1
220+
-d opcache.jit_buffer_size=64M
221+
-d opcache.jit_max_root_traces=1000000
222+
-d opcache.jit_max_side_traces=1000000
223+
-d opcache.jit_max_exit_counters=1000000
224+
-d opcache.jit_hot_loop=1
225+
-d opcache.jit_hot_func=1
226+
-d opcache.jit_hot_return=1
227+
-d opcache.jit_hot_side_exit=1
228+
-d opcache.jit=tracing
229+
-P -q -x -j2
230+
-g FAIL,BORK,LEAK,XLEAK
231+
--no-progress
232+
--offline
233+
--show-diff
234+
--show-slow 1000
235+
--set-timeout 120
236+
--repeat 2

.gdbinit

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,7 @@ end
482482

483483
define print_pi
484484
set $pi = (zend_property_info *)$arg0
485-
set $initial_offset = ((uint32_t)(zend_uintptr_t)(&((zend_object*)0)->properties_table[(0)]))
485+
set $initial_offset = ((uint32_t)(uintptr_t)(&((zend_object*)0)->properties_table[(0)]))
486486
set $ptr_to_val = (zval*)((char*)$pi->ce->default_properties_table + $pi->offset - $initial_offset)
487487
printf "[%p] {\n", $pi
488488
printf " offset = %p\n", $pi->offset

.gitattributes

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,11 @@
1919
*.php diff=php
2020
*.[ch] diff=cpp
2121

22-
# Collapse generated files within a pull request.
23-
**/*_arginfo.h linguist-generated
24-
/Zend/zend_vm_execute.h linguist-generated
25-
/Zend/zend_vm_opcodes.{h,c} linguist-generated
22+
# Collapse generated files within git and pull request diff.
23+
**/*_arginfo.h linguist-generated -diff
24+
/Zend/zend_vm_execute.h linguist-generated -diff
25+
/Zend/zend_vm_handlers.h linguist-generated -diff
26+
/Zend/zend_vm_opcodes.[ch] linguist-generated -diff
27+
28+
# The OSS fuzz files are binary
29+
/ext/date/tests/ossfuzz*.txt binary

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,3 @@ contact_links:
33
- name: Documentation issue
44
url: https://github.com/php/doc-en/issues
55
about: Please report documentation issues on the doc-en repository.
6-
- name: Security issue
7-
url: https://bugs.php.net/report.php?security_bug
8-
about: Please report security issues in this private bug tracker.

.github/actions/apt-x32/action.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: apt
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
set -x
8+
9+
export DEBIAN_FRONTEND=noninteractive
10+
dpkg --add-architecture i386
11+
apt-get update -y | true
12+
# TODO: Reenable postgresql + postgresql-contrib packages once they work again.
13+
apt-get install -y \
14+
autoconf \
15+
bison \
16+
curl \
17+
g++-multilib \
18+
gcc-multilib \
19+
language-pack-de \
20+
libaspell-dev:i386 \
21+
libbz2-dev:i386 \
22+
libc6:i386 \
23+
libcurl4-openssl-dev:i386 \
24+
libffi-dev:i386 \
25+
libfreetype6-dev:i386 \
26+
libgmp-dev:i386 \
27+
libgssapi-krb5-2:i386 \
28+
libicu-dev:i386 \
29+
libjpeg-dev:i386 \
30+
libkrb5-dev:i386 \
31+
libonig-dev:i386 \
32+
libpng-dev:i386 \
33+
libpq-dev:i386 \
34+
libpspell-dev:i386 \
35+
libreadline-dev:i386 \
36+
libsasl2-dev:i386 \
37+
libsodium-dev:i386 \
38+
libsqlite3-dev:i386 \
39+
libssl-dev:i386 \
40+
libtidy-dev:i386 \
41+
libwebp-dev:i386 \
42+
libxml2-dev:i386 \
43+
libxml2-dev:i386 \
44+
libxpm-dev:i386 \
45+
libxslt1-dev:i386 \
46+
libzip-dev:i386 \
47+
locales \
48+
make \
49+
pkg-config:i386 \
50+
re2c \
51+
unzip \
52+
wget \
53+
zlib1g-dev:i386

0 commit comments

Comments
 (0)