Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1055 commits
Select commit Hold shift + click to select a range
ae9f6e7
Add IntlDatePatternGenerator (#6771)
deltragon Jun 10, 2021
0877738
Fix bug #81119
nikic Jun 10, 2021
d43bc34
Merge branch 'PHP-8.0'
nikic Jun 10, 2021
cb3964a
move zend_vm_stack_new_page into header for sharing with fibers
krakjoe Jun 10, 2021
ef5de9f
ditch function from zend_fiber
krakjoe Jun 10, 2021
9ef313d
bug81119.phpt requires ext/gmp
cmb69 Jun 10, 2021
b0dcc4c
Functions with static variables are not separated anymore.
dstogov Jun 10, 2021
fe4fcc8
Fix typo in ezmlm command in release-process doc
ramsey Jun 10, 2021
bd98d84
Reorder conditions and always mark methods in SHM as ZEND_ACC_IMMUTABLE
dstogov Jun 10, 2021
21f2ff7
Fix #81120: PGO data for main PHP DLL are not used
cmb69 Jun 10, 2021
16feae5
Merge branch 'PHP-8.0'
cmb69 Jun 10, 2021
e6e6b3e
Improve fiber interoperability (#7128)
trowski Jun 11, 2021
4f51a11
Enable net_get_interfaces on IBM i PASE
NattyNarwhal Jun 10, 2021
ca6f3f6
Merge branch '7136' into PHP-8.0
krakjoe Jun 11, 2021
9068b27
Merge branch 'PHP-8.0'
krakjoe Jun 11, 2021
b10bcb4
fix bad refactor of #7136
krakjoe Jun 11, 2021
ec9ce49
Merge branch 'PHP-8.0'
krakjoe Jun 11, 2021
7aa0d74
Use non-cron builds on travis
nikic Jun 11, 2021
62ed41d
Create filter_null_on_failure.phpt 
realFlowControl Jun 10, 2021
f172bb3
Regenerate stubs
nikic Jun 11, 2021
c8ff5a1
Fix assertions
dstogov Jun 11, 2021
7485978
Migrate SKIPIF -> EXTENSIONS (#7138)
nikic Jun 11, 2021
e0dc84d
Fix test file name
nikic Jun 11, 2021
e989492
Drop handling for PHP_CURL_HTTP_REMOVE_SERVER
nikic Jun 11, 2021
3913121
Migrate more SKIPIF -> EXTENSIONS (#7139)
nikic Jun 11, 2021
8567bc1
Port curl, xml, xsql to use EXTENSIONS (#7140)
nikic Jun 11, 2021
4083600
Port mbstring to use EXTENSIONS
nikic Jun 11, 2021
ea126c5
Fix EXTENSIONS for cgi tests
nikic Jun 11, 2021
b5a14e6
Port skipif.inc files to EXTENSIONS
nikic Jun 11, 2021
d0c43e1
Reorganize zend_test and add custom fiber implementation tests (#7137)
trowski Jun 11, 2021
7df3fd9
Change stack field to a pointer in fiber context
trowski Jun 11, 2021
039f0fe
Destroy previous fiber context in trampoline as needed (#7143)
kooldev Jun 12, 2021
f5c2099
Add test for leaking prior context with symmetric coroutines
trowski Jun 12, 2021
cded43f
drop phpdbg web helper extension and wait command (#7144)
krakjoe Jun 13, 2021
69520ab
fix news
krakjoe Jun 13, 2021
9245423
Merge branch 'master' of github.com:php/php-src
krakjoe Jun 13, 2021
c292265
Set BUILD_CC for phpize
krakjoe Jun 13, 2021
edc0d76
Merge branch '81133'
krakjoe Jun 13, 2021
d15e10d
Fix test wrt. OPENSSL_CONF
cmb69 Jun 13, 2021
876bf88
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 13, 2021
4633a90
Merge branch 'PHP-8.0'
cmb69 Jun 13, 2021
766e6b0
ditch remote
krakjoe Jun 13, 2021
9a0cc69
Use 16 instead of 15 bytes of random data in ReflectionReference->get…
TysonAndre Jun 13, 2021
16d499a
Merge branch 'phpdbg-no-remote'
krakjoe Jun 13, 2021
ce41e22
Merge branch 'master' of github.com:php/php-src
krakjoe Jun 13, 2021
2c33578
Fix #81135 unknown help topic in phpdbg fails assertion
krakjoe Jun 13, 2021
f075571
Merge branch '81135'
krakjoe Jun 13, 2021
aee1daa
Remove temporary workaround for installing libavif
cmb69 Jun 13, 2021
ff23a34
define SO_ACCEPTFILTER separately where supported (#7146)
devnexen Jun 14, 2021
805471e
Fix bug #81112: Implement JsonSerializable for SplFixedArray
nikic Jun 8, 2021
71fb835
Fix bug #80945: Don't throw undefined array key warning in ArrayObjec…
nikic Jun 8, 2021
1c08f8a
Allow named args after unpack
nikic May 18, 2021
7485682
Make LDAPCONF test work on windows
nikic Jun 11, 2021
849a34e
Use EXTENSIONS section for ldap
nikic Jun 11, 2021
5dc31e0
Fixed bug #80197
nikic Jun 14, 2021
b6fa386
Regenerate arginfo file
nikic Jun 14, 2021
4a10752
Merge branch 'PHP-8.0'
nikic Jun 14, 2021
a297c66
Fix #81136 opcache header not installed, causing shared build to fail
krakjoe Jun 14, 2021
821a5a1
Drop fast_div_function
nikic Jun 14, 2021
72c0deb
Revert "hrtime implementation update for Mac"
krakjoe Jun 14, 2021
72f47c0
Remove duplicate entries in EXTENSIONS
nikic Jun 14, 2021
e378968
Fix EXTENSIONS section for pgsql
nikic Jun 14, 2021
6600ad6
Add some missing EXTENSIONS sections to misc tests
nikic Jun 14, 2021
a148ea2
Add missing dba extension requirement in pgsql test
nikic Jun 14, 2021
584dc19
Move tests requiring pdo_sqlite into ext directory
nikic Jun 14, 2021
fcccb4c
Add missing zend_test dependency
nikic Jun 14, 2021
1eaaabc
Move test from intl to iconv
nikic Jun 14, 2021
a06d015
Remove unnecessary mbstring skipifs
nikic Jun 14, 2021
06053e9
Remove unnecessary curl version guards in stubs
nikic Jun 14, 2021
ca423a1
Remove unnecessary curl skipifs
nikic Jun 14, 2021
6ce9076
Remove unnecessary skipifs in date
nikic Jun 14, 2021
892421c
Make some zend_test dependencies explicit
nikic Jun 14, 2021
9871a62
Clean up some more function_exists() checks
nikic Jun 14, 2021
fdc2274
Add API to prevent Fiber switch in select contexts
trowski Jun 14, 2021
859524c
Remove fiber context embedding
trowski Jun 14, 2021
139a73b
Improve performance of AppVeyor test runs
cmb69 Jun 14, 2021
b81c3b5
Prepare for PHP 8.0.9
carusogabriel Jun 15, 2021
f460634
reset blocking state on init
krakjoe Jun 15, 2021
ba3c802
Adds zend_fiber_startup at the right stage, moves setting of switch h…
krakjoe Jun 15, 2021
0eafc97
Fix prototype
nikic Jun 15, 2021
34257e1
Remove unnecessary IS_UNUSED check
nikic Jun 15, 2021
b642138
Fix missing error for single index unset on wrong type
nikic Jun 15, 2021
5d4f055
Drop fiber block hooks
trowski Jun 15, 2021
8370a08
Prepare for 7.4.22
derickr Jun 15, 2021
77bfe96
Merge branch 'PHP-7.4' into PHP-8.0
derickr Jun 15, 2021
e63ed9d
Merge branch 'PHP-8.0'
derickr Jun 15, 2021
8ae0658
Fixed incorrect map_ptr slots counting
dstogov Jun 16, 2021
0f1b17e
Fix #72809: Locale::lookup() wrong result with canonicalize option
cmb69 Jun 14, 2021
13f3999
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 16, 2021
46a6d48
Merge branch 'PHP-8.0'
cmb69 Jun 16, 2021
591dcdb
Use different error condition in ACCEL_LOG_FATAL test
nikic Jun 16, 2021
3a78259
JIT: Avoid too aggressive loop unrolling
dstogov Jun 16, 2021
3acdab8
Fix printf formats in mysql debug logging
nikic Jun 16, 2021
57f06b6
Fix more mysqlnd debug printf formats
nikic Jun 16, 2021
c492c90
Fix mysqlnd debug formats on 32-bit
nikic Jun 16, 2021
7eec57c
Test ARM64 JIT on Travis (#7157)
nikic Jun 16, 2021
0d6358f
Drop support for printf p modifier
nikic Jun 16, 2021
5d37cd9
Improve documentation for contributors
alexdowad May 30, 2021
deb7955
Fix #81150 Add UPGRADING note for float to int deprecation
nikic Jun 17, 2021
df16fd1
Fixed incorrect type inference for "(array)$null".
dstogov Jun 17, 2021
cc0aac3
Merge branch 'PHP-8.0'
dstogov Jun 17, 2021
7502c86
Add test suite for UTF-{7,8,16,32}
alexdowad Oct 13, 2020
e245985
Remove duplicate implementation of CP932 from mbstring
alexdowad Oct 22, 2020
9868c17
Mark CP932 and CP51932 encoding tests as 'slow tests'
alexdowad Jun 2, 2021
4550036
Minor formatting tweaks in mbfilter_uhc.c
alexdowad May 8, 2021
caeaa66
Strict conversion of UHC text to Unicode
alexdowad May 8, 2021
958ef47
When flushing CP5022x conversion filter, also flush next filter in chain
alexdowad May 8, 2021
b1ab76f
Minor formatting tweaks in mbfilter_euc_kr.c
alexdowad May 8, 2021
2555efa
Fix #81145: copy() and stream_copy_to_stream() fail for +4GB files
cmb69 Jun 17, 2021
8daed6d
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 17, 2021
8351734
Merge branch 'PHP-8.0'
cmb69 Jun 17, 2021
1082669
JIT: Fixed failures of tracing JIT with CALL VM
dstogov Jun 17, 2021
6442cbf
Merge branch 'PHP-8.0'
dstogov Jun 17, 2021
82bcc9b
JIT/ARM64: Fixed "may be used uninitialized" compilation warning
dstogov Jun 17, 2021
6318040
remove specialized printing from phpdbg (#7156)
krakjoe Jun 17, 2021
ced8e88
JIT/x86: Fixed possible incorrect register allocation
dstogov Jun 17, 2021
c02d7c4
Merge branch 'PHP-8.0'
dstogov Jun 17, 2021
d72c320
JIT/ARM64: Fixed possible incorrect register allocation
dstogov Jun 17, 2021
99e7c5c
Fix test in case fallocate(1) is available, but fails
cmb69 Jun 17, 2021
3374adc
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 17, 2021
22d700b
Merge branch 'PHP-8.0'
cmb69 Jun 17, 2021
ff11459
Refactor spl_array_has_dimension_ex()
Girgias Jun 17, 2021
acb7803
Add proper EXTENSIONS section for tests in Zend/
Girgias Jun 18, 2021
d4ead60
Do not expose fiber VM state management (#7170)
kooldev Jun 18, 2021
0d9269d
Extract helper for fetching class entry in optimizer
nikic Jun 18, 2021
bc59b04
Fix bug #81163 indirect vars in __sleep
krakjoe Jun 18, 2021
7bf930d
Merge branch 'PHP-7.4' into PHP-8.0
krakjoe Jun 18, 2021
a30fab5
Make can_elide_return_type_check() more robust
nikic Jun 18, 2021
fba4391
Fix bug #81163 __sleep allowed to return non-array
krakjoe Jun 18, 2021
ed88dae
missing news/upgrading entry
krakjoe Jun 18, 2021
be369de
Deduplicate code for handling zend_type in inference
nikic Jun 18, 2021
ceb6fa6
Convert some recently introduced zend_bool to bool
patrickallaert Jun 18, 2021
e9e0627
Refactor SplFixedArray (#7168)
Girgias Jun 18, 2021
c5f9cde
Flexible fiber bailout handling (#7163)
kooldev Jun 18, 2021
865fb35
Rename Fiber::this() to Fiber::getCurrent() (#7155)
trowski Jun 18, 2021
f0fd592
Fix bug #81159: Object to int warning when using an object as a strin…
Girgias Jun 17, 2021
351629a
Fix test
Girgias Jun 18, 2021
4939d2c
Merge branch 'PHP-8.0'
Girgias Jun 18, 2021
c66fd72
Fix deprecated float to int tests
Girgias Jun 18, 2021
f71d62e
Fiber cleanup
trowski Jun 19, 2021
15dcdd7
Remove copying of fiber result to transfer value
trowski Jun 19, 2021
1a1d86d
pcre: Workaround bug #81101
weltling Jun 6, 2021
ed431ea
Merge branch 'PHP-7.4' into PHP-8.0
weltling Jun 19, 2021
f7ab795
pcre: Workaround bug #81101
weltling Jun 6, 2021
8ac2ae8
Merge branch 'PHP-8.0'
weltling Jun 19, 2021
4d8eb89
NEWS: Add bug #81101 note
weltling Jun 19, 2021
ad2d9d9
Merge branch 'PHP-7.4' into PHP-8.0
weltling Jun 19, 2021
2b94872
NEWS: Add bug #81101 note
weltling Jun 19, 2021
578b67d
Merge branch 'PHP-8.0'
weltling Jun 19, 2021
28a1a6b
phar: use crc32 bulk method instead. (#6099)
frankdjx Jun 19, 2021
e748dca
Allow build/gen_stub.php to process multiple CLI file args (#7179)
TysonAndre Jun 20, 2021
a5538c6
Fix #81122: SSRF bypass in FILTER_VALIDATE_URL
cmb69 Jun 14, 2021
286162e
Fix #76452: Crash while parsing blob data in firebird_fetch_blob
cmb69 May 5, 2021
bcbf8aa
Fix #76450: SIGSEGV in firebird_stmt_execute
cmb69 Apr 30, 2021
08da7c7
Fix #76449: SIGSEGV in firebird_handle_doer
cmb69 Apr 30, 2021
67afa32
Fix #76448: Stack buffer overflow in firebird_info_cb
cmb69 Apr 29, 2021
c68a687
Update NEWS
smalyshev Jun 21, 2021
fb70194
UPGRADING: update information re: return type for internal methods (#…
jrfnl Jun 22, 2021
c4a005b
exposing few macOS socket options to give hints how to handle data,
devnexen Jun 9, 2021
0ca5ab4
Add host for php_network_getaddresses getaddrinfo failed error messag…
beberlei Jun 22, 2021
ac82c00
The master branch is now for 8.1.0alpha3
ramsey Jun 22, 2021
b83bfb2
make new API public (#7185)
remicollet Jun 22, 2021
3e164de
JIT/AArch64: Support shifted immediate (#7165)
shqking Jun 23, 2021
973ae8d
Move the whole "cold" path into the "cold" function.
dstogov Jun 23, 2021
3221a4c
Remove " " being considered as an invalid filename for `is_file()`
patrickallaert Jun 22, 2021
182e3ac
Removing obsolete tests
patrickallaert Jun 23, 2021
970d659
Fix libmysql test cases (#7097)
kamil-tekiela Jun 25, 2021
f699c96
Fix broken test due to missing skipif.inc
kamil-tekiela Jun 25, 2021
db64aa3
optimize skip condition for the test
kamil-tekiela Jun 25, 2021
39a54e2
Fix #81202 powerpc64 build fails on fibers
krakjoe Jun 26, 2021
e00b3ec
Fix false positive recursion warning for var_export of enums (#7201)
TysonAndre Jun 26, 2021
2327e3d
Merge branch 'PHP-7.3' into PHP-7.4
smalyshev Jun 28, 2021
892674e
Merge branch 'PHP-7.4' into PHP-8.0
smalyshev Jun 28, 2021
d72e82b
Merge branch 'PHP-8.0'
smalyshev Jun 28, 2021
1900137
Fix warning
smalyshev Jun 28, 2021
4957b7c
Merge branch 'PHP-8.0'
smalyshev Jun 28, 2021
aad0d26
Fix bug #81200 ReflectionMethod::isStatic belongs on ReflectionFuncti…
krakjoe Jun 25, 2021
b11785c
Fixed bug #81085: Add version 7.71.0 blob options.
camporter Jun 25, 2021
0e932f7
Don't directly include zend_jit_gdb.c
nikic Jun 28, 2021
6157fcc
Fix typedef redefinition warnings.
GaneshKandu Jun 26, 2021
64525b6
Run phpunit job even if previous failed
nikic Jun 28, 2021
7713302
Implemented Fiber GC handler
kooldev Jun 28, 2021
1a01f78
Fix #68471: IntlDateFormatter fails for "GMT+00:00" timezone
cmb69 Jun 23, 2021
1bf2b04
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 28, 2021
1ae3438
Merge branch 'PHP-8.0'
cmb69 Jun 28, 2021
7bab67c
Fix warning
smalyshev Jun 28, 2021
178a8bd
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 28, 2021
edc87a5
Merge branch 'PHP-8.0'
cmb69 Jun 28, 2021
773e9ba
Mention ReturnTypeWillChange attribute in the error message (#7183)
kocsismate Jun 28, 2021
66442a5
Allow creating Graceful/UnwindExit and use when destroying a fiber (#…
trowski Jun 28, 2021
f5cba2d
[ci skip] Fix NEWS format
cmb69 Jun 29, 2021
b6130dd
Merge branch 'PHP-7.3' into PHP-7.4
cmb69 Jun 29, 2021
fa177a8
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 29, 2021
a233bfc
Merge branch 'PHP-8.0'
cmb69 Jun 29, 2021
aff3658
Fixed some spaces used instead of tabs
patrickallaert Jun 29, 2021
1e5c3c1
Fix conversion of HZ text (and add test suite)
alexdowad Jun 19, 2021
ebae1a4
Fix conversion of CP936 text (and add test suite)
alexdowad Jun 19, 2021
ddea066
Remove table generation scripts which have not been used for years
alexdowad Jun 17, 2021
69c979a
Fix conversion of EUC-KR text (and add test suite)
alexdowad Jun 19, 2021
8b25e38
Fix conversion of EUC-CN text (and add test suite)
alexdowad Jun 19, 2021
ff85ed8
Fix conversion of EUC-TW text (and add test suite)
alexdowad Jun 19, 2021
53ea910
7.3.30 is next
cmb69 Jun 29, 2021
40332be
[ci skip] Merge branch 'PHP-7.3' into PHP-7.4
cmb69 Jun 29, 2021
5d612ae
[ci skip] Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 29, 2021
d7afe6e
[ci skip] Merge branch 'PHP-8.0'
cmb69 Jun 29, 2021
98a21d1
Fix bug #80728: Don't reset the timeout on ini deactivate
NattyNarwhal Feb 12, 2021
65bd8d2
Merge branch 'PHP-7.4' into PHP-8.0
nikic Jun 29, 2021
2c59a6b
Merge branch 'PHP-8.0'
nikic Jun 29, 2021
fa71a11
Disable lsan on new PDO firebird tests
nikic Jun 29, 2021
ac18dd0
Prefer EXPECT over EXPECTF
patrickallaert Jun 29, 2021
f256c3f
Move INHERITANCE_WARNING handling one layer up
nikic Jun 30, 2021
d7db570
Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']
cmb69 Jun 30, 2021
70b0330
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jun 30, 2021
0189c8b
Merge branch 'PHP-8.0'
cmb69 Jun 30, 2021
9b7b4c4
Fix new test for PHP 8
cmb69 Jun 30, 2021
970a909
Merge branch 'PHP-8.0'
cmb69 Jun 30, 2021
99c0efc
JIT/x86: Fixed possible incorrect exception catching in function JIT.
dstogov Jun 30, 2021
ef0d916
Merge branch 'PHP-8.0'
dstogov Jun 30, 2021
ff98313
JIT/ARM64: Fixed possible incorrect exception catching in function JIT.
dstogov Jun 30, 2021
0c89eda
Windows: allow GD ext without avif.dll
Jan-E Jun 26, 2021
ac99d5b
Simplify registration of unresolved classes
nikic Jul 1, 2021
65bbd92
Initialize retval on bitwise_not exception
nikic Jul 1, 2021
b976bc4
Fixed bug #81208
nikic Jul 1, 2021
adfa585
Merge branch 'PHP-8.0'
nikic Jul 1, 2021
540fed1
Fix leak on div by zero compound assignment with coercion
nikic Jul 1, 2021
d3deb82
Merge branch 'PHP-8.0'
nikic Jul 1, 2021
334387b
Fix #52093: openssl_csr_sign truncates $serial
cmb69 Jul 1, 2021
5b0a469
Merge branch 'PHP-7.4' into PHP-8.0
cmb69 Jul 1, 2021
58ca47a
Merge branch 'PHP-8.0'
cmb69 Jul 1, 2021
36f5d71
Fix leak on foreach by ref assign to property
nikic Jul 1, 2021
2efee44
Merge branch 'PHP-7.4' into PHP-8.0
nikic Jul 1, 2021
36cb48c
Merge branch 'PHP-8.0'
nikic Jul 1, 2021
353f963
Init STRLEN result when deprecation promoted to exception
nikic Jul 1, 2021
4743c7a
JIT/ARM64: Fixed incorrect trace linking.
dstogov Jul 1, 2021
bdc60fa
Fixed bug #80173
nikic Jul 2, 2021
4e66e6a
Merge branch 'PHP-7.4' into PHP-8.0
nikic Jul 2, 2021
53fba3a
Merge branch 'PHP-8.0'
nikic Jul 2, 2021
96bf925
Fix return value of wrong fucntion by-ref assign
nikic Jul 2, 2021
6617829
Merge branch 'PHP-7.4' into PHP-8.0
nikic Jul 2, 2021
3321440
Merge branch 'PHP-8.0'
nikic Jul 2, 2021
083d7f5
Reduce stack usage in php_resolve_path()
nikic Jul 2, 2021
52cf7ab
Fix bug #80072: Root live tmpvars after GC
nikic Jul 2, 2021
b653802
Avoid null pointer arithmetic in SplFixedArray
nikic Jul 2, 2021
c2a8934
Fix typo in RecursiveIteratorIterator get_gc handler
nikic Jul 2, 2021
29b8269
Fix leak of callable error if exception also thrown
nikic Jul 2, 2021
f7b1238
Handle out of order destruction of RecursiveIteratorIterator
nikic Jul 2, 2021
1b01bf3
Add missing error condition to stream_context_set_option()
nikic Jul 2, 2021
7bc0dd2
Merge branch 'PHP-8.0'
nikic Jul 2, 2021
fea437a
Reduce girl.avif by 4x
morsssss Jul 2, 2021
e7123ef
phar: crc32: Extend and cleanup API for the new bulk crc32 functions
weltling Jul 3, 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
12 changes: 5 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,10 @@ env:

jobs:
include:
- 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 @@ -89,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 rewritten 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
13 changes: 7 additions & 6 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 @@ -147,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 @@ -254,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
87 changes: 79 additions & 8 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,6 +1,43 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? ????, PHP 8.1.0alpha1
?? ??? ????, PHP 8.1.0alpha3

- Core:
. Fixed bug #81202 (powerpc64 build fails on fibers). (krakjoe)
. Fixed bug #80072 (Cyclic unserialize in TMPVAR operand may leak). (Nikita)

- Curl:
. Fixed bug #81085 (Support CURLOPT_SSLCERT_BLOB for cert strings).
(camporter)

- Reflection:
. Fixed bug #81200 (no way to determine if Closure is static). (krakjoe)

24 Jun 2021, PHP 8.1.0alpha2

- Core:
. Fixed bug #81163 (__sleep allowed to return non-array). (krakjoe)

- Opcache:
. Fixed bug #81133 (building opcache with phpize fails). (krakjoe)
. Fixed bug #81136 (opcache header not installed). (krakjoe)

- PDO OCI:
. Fixed bug #77120 (Support 'success with info' at connection).
(Sergei Morozov)

- phpdbg:
. Fixed bug #81135 (unknown help topic causes assertion failure). (krakjoe)

- SPL:
. Fixed bug #81112 (Special json_encode behavior for SplFixedArray). (Nikita)
. Fixed bug #80945 ("Notice: Undefined index" on unset() ArrayObject
non-existing key). (Nikita)

- Standard:
. Fixed bug #81137 (hrtime breaks build on OSX before Sierra). (krakjoe)

10 Jun 2021, PHP 8.1.0alpha1

- Core:
. Fixed inclusion order for phpize builds on Windows. (cmb)
Expand All @@ -9,6 +46,14 @@ PHP NEWS
function). (Nikita)
. Fixed bug #53826 (__callStatic fired in base class through a parent call if
the method is private). (Nikita)
. Implemented FR #77372 (Relative file path is removed from uploaded file).
(Björn Tantau)
. Fixed bug #81076 (incorrect debug info on Closures with implicit binds).
(krakjoe)

- Standard:
. Fixed bug #77627 (method_exists on Closure::__invoke inconsistency).
(krakjoe)

- Date:
. Fixed bug #52480 (Incorrect difference using DateInterval) (Derick)
Expand Down Expand Up @@ -52,9 +97,10 @@ PHP NEWS
. Enable process renaming on macOS. (devnexen)
. Added pm.max_spawn_rate option to configure max spawn child processes rate.
(Paulius Sapragonas)
. Fixed bug #65800 (Events port mechanism). (psumbera)

- FTP:
. Convert resource<ftp> to object \FTPConnection. (Sara)
. Convert resource<ftp> to object \FTP\Connection. (Sara)

- GD:
. Convert resource<gd font> to object \GdFont. (Sara)
Expand All @@ -64,9 +110,9 @@ PHP NEWS
. Implemented FR #73385 (Add xxHash support). (Anatol)

- LDAP:
. Convert resource<ldap link> to object \LDAP. (Máté)
. Convert resource<ldap result> to object \LDAPResult. (Máté)
. Convert resource<ldap result entry> to object \LDAPResultEntry. (Máté)
. Convert resource<ldap link> to object \LDAP\Connection. (Máté)
. Convert resource<ldap result> to object \LDAP\Result. (Máté)
. Convert resource<ldap result entry> to object \LDAP\ResultEntry. (Máté)

- MySQLi:
. Fixed bug #70372 (Emulate mysqli_fetch_all() for libmysqlclient). (Nikita)
Expand All @@ -84,19 +130,44 @@ PHP NEWS
- OpenSSL:
. Bump minimal OpenSSL version to 1.0.2. (Jakub Zelenka)

- PCRE:
. Bundled PCRE2 is 10.37.

- PDO:
. Fixed bug #40913 (PDO_MYSQL: PDO::PARAM_LOB does not bind to a stream for
fetching a BLOB). (Nikita)

. PDO MySQL:
. Fixed bug#80908 (PDO::lastInsertId() return wrong). (matt)
. Fixed bug #80908 (PDO::lastInsertId() return wrong). (matt)
. Fixed bug #81037 (PDO discards error message text from prepared
statement). (Kamil Tekiela)

. PDO ODBC:
. Implement PDO_ATTR_SERVER_VERSION and PDO_ATTR_SERVER_INFO for
PDO::getAttribute(). (Calvin Buckley)

. PDO SQLite:
. Fixed bug #38334 (Proper data-type support for PDO_SQLITE). (Nikita)

- PgSQL:
. Convert resource<pgsql link> to object \PgSql\Connection. (Máté)
. Convert resource<pgsql result> to object \PgSql\Result. (Máté)
. Convert resource<pgsql large object> to object \PgSql\Lob. (Máté)

- PSpell:
. Convert resource<pspell> to object \PSpell. (Sara)
. Convert resource<pspell config> to object \PSpellConfig. (Sara)
. Convert resource<pspell> to object \PSpell\Dictionary. (Sara)
. Convert resource<pspell config> to object \PSpell\Config. (Sara)

- readline:
. Fixed bug #72998 (invalid read in readline completion). (krakjoe)

- Reflection:
. Implement ReflectionFunctionAbstract::getClosureUsedVariables (krakjoe)

- Sodium:
. Added the XChaCha20 stream cipher functions. (P.I.E. Security Team)
. Added the Ristretto255 functions, which are available in libsodium 1.0.18.
(P.I.E. Security Team)

- SPL:
. Fixed bug #80724 (FilesystemIterator::FOLLOW_SYMLINKS remove KEY_AS_FILE
Expand Down
2 changes: 1 addition & 1 deletion 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 Down
Loading