Skip to content
forked from php/php-src

sysnc #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4,597 commits into from
Nov 16, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
4597 commits
Select commit Hold shift + click to select a range
55aadc6
Fix self-assign evaluation order for ASSIGN_DIM_OP
nikic Nov 1, 2021
a899dc9
Merge branch 'PHP-8.1'
nikic Nov 1, 2021
9308974
Deprecate use of mbstring to convert text to Base64/QPrint/HTML entit…
alexdowad Oct 18, 2021
6487875
Fix scdf loop var free check for phi vars
nikic Nov 1, 2021
8d1db82
Merge branch 'PHP-8.1'
nikic Nov 1, 2021
1a2fb90
Fix finally exception chaining on recursion
nikic Nov 1, 2021
e4f1083
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 1, 2021
ddbb51d
Merge branch 'PHP-8.1'
nikic Nov 1, 2021
f8ec5a1
Fix range inference hang
nikic Nov 1, 2021
3d38960
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 1, 2021
b41adb1
Merge branch 'PHP-8.1'
nikic Nov 1, 2021
2e29817
Handle FETCH_DIM_R after FETCH_DIM_FUNC_ARG in inference
nikic Nov 1, 2021
a89546d
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 1, 2021
b4f2b24
Merge branch 'PHP-8.1'
nikic Nov 1, 2021
cd32b47
JIT: Fixed register allocation in case of integer overflow
dstogov Nov 1, 2021
be8c9b9
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 1, 2021
ef34542
Merge branch 'PHP-8.1'
dstogov Nov 1, 2021
f1e6a7d
JIT: Fixed numeric string index handling
dstogov Nov 1, 2021
8262329
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 1, 2021
3602ed0
Merge branch 'PHP-8.1'
dstogov Nov 1, 2021
5c43e0c
Fixed incorrect assumption about reference counting
dstogov Nov 1, 2021
d4a7e4d
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 1, 2021
bcef615
Merge branch 'PHP-8.1'
dstogov Nov 1, 2021
d7ac39b
Tracing JIT: Fixed reference counting when escape because of IS_UNDEF…
dstogov Nov 1, 2021
8c9bfa1
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 1, 2021
b5f8b76
Merge branch 'PHP-8.1'
dstogov Nov 1, 2021
2605911
Tracing JIT: Fixed reference counting when escape because of IS_UNDEF…
dstogov Nov 1, 2021
c207980
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 1, 2021
c310c61
Merge branch 'PHP-8.1'
dstogov Nov 1, 2021
56a8b5f
Added NEWS entry for bug #81390
patrickallaert Nov 1, 2021
1f45890
Merge branch 'PHP-8.1'
patrickallaert Nov 1, 2021
81b3f95
Change UBool to bool for equality operators in ICU >= 70.1
ramsey Oct 20, 2021
52cda6f
Accommodate changes to canonicalized forms in ICU >= 70.1
ramsey Oct 20, 2021
c7a2441
CLDR 40a0 uses a lowercase "temp" instead of "Temp" in ICU >= 70.1
ramsey Oct 20, 2021
a6d14f1
Merge branch 'PHP-7.4' into PHP-8.0
nikic Nov 2, 2021
2654c34
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 2, 2021
713e22f
Merge branch 'PHP-8.1'
nikic Nov 2, 2021
2d4bfcf
Prep for 8.0.14
sgolemon Nov 2, 2021
e2ec92c
Merge branch 'PHP-8.0' into PHP-8.1
sgolemon Nov 2, 2021
b5d23b6
Merge branch 'PHP-8.1'
sgolemon Nov 2, 2021
05b212b
Prepare for 7.4.27
derickr Nov 2, 2021
c5da497
Merge branch 'PHP-7.4' into PHP-8.0
derickr Nov 2, 2021
177f3d2
Merge branch 'PHP-8.0' into PHP-8.1
derickr Nov 2, 2021
4239ec5
Merge branch 'PHP-8.1'
derickr Nov 2, 2021
546e558
Fix WeakReference uniquing is TAG_HT is used
nikic Nov 3, 2021
66c8bf9
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 3, 2021
59d43a4
Merge branch 'PHP-8.1'
nikic Nov 3, 2021
dd0ec7a
Update PHP-Parser version in gen_stub
nikic Nov 3, 2021
0eb603e
Merge branch 'PHP-8.1'
nikic Nov 3, 2021
90b7bde
Use more compact representation for packed arrays.
dstogov Nov 3, 2021
e089a50
Add support for PCRE n modifier
Oct 15, 2021
96dd310
Fix Bug #81588 TokyoCabinet driver leaks memory
Girgias Nov 3, 2021
9f77373
Merge branch 'PHP-7.4' into PHP-8.0
Girgias Nov 3, 2021
84524af
Merge branch 'PHP-7.4' into PHP-8.0
Girgias Nov 3, 2021
5a3774c
Merge branch 'PHP-8.0' into PHP-8.1
Girgias Nov 3, 2021
8ca7220
Merge branch 'PHP-8.1'
Girgias Nov 3, 2021
a93ff1d
Updated to version 2021.5 (2021e)
derickr Nov 3, 2021
5715a5e
Empty merge
derickr Nov 3, 2021
7c9c722
Updated to version 2021.5 (2021e)
derickr Nov 3, 2021
b085f79
Empty merge
derickr Nov 3, 2021
4ec9d07
Updated to version 2021.5 (2021e)
derickr Nov 3, 2021
4d4ec67
Empty merge
derickr Nov 3, 2021
1772258
Empty merge
derickr Nov 3, 2021
456bfc7
Updated to version 2021.5 (2021e)
derickr Nov 3, 2021
64bd602
Updated to version 2021.5 (2021e)
derickr Nov 3, 2021
88f99c9
Revert "Updated to version 2021.5 (2021e)"
derickr Nov 3, 2021
905a1d5
Merge branch 'PHP-7.3' into PHP-7.4
derickr Nov 3, 2021
5751536
Merge branch 'PHP-7.4' into PHP-8.0
derickr Nov 3, 2021
dfb0392
Merge branch 'PHP-8.0' into PHP-8.1
derickr Nov 3, 2021
2b5007d
Merge branch 'PHP-8.1'
derickr Nov 3, 2021
66d93c6
Fixed type inference for FETCH_DIM_W without use
dstogov Nov 3, 2021
22a171a
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 3, 2021
e465218
Merge branch 'PHP-8.1'
dstogov Nov 3, 2021
0497b2b
Refactor php_com_cache_typelib()
Girgias Sep 26, 2021
2b32caf
Use neutral language instead of default on Windows
DmitryMaksimov Oct 25, 2021
34d22ac
Tracing JIT: Fixed incorrect guard elimination
dstogov Nov 3, 2021
5e39ed0
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 3, 2021
f661684
Revert "Refactor php_com_cache_typelib()"
Girgias Nov 3, 2021
aa9600c
Merge branch 'PHP-8.1'
dstogov Nov 3, 2021
3f9331a
Enable more DBA drivers in CI (#7622)
Girgias Nov 3, 2021
1de4059
fpm allow process tracing/core dump on solaris systems. (#7548)
devnexen Nov 3, 2021
4b9fbc6
Fixed bug #81587
nikic Nov 4, 2021
d7ad326
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
8a7f9a5
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
d5b9736
Always initialize iterator_funcs_ptr
nikic Nov 4, 2021
cfe8a45
Fix bug #81507: Adjust XCOFF asm files for AIX assembler
Oct 13, 2021
c49cb4c
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
1919c4b
Fix #71316: libpng warning from imagecreatefromstring
cmb69 Oct 26, 2021
f22f4af
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Nov 4, 2021
7f2533d
Merge branch 'PHP-8.0' into PHP-8.1
cmb69 Nov 4, 2021
2f85d79
Merge branch 'PHP-8.1'
cmb69 Nov 4, 2021
d393268
Fixed bug #81582
nikic Nov 4, 2021
1d6f4db
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
9793b69
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
ee37774
Suppress unused label warnings in SWITCH VM
nikic Nov 4, 2021
5d2f3d4
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
cacafd3
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
462271c
Fix typo
nikic Nov 4, 2021
94cacba
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
52ccb4d
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
4c171ed
Fix bug #81591: ignore_repeated_errors broken
nikic Nov 4, 2021
6ebabaa
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
aefe802
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
7e67366
Remove unnecessary assertion
nikic Nov 4, 2021
e291dcd
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 4, 2021
ce62a98
Merge branch 'PHP-8.1'
nikic Nov 4, 2021
d478ae7
Don't implement Stringable on traits
nikic Nov 5, 2021
4bdb271
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 5, 2021
2d38f70
Merge branch 'PHP-8.1'
nikic Nov 5, 2021
b302bfa
Implement Stringable automatically for internal classes
nikic Nov 5, 2021
b0ec622
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 5, 2021
edc02d2
Merge branch 'PHP-8.1'
nikic Nov 5, 2021
9b2a3c1
Fix stubs for bzerr* functions
nikic Nov 5, 2021
543bc88
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 5, 2021
31fe384
Merge branch 'PHP-8.1'
nikic Nov 5, 2021
c19c380
Promote incorrect bzerr stream type to TypeError
nikic Nov 5, 2021
fdf0455
Merge branch 'PHP-8.1'
nikic Nov 5, 2021
a2fe8d4
Partially address bug #78647
nikic Nov 5, 2021
ee2cec1
Merge branch 'PHP-8.1'
nikic Nov 5, 2021
9b433c2
Fix SKIP in mysqli tests
kamil-tekiela Nov 6, 2021
a6cc76e
Remove XFAIL
Girgias Nov 3, 2021
7db32ad
Refactor dba_(p)open() to be more sensible (#7610)
Girgias Nov 6, 2021
d02b9b9
Add more specific array return type hints for various extensions - pa…
kocsismate Aug 30, 2021
fdf63bf
Merge branch 'PHP-8.1'
kocsismate Nov 7, 2021
a38f4f9
Fix bug #78647
nikic Nov 5, 2021
53332b7
Merge branch 'PHP-8.1'
nikic Nov 8, 2021
7bf6324
JIT: Fixed incorrect guard elimination
dstogov Nov 8, 2021
b1b6440
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 8, 2021
dc06c0e
Merge branch 'PHP-8.1'
dstogov Nov 8, 2021
904933e
Fixed bug #81458: Regression: Incorrect difference after timezone change
derickr Nov 8, 2021
369ab3b
Merge branch 'PHP-8.1'
derickr Nov 8, 2021
b969ce3
Combine variance obligation processing and error reporting
nikic Nov 8, 2021
76df12c
Merge branch 'PHP-8.1'
nikic Nov 8, 2021
e868ded
Don't call _zend_hash_index_find() for packed arrays
dstogov Nov 8, 2021
03f1497
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 8, 2021
f823999
Merge branch 'PHP-8.1'
dstogov Nov 8, 2021
53df29b
Drop pi nodes for both old/new pred in replace_predecessor
nikic Nov 8, 2021
e5c2ad4
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 8, 2021
e506564
Merge branch 'PHP-8.1'
nikic Nov 8, 2021
8fe8082
JIT: Fixed incorrect guard elimination
dstogov Nov 8, 2021
9db9009
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 8, 2021
85aa735
Merge branch 'PHP-8.1'
dstogov Nov 8, 2021
535a055
Fixed incorrect reference counter inference
dstogov Nov 8, 2021
9bd490d
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 8, 2021
b7f19f2
Merge branch 'PHP-8.1'
dstogov Nov 8, 2021
eda9d7a
Tracing JIT: Fixed missed type store in deoptimization code
dstogov Nov 8, 2021
fc60f2c
Merge branch 'PHP-8.1'
dstogov Nov 8, 2021
a551b08
Add string return type to __toString() of internal classes
nikic Nov 9, 2021
277caa1
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 9, 2021
85acad5
Merge branch 'PHP-8.1'
nikic Nov 9, 2021
86379b6
Warn if return type on internal __toString() is missing
nikic Nov 9, 2021
2b1b384
Fix inconsistency in true/false/null constant resolution when opcache…
TysonAndre Sep 3, 2021
1b3a73b
Refactor have_innodb function
kamil-tekiela Nov 7, 2021
97bef32
Invalid condition in connect.inc
kamil-tekiela Nov 7, 2021
0ac7dac
Fix PHP DocBlock
kamil-tekiela Nov 7, 2021
c5cc4c8
Fix grammar in code comments
kamil-tekiela Nov 7, 2021
304f758
Remove redundant checks
kamil-tekiela Nov 7, 2021
6e3f3cb
Improve strtr() performance using SSE2 instructions
dstogov Nov 9, 2021
cd3fbb1
Fix file name clash in phar test
nikic Nov 9, 2021
425e70c
Fix bug #81441
nikic Nov 9, 2021
4f3c0ef
Merge branch 'PHP-8.1'
nikic Nov 9, 2021
15a2c86
mysqli_reap_async_query error reporting (#7629)
kamil-tekiela Nov 9, 2021
c149d37
Merge branch 'PHP-8.1'
kamil-tekiela Nov 9, 2021
085b360
Improve strtr(), str_replace() and substr_count() performance
dstogov Nov 9, 2021
89f28fa
The PHP-8.1 branch is now for 8.1.0
ramsey Nov 9, 2021
db8952d
Merge branch 'PHP-8.1'
ramsey Nov 10, 2021
c7484ef
zend_memnstr() micro-optimization
dstogov Nov 10, 2021
1a4f49f
Use cheaper memchr() instead of php_memnstr()
dstogov Nov 10, 2021
203c1b8
Tracing JIT: Fixed incorrect tracing type inference
dstogov Nov 10, 2021
936c6df
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 10, 2021
2c8ec71
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
87069d3
Fix invalid mbstring config reference
Nov 9, 2021
469f8a1
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 10, 2021
f38e93c
Merge branch 'PHP-8.1'
nikic Nov 10, 2021
4568370
JIT: Fixed memory leak
dstogov Nov 10, 2021
10575b7
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 10, 2021
6d572bc
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
8b561d3
Declare properties in SOAP tests
nikic Nov 10, 2021
888bec1
Merge duplicate identical conditions in PDO (#7638)
7snovic Nov 10, 2021
3dba556
Tracing JIT: Fixed incorrect assumption about in-memeory zval type
dstogov Nov 10, 2021
c699629
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 10, 2021
745451b
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
edb6e33
Fix property name typo in var_export tests
nikic Nov 10, 2021
3081423
Tracing JIT: Fixed register allocation
dstogov Nov 10, 2021
e4d0b01
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 10, 2021
c9d0671
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
cfde86a
Fixed test
dstogov Nov 10, 2021
30307b9
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
6491577
JIT: Fixed incorrect MOD into BW_AND optimization
dstogov Nov 10, 2021
4aa73bb
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 10, 2021
4508196
Merge branch 'PHP-8.1'
dstogov Nov 10, 2021
4df15e8
Allow constant folding bw_not on string
nikic Nov 11, 2021
4a455c1
Merge branch 'PHP-8.1'
nikic Nov 11, 2021
8c4a7f2
Fix COPY_TMP live range construction with optimization
nikic Nov 11, 2021
1039852
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 11, 2021
b6b820e
Merge branch 'PHP-8.1'
nikic Nov 11, 2021
c42336b
Drop dba_lock.name element
Girgias Nov 6, 2021
f8e15f1
Use zend_string for DBA fetch handler
Girgias Nov 7, 2021
0eb0f64
Use zend_string for DBA update handler
Girgias Nov 7, 2021
cd98e46
Use zend_string for DBA exist handler
Girgias Nov 7, 2021
96ff88e
Use zend_string for DBA delete handler
Girgias Nov 7, 2021
d71d0cf
Use zend_string for DBA first/next key handlers
Girgias Nov 7, 2021
fa0b84a
Partially fix handling of exceptions thrown in interrupt handlers
dstogov Nov 11, 2021
271cbe5
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 11, 2021
47435d6
Merge branch 'PHP-8.1'
dstogov Nov 11, 2021
5380b41
JIT: Partially fix handling of exceptions thrown in interrupt handlers
dstogov Nov 11, 2021
efba3b6
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 11, 2021
e96f980
Merge branch 'PHP-8.1'
dstogov Nov 11, 2021
9cd7f41
Add oci8.prefetch_lob_size
cjbj Nov 12, 2021
b1e6fde
Fix leaks for AppArmor based distros in case the profile creation fails
devnexen Nov 12, 2021
4a5d75e
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 12, 2021
e964c91
Merge branch 'PHP-8.1'
nikic Nov 12, 2021
12d02e6
Fixed incorrect guard elimination
Nov 12, 2021
dc3bd55
Merge branch 'PHP-8.0' into PHP-8.1
Nov 12, 2021
0a3d551
Merge branch 'PHP-8.1'
Nov 12, 2021
07fcf5e
intl: Update grandfathered and redundant language tags
ramsey Nov 11, 2021
64fde17
Fixed test
dstogov Nov 12, 2021
389b2a4
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 12, 2021
e6d7210
Merge branch 'PHP-8.1'
dstogov Nov 12, 2021
b2cf9b7
Fix bug #81513 (Future possibility for heap overflow in FPM zlog)
bukka Nov 7, 2021
ec3d440
Merge branch 'PHP-7.4' into PHP-8.0
bukka Nov 14, 2021
48bc4ea
Merge branch 'PHP-8.0' into PHP-8.1
bukka Nov 14, 2021
14db5fa
Merge branch 'PHP-8.1'
bukka Nov 14, 2021
ab5e908
Fixed compilation warnings in 32-bit build
dstogov Nov 15, 2021
f15f8fc
Fix #79971: special character is breaking the path in xml function
cmb69 Sep 1, 2020
ca87d46
Merge branch 'PHP-7.3' into PHP-7.4
smalyshev Nov 15, 2021
0ef1dfc
Merge branch 'PHP-7.4' into PHP-8.0
smalyshev Nov 15, 2021
9d74c5b
Merge branch 'PHP-8.0'
smalyshev Nov 15, 2021
9de4eb9
Merge branch 'PHP-8.0' into PHP-8.1
smalyshev Nov 15, 2021
292d76d
JIT: Fixed reference-counting inference
dstogov Nov 15, 2021
fb582f4
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 15, 2021
b976e75
Merge branch 'PHP-8.1'
dstogov Nov 15, 2021
267a7b0
Fix new simplexml test
nikic Nov 15, 2021
ed26ccc
Merge branch 'PHP-8.1'
nikic Nov 15, 2021
0993821
Remove unused `check_flags` argument from `zend_is_callable_check_fun…
Jeckerson Nov 13, 2021
45f5228
Fix bug #81618: Correct dns_get_record on FreeBSD
fsbruva Nov 14, 2021
4a26563
Merge branch 'PHP-7.4' into PHP-8.0
nikic Nov 15, 2021
822047f
Merge branch 'PHP-8.0' into PHP-8.1
nikic Nov 15, 2021
32ecdb5
Merge branch 'PHP-8.1'
nikic Nov 15, 2021
c0441f9
Replace SKIPIF with EXTENSIONS
nikic Nov 15, 2021
68ca387
Fix generation of property with class union type
nikic Nov 15, 2021
d362cae
Merge branch 'PHP-8.1'
nikic Nov 15, 2021
f313b65
Optimize closures nested in other closures
dstogov Nov 15, 2021
e1c5615
Merge branch 'PHP-8.1'
dstogov Nov 15, 2021
85066fd
Tracing JIT: Fixed failure on non-optimized op_arrays (op_array->T ma…
dstogov Nov 15, 2021
dca0112
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 15, 2021
24d0e21
Merge branch 'PHP-8.1'
dstogov Nov 15, 2021
fc35a6b
Tracing JIT: Fixed abstract stack consistency for [QM_]ASSIGN of CV t…
dstogov Nov 15, 2021
f65144f
Merge branch 'PHP-8.0' into PHP-8.1
dstogov Nov 15, 2021
80d2ade
Merge branch 'PHP-8.1'
dstogov Nov 15, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
28 changes: 28 additions & 0 deletions .cirrus.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
env:
CIRRUS_CLONE_DEPTH: 1
ARCH: amd64

freebsd_instance:
image_family: freebsd-13-0

task:
name: FREEBSD_DEBUG_NTS
install_script:
#- sed -i -e 's/quarterly/latest/g' /etc/pkg/FreeBSD.conf
#- pkg upgrade -y
- kldload accf_http
- pkg install -y autoconf bison gmake re2c icu libiconv png freetype2 enchant2 bzip2 krb5 t1lib gmp tidyp libsodium libzip libxml2 libxslt openssl oniguruma pkgconf webp libavif
script:
- ./buildconf -f
- ./configure --prefix=/usr/local --enable-debug --enable-option-checking=fatal --enable-fpm --with-pdo-sqlite --without-pear --with-bz2 --with-avif --with-jpeg --with-webp --with-freetype --enable-gd --enable-exif --with-zip --with-zlib --enable-soap --enable-xmlreader --with-xsl --with-libxml --enable-shmop --enable-pcntl --enable-mbstring --with-curl --enable-sockets --with-openssl --with-iconv=/usr/local --enable-bcmath --enable-calendar --enable-ftp --with-kerberos --with-ffi --enable-zend-test --enable-intl --with-mhash --with-sodium --enable-werror --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d
- gmake -j2
- mkdir /etc/php.d
- gmake install
- echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
- echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
# Specify opcache.preload_user as we're running as root.
- echo opcache.preload_user=root >> /etc/php.d/opcache.ini
tests_script:
- export SKIP_IO_CAPTURE_TESTS=1
- export CI_NO_IPV6=1
- sapi/cli/php run-tests.php -P -q -j2 -g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP --offline --show-diff --show-slow 1000 --set-timeout 120 -d zend_extension=opcache.so
7 changes: 3 additions & 4 deletions .gdbinit
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@ end

define ____executor_globals
if basic_functions_module.zts
if !$tsrm_ls
set $tsrm_ls = ts_resource_ex(0, 0)
end
set $tsrm_ls = _tsrm_ls_cache
set $eg = ((zend_executor_globals*) (*((void ***) $tsrm_ls))[executor_globals_id-1])
set $cg = ((zend_compiler_globals*) (*((void ***) $tsrm_ls))[compiler_globals_id-1])
set $eg_ptr = $eg
Expand Down Expand Up @@ -340,7 +338,8 @@ define ____print_ht
end
printf "[%d] ", $i
if $p->key
printf "%s => ", $p->key->val
____print_str $p->key->val $p->key->len
printf " => "
else
printf "%d => ", $p->h
end
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@
# Standard object files generated during build process
*.o

# Dependency files generated during build process
*.dep

# Cache directories created by Autoconf tools
autom4te.cache/

Expand Down
18 changes: 5 additions & 13 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,18 +68,10 @@ env:

jobs:
include:
- env: ENABLE_ZTS=0 ENABLE_DEBUG=0
arch: amd64
if: type = cron
- env: ENABLE_ZTS=1 ENABLE_DEBUG=1
arch: amd64
if: type = cron
- env: ENABLE_ZTS=1 ENABLE_DEBUG=1 SKIP_IO_CAPTURE_TESTS=1 ARM64=1
- env: ENABLE_ZTS=1 ENABLE_DEBUG=1 ARM64=1
arch: arm64
if: type = cron
- env: ENABLE_ZTS=1 ENABLE_DEBUG=1 SKIP_IO_CAPTURE_TESTS=1 S390X=1
- env: ENABLE_ZTS=1 ENABLE_DEBUG=1 S390X=1
arch: s390x
if: type = cron

before_script:
- ccache --version
Expand All @@ -95,9 +87,9 @@ before_script:

# Run PHPs run-tests.php
script:
# ARM64 CI reports nproc=32, which is excessive.
- if [ -z "$ARM64" ]; then export JOBS=$(nproc); else export JOBS=16; fi
- ./sapi/cli/php run-tests.php -P -d extension=`pwd`/modules/zend_test.so $(if [ $ENABLE_DEBUG == 0 ]; then echo "-d opcache.enable_cli=1 -d opcache.protect_memory=1 -d opcache.jit_buffer_size=16M -d zend_extension=`pwd`/modules/opcache.so"; fi) -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --offline --show-diff --show-slow 1000 --set-timeout 120 -j$JOBS
- ./travis/test.sh -d opcache.jit_buffer_size=16M -d opcache.jit=tracing
- if [[ "$ARM64" == 1 ]]; then ./travis/test.sh -d opcache.jit_buffer_size=16M -d opcache.jit=function; fi
- if [[ "$ARM64" == 1 ]]; then ./travis/test.sh -d opcache.jit_buffer_size=16M -d opcache.jit=tracing --repeat 2; fi
- sapi/cli/php -d extension_dir=`pwd`/modules -r 'dl("zend_test");'

after_success:
Expand Down
53 changes: 17 additions & 36 deletions CODING_STANDARDS.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,39 @@
# PHP coding standards

This file lists several standards that any programmer adding or changing code in
PHP should follow. Since this file was added at a very late stage of the
development of PHP v3.0, the code base does not fully follow it, but new
features are going in that general direction. Many sections have been recoded to
use these rules.
This file lists standards that any programmer adding or changing code in
PHP should follow. The code base does not yet fully follow it, but new
features are going in that general direction. Many sections have been
rewritten to comply with these rules.

## Code implementation

1. Document your code in source files and the manual. (tm)

2. Functions that are given pointers to resources should not free them.

For instance, `function int mail(char *to, char *from)` should NOT free to
and/or from.
For instance, `function int mail(char *to, char *from)` should NOT free `to`
and/or `from`.

Exceptions:

* The function's designated behavior is freeing that resource. E.g.
`efree()`

* The function is given a boolean argument, that controls whether or not the
function may free its arguments (if true - the function must free its
arguments, if false - it must not)
function may free its arguments (if true, the function must free its
arguments; if false, it must not)

* Low-level parser routines, that are tightly integrated with the token
cache and the bison code for minimum memory copying overhead.

3. Functions that are tightly integrated with other functions within the same
module, and rely on each other non-trivial behavior, should be documented as
module, and rely on each other's non-trivial behavior, should be documented as
such and declared `static`. They should be avoided if possible.

4. Use definitions and macros whenever possible, so that constants have
meaningful names and can be easily manipulated. The only exceptions to this
rule are 0 and 1, when used as `false` and `true` (respectively). Any other
use of a numeric constant to specify different behavior or actions should be
done through a `#define`.
meaningful names and can be easily manipulated. Any use of a numeric
constant to specify different behavior or actions should be done through
a `#define`.

5. When writing functions that deal with strings, be sure to remember that PHP
holds the length property of each string, and that it shouldn't be
Expand Down Expand Up @@ -260,35 +258,18 @@ use these rules.
```

4. When indenting, use the tab character. A tab is expected to represent four
spaces. It is important to maintain consistency in indenture so that
spaces. It is important to maintain consistency in indentation so that
definitions, comments, and control structures line up correctly.

5. Preprocessor statements (`#if` and such) MUST start at column one. To indent
preprocessor directives you should put the `#` at the beginning of a line,
followed by any number of whitespace.
followed by any number of spaces.

## Testing

1. Extensions should be well tested using `*.phpt` tests. Read about that at
1. Extensions should be well tested using `*.phpt` tests. Read more at
[qa.php.net](https://qa.php.net/write-test.php) documentation.

## Folding hooks

Use `{{{` symbols for the folding mode in Emacs and vim (`set fdm=marker`).
Folding is very useful when dealing with large files because you can scroll
through the file quickly and just unfold the function you wish to work on.
The `}}}` at the end of each function marks the end of the fold, and should
be on a separate line.

```c
/* {{{ Returns the absolute value of the number */
PHP_FUNCTION(abs)
{
...
}
/* }}} */
```

## New and experimental functions

To reduce the problems normally associated with the first public implementation
Expand All @@ -302,8 +283,8 @@ The file labelled `EXPERIMENTAL` should include the following information:
* Any authoring information (known bugs, future directions of the module).
* Ongoing status notes which may not be appropriate for Git comments.

In general new features should go to PECL or experimental branches until there
are specific reasons for directly adding it to the core distribution.
In general, new features should go to PECL or experimental branches until there
are specific reasons for directly adding them to the core distribution.

## Aliases & legacy documentation

Expand Down
20 changes: 10 additions & 10 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Anybody who programs in PHP can be a contributing member of the community that
develops and deploys it; the task of deploying PHP, documentation and associated
websites is a never ending one. With every release, or release candidate comes a
websites is a never-ending one. With every release or release candidate comes a
wave of work, which takes a lot of organization and co-ordination.

You don't need any special access to download, build, debug and begin submitting
Expand Down Expand Up @@ -85,7 +85,7 @@ for additional notes on the best way to approach submitting an RFC.

## Writing tests

We love getting new tests! PHP is a huge project and improving code coverage is
We love getting new tests! PHP is a huge project and improving test coverage is
a huge win for every PHP user.

[Our QA site includes a page detailing how to write test cases.](https://qa.php.net/write-test.php)
Expand Down Expand Up @@ -135,6 +135,7 @@ locations.
├─ .git/ # Git configuration and source directory
├─ TSRM/ # Thread Safe Resource Manager
└─ Zend/ # Zend Engine
├─ asm/ # Bundled from src/asm in https://github.com/boostorg/context
├─ zend_vm_execute.h # Generated by `Zend/zend_vm_gen.php`
├─ zend_vm_opcodes.c # Generated by `Zend/zend_vm_gen.php`
├─ zend_vm_opcodes.h # Generated by `Zend/zend_vm_gen.php`
Expand All @@ -146,6 +147,7 @@ locations.
├─ config.sub # https://git.savannah.gnu.org/cgit/config.git
├─ libtool.m4 # https://git.savannah.gnu.org/cgit/libtool.git
├─ ltmain.sh # https://git.savannah.gnu.org/cgit/libtool.git
├─ pkg.m4 # https://gitlab.freedesktop.org/pkg-config/pkg-config
├─ shtool # https://www.gnu.org/software/shtool/
└─ ...
├─ docs/ # PHP internals and repository documentation
Expand Down Expand Up @@ -253,30 +255,30 @@ included.

- Read [Coding standards](/CODING_STANDARDS.md) before you start working.
- Update git source just before running your final `diff` and before testing.
- Add in-line comments and/or have external documentation ready. Use only
- Add inline comments and/or have external documentation ready. Use only
`/* */` style comments, not `//`.
- Create test scripts for use with `make test`.
- Run `make test` to check your change doesn't break other features.
- Rebuild PHP with `--enable-debug` which will show some kinds of memory errors
and check the PHP and web server error logs after running your PHP tests.
- Rebuild PHP with `--enable-zts` to check your change compiles and operates
correctly in a thread safe PHP.
correctly in a thread-safe PHP.
- Review the change once more just before submitting it.

## What happens after submitting contribution?

If your change is easy to review and obviously has no side-effects, it might be
committed relatively quickly.

Because PHP is a volunteer-driven effort more complex changes will require
Because PHP is a volunteer-driven effort, more complex changes will require
patience on your side. If you do not receive feedback in a few days, consider
bumping. Before doing this think about these questions:

- Did I send the patch to the right mailing list?
- Did I review the mailing list archives to see if these kind of changes had
been discussed before?
- Did I explain my change clearly?
- Is my change too hard to review? Because of what factors?
- Is my change too hard to review? If so, why?

## What happens when your contribution is applied?

Expand Down Expand Up @@ -327,7 +329,8 @@ Currently we have the following branches in use:

| Branch | |
| --------- | --------- |
| master | Active development branch for PHP 8.1, which is open for backwards incompatible changes and major internal API changes. |
| master | Active development branch for PHP 8.2, which is open for backwards incompatible changes and major internal API changes. |
| PHP-8.1 | Is used to release the PHP 8.1.x series. This is a current stable version and is open for bugfixes only. |
| PHP-8.0 | Is used to release the PHP 8.0.x series. This is a current stable version and is open for bugfixes only. |
| PHP-7.4 | Is used to release the PHP 7.4.x series. This is a current stable version and is open for bugfixes only. |
| PHP-7.3 | Is used to release the PHP 7.3.x series. This is a current stable version and is open for bugfixes only. |
Expand Down Expand Up @@ -398,9 +401,6 @@ Example:
When you change the NEWS file for a bug fix, then please keep the bugs sorted in
decreasing order under the fixed version.

You can use [gitweb](https://git.php.net/) to look at PHP Git repository in
various ways.

## Copyright and license headers

New source code files should include the following header block:
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2019 The PHP Group. All rights reserved.
Copyright (c) 1999 - 2021 The PHP Group. All rights reserved.
--------------------------------------------------------------------

Redistribution and use in source and binary forms, with or without
Expand Down
29 changes: 13 additions & 16 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,25 +1,22 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? ????, PHP 8.1.0alpha1
?? ??? ????, PHP 8.2.0alpha1

- Core:
. Fixed inclusion order for phpize builds on Windows. (cmb)
. Added missing hashtable insertion APIs for arr/obj/ref. (Sara)

- FTP:
. Convert resource<ftp> to object \FTPConnection. (Sara)
- CLI:
. Fixed bug #81496 (Server logs incorrect request method). (lauri)

- GD:
. Convert resource<gd font> to object \GdFont. (Sara)
- Core:
. Fixed bug #81380 (Observer may not be initialized properly). (krakjoe)

- hash:
. Implemented FR #68109 (Add MurmurHash V3). (Anatol, Michael)
- Intl:
. Update all grandfathered language tags with preferred values

- OpenSSL:
. Bump minimal OpenSSL version to 1.0.2. (Jakub Zelenka)
- OCI8:
. Added oci8.prefetch_lob_size directive to tune LOB query performance

- PSpell:
. Convert resource<pspell> to object \PSpell. (Sara)
. Convert resource<pspell config> to object \PSPellConfig. (Sara)
- Zip:
. add ZipArchive::clearError() method
. add ZipArchive::getStreamName() method
. add ZipArchive::getStreamIndex() method

<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
24 changes: 13 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ web development. Fast, flexible and pragmatic, PHP powers everything from your
blog to the most popular websites in the world. PHP is distributed under the
[PHP License v3.01](LICENSE).

[![Build status](https://travis-ci.org/php/php-src.svg?branch=master)](https://travis-ci.org/php/php-src)
[![Build status](https://travis-ci.com/php/php-src.svg?branch=master)](https://travis-ci.com/php/php-src)
[![Build status](https://ci.appveyor.com/api/projects/status/meyur6fviaxgdwdy/branch/master?svg=true)](https://ci.appveyor.com/project/php/php-src)
[![Build Status](https://dev.azure.com/phpazuredevops/php/_apis/build/status/php.php-src?branchName=master)](https://dev.azure.com/phpazuredevops/php/_build/latest?definitionId=1&branchName=master)
[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/php.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:php)
Expand All @@ -40,12 +40,17 @@ For other systems, see the [installation chapter](https://php.net/install).
*For Windows, see [Build your own PHP on Windows](https://wiki.php.net/internals/windows/stepbystepbuild_sdk_2).*

For a minimal PHP build from Git, you will need autoconf, bison, and re2c. For
a default build, you will additionally need libxml2 and libsqlite3. On Ubuntu,
you can install these using:
a default build, you will additionally need libxml2 and libsqlite3.

On Ubuntu, you can install these using:

sudo apt install -y pkg-config build-essential autoconf bison re2c \
libxml2-dev libsqlite3-dev

On Fedora, you can install these using:

sudo dnf install re2c bison autoconf make libtool ccache libxml2-devel sqlite-devel

Generate configure:

./buildconf
Expand Down Expand Up @@ -98,10 +103,8 @@ Extension Community Library - [PECL](https://pecl.php.net).

## Contributing

The PHP source code is located in the Git repository at
[git.php.net](https://git.php.net). Contributions are most welcome by forking
the [GitHub mirror repository](https://github.com/php/php-src) and sending a
pull request.
Contributions are most welcome by forking the
[GitHub repository](https://github.com/php/php-src) and sending a pull request.

Discussions are done on GitHub, but depending on the topic can also be relayed
to the official PHP developer mailing list [email protected].
Expand All @@ -122,9 +125,8 @@ ticket at [bugs.php.net](https://bugs.php.net) and reference the bug id using
magic_quotes behavior and therefore should not raise a warning at any time.
The patch removes this warning.

Pull requests are not merged directly on GitHub. All PRs will be pulled and
pushed through [git.php.net](https://git.php.net). See
[Git workflow](https://wiki.php.net/vcs/gitworkflow) for more details.
See [Git workflow](https://wiki.php.net/vcs/gitworkflow) for more details on the
pull request workflow.

### Guidelines for contributors

Expand All @@ -133,7 +135,7 @@ contribute:

- [Contributing to PHP](/CONTRIBUTING.md)
- [PHP coding standards](/CODING_STANDARDS.md)
- [Mailinglist rules](/docs/mailinglist-rules.md)
- [Mailing list rules](/docs/mailinglist-rules.md)
- [PHP release process](/docs/release-process.md)

## Credits
Expand Down
Loading