Skip to content
forked from php/php-src

Commit c44507a

Browse files
authored
Merge branch 'php:master' into master
2 parents dbdff8a + 1887f02 commit c44507a

File tree

1,839 files changed

+53067
-32036
lines changed

Some content is hidden

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

1,839 files changed

+53067
-32036
lines changed

.appveyor.yml

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

.cirrus.yml

Lines changed: 5 additions & 181 deletions
Original file line numberDiff line numberDiff line change
@@ -1,186 +1,6 @@
11
env:
22
CIRRUS_CLONE_DEPTH: 1
33

4-
asan_task:
5-
name: ASAN_DEBUG_NTS
6-
container:
7-
image: gcc:latest
8-
additional_containers:
9-
- name: mysql
10-
image: mysql:8
11-
port: 3306
12-
cpu: 1.0
13-
memory: 1G
14-
env:
15-
MYSQL_ROOT_PASSWORD: "root"
16-
MYSQL_DATABASE: "test"
17-
install_script:
18-
- apt-get update -y
19-
- >-
20-
apt-get install -y
21-
bison
22-
re2c
23-
locales
24-
locales-all
25-
`#ldap-utils`
26-
openssl
27-
`slapd`
28-
libgmp-dev
29-
libicu-dev
30-
`#libtidy-dev`
31-
`#libenchant-dev`
32-
libaspell-dev
33-
libpspell-dev
34-
libsasl2-dev
35-
libxpm-dev
36-
libzip-dev
37-
`#libsqlite3-dev`
38-
libwebp-dev
39-
libonig-dev
40-
libkrb5-dev
41-
libgssapi-krb5-2
42-
libcurl4-openssl-dev
43-
libxml2-dev
44-
libxslt1-dev
45-
libpq-dev
46-
libreadline-dev
47-
`#libldap2-dev`
48-
libsodium-dev
49-
libargon2-0-dev
50-
libmm-dev
51-
`#libsnmp-dev`
52-
`#postgresql`
53-
`#postgresql-contrib`
54-
`#snmpd`
55-
`#snmp-mibs-downloader`
56-
`#freetds-dev`
57-
`#unixodbc-dev`
58-
llvm
59-
clang
60-
libc-client-dev
61-
dovecot-core
62-
dovecot-pop3d
63-
dovecot-imapd
64-
`#sendmail`
65-
`#firebird-dev`
66-
liblmdb-dev
67-
libtokyocabinet-dev
68-
libdb-dev
69-
libqdbm-dev
70-
libjpeg-dev
71-
libpng-dev
72-
libfreetype6-dev
73-
build_script:
74-
- ./buildconf -f
75-
- >-
76-
./configure
77-
--enable-debug
78-
--enable-zts
79-
--enable-option-checking=fatal
80-
--prefix=/usr
81-
--enable-phpdbg
82-
--enable-fpm
83-
--enable-opcache
84-
--disable-opcache-jit
85-
--with-pdo-mysql=mysqlnd
86-
--with-mysqli=mysqlnd
87-
`#--with-pgsql`
88-
`#--with-pdo-pgsql`
89-
`#--with-pdo-sqlite`
90-
--enable-intl
91-
--without-pear
92-
--enable-gd
93-
--with-jpeg
94-
--with-webp
95-
--with-freetype
96-
--with-xpm
97-
--enable-exif
98-
--with-zip
99-
--with-zlib
100-
--with-zlib-dir=/usr
101-
--enable-soap
102-
--enable-xmlreader
103-
--with-xsl
104-
`#--with-tidy`
105-
--enable-sysvsem
106-
--enable-sysvshm
107-
--enable-shmop
108-
--enable-pcntl
109-
--with-readline
110-
--enable-mbstring
111-
--with-curl
112-
--with-gettext
113-
--enable-sockets
114-
--with-bz2
115-
--with-openssl
116-
--with-gmp
117-
--enable-bcmath
118-
--enable-calendar
119-
--enable-ftp
120-
--with-pspell=/usr
121-
`#--with-enchant=/usr`
122-
--with-kerberos
123-
--enable-sysvmsg
124-
--with-ffi
125-
--enable-zend-test
126-
`#--enable-dl-test=shared`
127-
`#--with-ldap`
128-
`#--with-ldap-sasl`
129-
--with-password-argon2
130-
--with-mhash
131-
--with-sodium
132-
--enable-dba
133-
--with-cdb
134-
--enable-flatfile
135-
--enable-inifile
136-
--with-tcadb
137-
--with-lmdb
138-
--with-qdbm
139-
`#--with-snmp`
140-
`#--with-unixODBC`
141-
`#--with-imap`
142-
--with-kerberos
143-
--with-imap-ssl
144-
`#--with-pdo-odbc=unixODBC,/usr`
145-
`#--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient`
146-
`#--with-oci8=shared,instantclient,/opt/oracle/instantclient`
147-
--with-config-file-path=/etc
148-
--with-config-file-scan-dir=/etc/php.d
149-
`#--with-pdo-firebird`
150-
`#--with-pdo-dblib`
151-
--enable-werror
152-
CFLAGS='-fsanitize=undefined,address -DZEND_TRACK_ARENA_ALLOC' LDFLAGS='-fsanitize=undefined,address'
153-
CC=clang
154-
CXX=clang++
155-
- make -j2
156-
- make install
157-
- mkdir -p /etc/php.d
158-
- echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
159-
- echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
160-
# Specify opcache.preload_user as we're running as root.
161-
- echo opcache.preload_user=root >> /etc/php.d/opcache.ini
162-
tests_script:
163-
- export SKIP_IO_CAPTURE_TESTS=1
164-
- export CI_NO_IPV6=1
165-
- export MYSQL_TEST_HOST=127.0.0.1
166-
- export MYSQL_TEST_USER=root
167-
- export MYSQL_TEST_PASSWD=root
168-
- export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test"
169-
- export PDO_MYSQL_TEST_USER=root
170-
- export PDO_MYSQL_TEST_PASS=root
171-
- >-
172-
sapi/cli/php run-tests.php
173-
-P -q -x -j2
174-
-g FAIL,BORK,LEAK,XLEAK
175-
--no-progress
176-
--offline
177-
--show-diff
178-
--show-slow 1000
179-
--set-timeout 120
180-
-d zend_extension=opcache.so
181-
-d opcache.enable_cli=1
182-
--asan
183-
1844
freebsd_task:
1855
name: FREEBSD_DEBUG_NTS
1866
freebsd_instance:
@@ -211,7 +31,7 @@ freebsd_task:
21131
arm_task:
21232
name: ARM_DEBUG_NTS
21333
arm_container:
214-
image: gcc:12
34+
image: debian:12
21535
additional_containers:
21636
- name: mysql
21737
image: mysql:8
@@ -233,6 +53,9 @@ arm_task:
23353
- apt-get update -y
23454
- >-
23555
apt-get install -y
56+
gcc
57+
g++
58+
autoconf
23659
bison
23760
re2c
23861
locales
@@ -249,6 +72,7 @@ arm_task:
24972
libsasl2-dev
25073
libxpm-dev
25174
libzip-dev
75+
libbz2-dev
25276
libsqlite3-dev
25377
libwebp-dev
25478
libonig-dev

.gitattributes

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +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.[ch] 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
2627

2728
# The OSS fuzz files are bunary
2829
/ext/date/tests/ossfuzz*.txt binary

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ runs:
4646
freetds-dev \
4747
unixodbc-dev \
4848
llvm \
49+
clang \
4950
libc-client-dev \
5051
dovecot-core \
5152
dovecot-pop3d \

.github/actions/configure-x64/action.yml

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ inputs:
33
configurationParameters:
44
default: ''
55
required: false
6+
skipSlow:
7+
default: false
8+
required: false
69
runs:
710
using: composite
811
steps:
@@ -17,9 +20,9 @@ runs:
1720
--enable-fpm \
1821
--with-pdo-mysql=mysqlnd \
1922
--with-mysqli=mysqlnd \
20-
--with-pgsql \
21-
--with-pdo-pgsql \
22-
--with-pdo-sqlite \
23+
${{ inputs.skipSlow == 'false' && '--with-pgsql' || '' }} \
24+
${{ inputs.skipSlow == 'false' && '--with-pdo-pgsql' || '' }} \
25+
${{ inputs.skipSlow == 'false' && '--with-pdo-sqlite' || '' }} \
2326
--enable-intl \
2427
--without-pear \
2528
--enable-gd \
@@ -34,7 +37,7 @@ runs:
3437
--enable-soap \
3538
--enable-xmlreader \
3639
--with-xsl \
37-
--with-tidy \
40+
${{ inputs.skipSlow == 'false' && '--with-tidy' || '' }} \
3841
--enable-sysvsem \
3942
--enable-sysvshm \
4043
--enable-shmop \
@@ -51,14 +54,14 @@ runs:
5154
--enable-calendar \
5255
--enable-ftp \
5356
--with-pspell=/usr \
54-
--with-enchant=/usr \
57+
${{ inputs.skipSlow == 'false' && '--with-enchant=/usr' || '' }} \
5558
--with-kerberos \
5659
--enable-sysvmsg \
5760
--with-ffi \
5861
--enable-zend-test \
59-
--enable-dl-test=shared \
60-
--with-ldap \
61-
--with-ldap-sasl \
62+
${{ inputs.skipSlow == 'false' && '--enable-dl-test=shared' || '' }} \
63+
${{ inputs.skipSlow == 'false' && '--with-ldap' || '' }} \
64+
${{ inputs.skipSlow == 'false' && '--with-ldap-sasl' || '' }} \
6265
--with-password-argon2 \
6366
--with-mhash \
6467
--with-sodium \
@@ -69,16 +72,16 @@ runs:
6972
--with-tcadb \
7073
--with-lmdb \
7174
--with-qdbm \
72-
--with-snmp \
73-
--with-unixODBC \
74-
--with-imap \
75-
--with-imap-ssl \
76-
--with-pdo-odbc=unixODBC,/usr \
77-
--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient \
78-
--with-oci8=shared,instantclient,/opt/oracle/instantclient \
75+
${{ inputs.skipSlow == 'false' && '--with-snmp' || '' }} \
76+
${{ inputs.skipSlow == 'false' && '--with-unixODBC' || '' }} \
77+
${{ inputs.skipSlow == 'false' && '--with-imap' || '' }} \
78+
${{ inputs.skipSlow == 'false' && '--with-imap-ssl' || '' }} \
79+
${{ inputs.skipSlow == 'false' && '--with-pdo-odbc=unixODBC,/usr' || '' }} \
80+
${{ inputs.skipSlow == 'false' && '--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient' || '' }} \
81+
${{ inputs.skipSlow == 'false' && '--with-oci8=shared,instantclient,/opt/oracle/instantclient' || '' }} \
7982
--with-config-file-path=/etc \
8083
--with-config-file-scan-dir=/etc/php.d \
81-
--with-pdo-firebird \
82-
--with-pdo-dblib \
84+
${{ inputs.skipSlow == 'false' && '--with-pdo-firebird' || '' }} \
85+
${{ inputs.skipSlow == 'false' && '--with-pdo-dblib' || '' }} \
8386
--enable-werror \
8487
${{ inputs.configurationParameters }}

.github/actions/install-linux/action.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
name: Install
2+
inputs:
3+
withOci:
4+
default: true
5+
required: false
26
runs:
37
using: composite
48
steps:
@@ -10,5 +14,5 @@ runs:
1014
sudo chmod 777 /etc/php.d
1115
echo mysqli.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/mysqli.ini
1216
echo pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/pdo_mysql.ini
13-
echo extension=oci8.so > /etc/php.d/oci8.ini
14-
echo extension=pdo_oci.so > /etc/php.d/pdo_oci.ini
17+
${{ inputs.withOci == 'true' && 'echo extension=oci8.so > /etc/php.d/oci8.ini' || '' }}
18+
${{ inputs.withOci == 'true' && 'echo extension=pdo_oci.so > /etc/php.d/pdo_oci.ini' || '' }}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: Setup Caddy server
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
set -x
8+
sudo curl 'https://caddyserver.com/api/download?os=linux&arch=amd64' -o /usr/bin/caddy
9+
sudo chmod +x /usr/bin/caddy
10+
sudo caddy start --config ext/curl/tests/Caddyfile

0 commit comments

Comments
 (0)