]>
granicus.if.org Git - php/log
Nikita Popov [Wed, 10 Jul 2019 10:20:16 +0000 (12:20 +0200)]
Implement array access notice in JIT
Nikita Popov [Wed, 10 Jul 2019 10:05:24 +0000 (12:05 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Wed, 10 Jul 2019 08:28:58 +0000 (10:28 +0200)]
Throw notice on array access on illegal type
No notice is thrown for list() accesses, because we did not come
to an agreement regarding patterns like
while ([$key, $value] = yield $it->next()) { ... }
where silent null access may be desirable.
No effort is made to suppress multiple notices in access chains
likes $x[0][0][0], because the technical complexity this causes
does not seem worthwhile.
RFC: https://wiki.php.net/rfc/notice-for-non-valid-array-container
Nikita Popov [Wed, 10 Jul 2019 09:39:30 +0000 (11:39 +0200)]
Fix invalid array access in mysqli_fork test
Dmitry Stogov [Wed, 10 Jul 2019 09:41:19 +0000 (12:41 +0300)]
Reduce cost for GC references to strings and resources in JIT
Dmitry Stogov [Wed, 10 Jul 2019 09:29:26 +0000 (12:29 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Reduce cost for references to strings and resources
Dmitry Stogov [Wed, 10 Jul 2019 09:27:59 +0000 (12:27 +0300)]
Reduce cost for references to strings and resources
Nikita Popov [Wed, 10 Jul 2019 09:11:30 +0000 (11:11 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Wed, 10 Jul 2019 08:17:40 +0000 (10:17 +0200)]
Rename support_strings to !is_list
In preparation for more behavior that depends on whether it it is
a list() access. Using support_strings for that would be
confusing.
Nikita Popov [Wed, 10 Jul 2019 09:04:48 +0000 (11:04 +0200)]
Simplify two unserialize() tests
unserialize() returns false for these now, so it doesn't make sense
to try and do something with the result.
Nikita Popov [Wed, 10 Jul 2019 08:57:02 +0000 (10:57 +0200)]
Fix iteration limits in SXE test
Test doesn't look like it's specifically testing out of bounds
access, just two different iteration patterns, so make sure the
limits are correct.
Nikita Popov [Wed, 10 Jul 2019 08:52:54 +0000 (10:52 +0200)]
Clean up DateTimeZone::getLocation() test
And avoid invalid array access.
Nikita Popov [Wed, 10 Jul 2019 08:44:33 +0000 (10:44 +0200)]
Avoid invalid array access in fcgi.inc
Remi Collet [Wed, 10 Jul 2019 07:00:54 +0000 (09:00 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
improve libargon2/libsodium compatibility
Remi Collet [Wed, 10 Jul 2019 07:00:41 +0000 (09:00 +0200)]
improve libargon2/libsodium compatibility
Peter Kokot [Tue, 9 Jul 2019 15:53:57 +0000 (17:53 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Use e.g. instead of less common f.e. [ci skip]
Peter Kokot [Tue, 9 Jul 2019 15:53:46 +0000 (17:53 +0200)]
Use e.g. instead of less common f.e. [ci skip]
Sara Golemon [Tue, 9 Jul 2019 15:37:08 +0000 (11:37 -0400)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Relax argon2 mem_cost down to 64k, bump time_cost to 4
Sara Golemon [Tue, 9 Jul 2019 15:18:13 +0000 (11:18 -0400)]
Relax argon2 mem_cost down to 64k, bump time_cost to 4
Nikita Popov [Tue, 9 Jul 2019 14:20:12 +0000 (16:20 +0200)]
Merge branch 'PHP-7.4'
David Carlier [Mon, 8 Jul 2019 16:07:45 +0000 (16:07 +0000)]
CGI: Fix memory leak on error paths
Dmitry Stogov [Tue, 9 Jul 2019 11:02:12 +0000 (14:02 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Avoid unintended inlining
Dmitry Stogov [Tue, 9 Jul 2019 11:01:48 +0000 (14:01 +0300)]
Avoid unintended inlining
Nikita Popov [Tue, 9 Jul 2019 09:06:57 +0000 (11:06 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Tue, 9 Jul 2019 09:05:54 +0000 (11:05 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 9 Jul 2019 09:05:18 +0000 (11:05 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Tue, 9 Jul 2019 09:04:05 +0000 (11:04 +0200)]
Revert "Fixed bug #76980"
This reverts commit
35353dc49a73a58c17c7896c4c4c3997ef2c007d .
This changes causes issues for Symfony, see
https://github.com/symfony/symfony/issues/32395. I'm reverting it
from PHP 7.2 and PHP 7.3 and only leaving it in PHP 7.4.
Derick Rethans [Tue, 9 Jul 2019 08:14:01 +0000 (09:14 +0100)]
Merge remote-tracking branch 'origin/PHP-7.4' into PHP-7.4
Christoph M. Becker [Tue, 9 Jul 2019 08:08:42 +0000 (10:08 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Upgrade to SQLite 3.28.0
Christoph M. Becker [Tue, 9 Jul 2019 08:08:09 +0000 (10:08 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Upgrade to SQLite 3.28.0
Christoph M. Becker [Tue, 9 Jul 2019 08:04:20 +0000 (10:04 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Upgrade to SQLite 3.28.0
Christoph M. Becker [Tue, 9 Jul 2019 08:01:52 +0000 (10:01 +0200)]
Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
Upgrade to SQLite 3.28.0
Christoph M. Becker [Fri, 21 Jun 2019 13:48:50 +0000 (15:48 +0200)]
Upgrade to SQLite 3.28.0
Over the years, multiple security vulnerabilities[1] have been found
and fixed in SQLite3, so it makes sense to update our bundled libsqlite
to the latest available version.
[1] <https://www.cvedetails.com/vulnerability-list/vendor_id-9237/Sqlite.html>
Dmitry Stogov [Tue, 9 Jul 2019 07:47:15 +0000 (10:47 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove duplicated code for (PRE|POST)_DEC_(OBJ|STATIC_PROP) opcodes
Dmitry Stogov [Tue, 9 Jul 2019 07:46:04 +0000 (10:46 +0300)]
Remove duplicated code for (PRE|POST)_DEC_(OBJ|STATIC_PROP) opcodes
Derick Rethans [Tue, 9 Jul 2019 07:41:09 +0000 (07:41 +0000)]
Update NEWS for 7.4.0beta1
Derick Rethans [Tue, 9 Jul 2019 07:39:49 +0000 (07:39 +0000)]
Update NEWS for PHP 7.4.0alpha3
Peter Kokot [Mon, 8 Jul 2019 21:28:33 +0000 (23:28 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Catch up with current procedures
Peter Kokot [Mon, 8 Jul 2019 21:28:02 +0000 (23:28 +0200)]
Catch up with current procedures
- Git is used for moving existing extensions to PECL
- PHP versions with the PHP 7.4 examples
- Some minor tweaks here and there
- Mention re2c also
- Mention Docker image as a helper tool
Peter Kokot [Mon, 8 Jul 2019 17:34:57 +0000 (19:34 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Add zend.exception_ignore_args [ci skip]
Peter Kokot [Mon, 8 Jul 2019 17:34:47 +0000 (19:34 +0200)]
Add zend.exception_ignore_args [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:51:13 +0000 (18:51 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Update NEWS [ci skip]
Update NEWS [ci skip]
Update NEWS [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:50:59 +0000 (18:50 +0200)]
Update NEWS [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:49:15 +0000 (18:49 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Update NEWS [ci skip]
Update NEWS [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:48:50 +0000 (18:48 +0200)]
Update NEWS [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:48:27 +0000 (18:48 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Update NEWS [ci skip]
Peter Kokot [Mon, 8 Jul 2019 16:45:36 +0000 (18:45 +0200)]
Update NEWS [ci skip]
Dmitry Stogov [Mon, 8 Jul 2019 15:02:22 +0000 (18:02 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fixed dispatch from inlined hybrid opcode to another opcode
Dmitry Stogov [Mon, 8 Jul 2019 15:01:46 +0000 (18:01 +0300)]
Fixed dispatch from inlined hybrid opcode to another opcode
Nikita Popov [Mon, 8 Jul 2019 14:54:22 +0000 (16:54 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 8 Jul 2019 13:50:21 +0000 (15:50 +0200)]
Add ReflectionReference::getRefcount()
And don't return null for rc=1 references. Leave it to the user
to decide whether or not they want to consider these as references
or not.
Fixes bug #78263.
Peter Kokot [Mon, 8 Jul 2019 14:24:35 +0000 (16:24 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Catch up with recent changes [ci skip]
Peter Kokot [Mon, 8 Jul 2019 14:23:27 +0000 (16:23 +0200)]
Catch up with recent changes [ci skip]
- RFC about password_hash portability improvements added
- build system minor updates noted
- typos
Peter Kokot [Mon, 8 Jul 2019 13:06:54 +0000 (15:06 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove APACHE symbol
Peter Kokot [Mon, 8 Jul 2019 13:05:54 +0000 (15:05 +0200)]
Remove APACHE symbol
The APACHE symbol was used in very early PHP versions to indicate the
Apache module usage. Since PHP 4 this is no longer used in the code.
Peter Kokot [Mon, 8 Jul 2019 12:59:40 +0000 (14:59 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Refactor genif.sh
Peter Kokot [Mon, 8 Jul 2019 12:58:26 +0000 (14:58 +0200)]
Refactor genif.sh
Changes:
- Coding style fixes
- ${1+"$@"} replaced with "$@" [1]
- EXTRA_MODULE_PTRS variable is not used anymore
- awk tool defined via environment variable
- srcdir determined automatically from the genif.sh location
[1] https://www.in-ulm.de/~mascheck/various/bourne_args/
Closes GH-4372
Nikita Popov [Mon, 8 Jul 2019 11:36:26 +0000 (13:36 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 8 Jul 2019 11:26:59 +0000 (13:26 +0200)]
Make busy wait busier
Another stab in the dark to fix the intermittent failures of timeout
tests on macos CI: We're using ITIMER_PROF, which means that the
timer counts against user+system time. The "busy" wait loop counts
against real time. Currently it calls microtime() on every iteration.
If that call is implemented as a syscall rather than going through
vDSO or commpage we might be seeing many context switches here which
drive up the real time, but not user or system time.
See if making the loop busier and calling microtime() less helps the
situation.
Dmitry Stogov [Mon, 8 Jul 2019 11:13:02 +0000 (14:13 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Delay EG(exception) check on slow path
Dmitry Stogov [Mon, 8 Jul 2019 10:56:34 +0000 (13:56 +0300)]
Delay EG(exception) check on slow path
Nikita Popov [Mon, 8 Jul 2019 10:53:50 +0000 (12:53 +0200)]
Merge branch 'PHP-7.4'
Nikita Popov [Mon, 8 Jul 2019 10:41:11 +0000 (12:41 +0200)]
Remove redundant variable declaration
Scott Dutton [Fri, 28 Jun 2019 06:12:39 +0000 (07:12 +0100)]
Deprecate passing invalid character to base_convert etc
RFC: https://wiki.php.net/rfc/base_convert_improvements
Peter Kokot [Mon, 8 Jul 2019 10:47:35 +0000 (12:47 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove C89 checks for signal.h and strerror
Peter Kokot [Mon, 8 Jul 2019 10:46:51 +0000 (12:46 +0200)]
Remove C89 checks for signal.h and strerror
These are part of the C89 and on today's systems not needed to be
checked anymore. This removes symbols HAVE_SIGNAL and HAVE_STRERROR.
- http://port70.net/~nsz/c/c89/c89-draft.html
- locale.h is also part of C89 but will be removed per request in PHP 8
Peter Kokot [Mon, 8 Jul 2019 10:41:15 +0000 (12:41 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Update libmagic patch
David Carlier [Thu, 4 Jul 2019 17:46:20 +0000 (18:46 +0100)]
JIT: Reading php binary symbols list on FreeBSD
Closes GH-4363.
Peter Kokot [Mon, 8 Jul 2019 10:38:47 +0000 (12:38 +0200)]
Update libmagic patch
This simplifies the libmagic patch:
- in upstream the HAVE_STRERROR check has been removed
- in upstream library the HAVE_SIGNAL_H has been removed
- indentations syncs with the upstream library
- some irrelevant changes removed from the patch (log comment), upstream
has this correctly logged already so no need to patch the comment.
Closes GH-4298
Nikita Popov [Mon, 8 Jul 2019 08:49:34 +0000 (10:49 +0200)]
Remove INPUT_SESSION and INPUT_REQUEST
These were never supported and always generated a warning. Remove
them entirely for PHP 8.
Christoph M. Becker [Mon, 8 Jul 2019 08:47:09 +0000 (10:47 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Implement FR #77230: Support custom CFLAGS and LDFLAGS from environment
Christoph M. Becker [Tue, 2 Jul 2019 17:08:19 +0000 (19:08 +0200)]
Implement FR #77230: Support custom CFLAGS and LDFLAGS from environment
While it is already possible to *set* CFLAGS and LDFLAGS (actually all
variables) from the environment for `nmake` (by passing the `/E`
option), it is not possible to *add* any (C|LD)FLAGS, which can be
useful in some cases. Instead of allowing this for `nmake`, we add
support for additional custom (C|LD)FLAGS to `configure`, similar to
how that works on Linux, so one could actually write:
````
set CFLAGS=foo & set LDFLAGS=bar & configure
````
This also allows us to use these flags during configure.
Christoph M. Becker [Mon, 8 Jul 2019 08:32:39 +0000 (10:32 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix TsHashTable related race conditions
Christoph M. Becker [Mon, 1 Jul 2019 08:18:19 +0000 (10:18 +0200)]
Fix TsHashTable related race conditions
Although TsHashTable and the according API are supposed to easily make
a HashTable thread-safe, they do not; for instance, there can be race
conditions between finding and updating entries. We therefore avoid
the usage of TsHashTable in favor of a HashTable with our own mutex
management.
The patch has been provided by krakjoe@php.net; I only did some minor
fixes and tweaks.
Peter Kokot [Mon, 8 Jul 2019 08:26:08 +0000 (10:26 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Simplify PHP_CHECK_PDO_INCLUDES calls
Peter Kokot [Mon, 8 Jul 2019 08:23:09 +0000 (10:23 +0200)]
Simplify PHP_CHECK_PDO_INCLUDES calls
Conditional checks were once used for backwards compatibility with
phpize from PHP versions that didn't have this macro call yet.
Closes GH-4376
Dmitry Stogov [Mon, 8 Jul 2019 08:21:54 +0000 (11:21 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fixed opcode description
Dmitry Stogov [Mon, 8 Jul 2019 08:20:46 +0000 (11:20 +0300)]
Fixed opcode description
Peter Kokot [Mon, 8 Jul 2019 08:20:14 +0000 (10:20 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove some unused variables
Peter Kokot [Mon, 8 Jul 2019 08:18:17 +0000 (10:18 +0200)]
Remove some unused variables
- Variables php_abs_top_srcdir php_abs_top_builddir are no longer used.
- ZEND_EXT_TYPE is always zend_extension and variable is no longer used.
Closes GH-4378
Sara Golemon [Mon, 8 Jul 2019 01:55:12 +0000 (21:55 -0400)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Provide argon2i(d) password hashing from sodium when needed
Sara Golemon [Fri, 5 Apr 2019 21:33:10 +0000 (17:33 -0400)]
Provide argon2i(d) password hashing from sodium when needed
Stanislav Malyshev [Sun, 7 Jul 2019 23:21:06 +0000 (16:21 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Simplify expression and remove the possibility of div by 0
Stanislav Malyshev [Sun, 7 Jul 2019 23:16:05 +0000 (16:16 -0700)]
Simplify expression and remove the possibility of div by 0
Maybe should use exp2() but not sure about how supported it is.
Peter Kokot [Sun, 7 Jul 2019 10:16:14 +0000 (12:16 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove PHP_DEBUG_MACRO
Peter Kokot [Sun, 7 Jul 2019 04:11:10 +0000 (06:11 +0200)]
Remove PHP_DEBUG_MACRO
The macro is no longer used. The warning at the end of the configure
script therefore is also no longer used.
Peter Kokot [Sun, 7 Jul 2019 10:10:59 +0000 (12:10 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove some more Apache 1 left overs
Peter Kokot [Sun, 7 Jul 2019 04:25:58 +0000 (06:25 +0200)]
Remove some more Apache 1 left overs
- warning in configure.ac is relevant for the sapi/apache
- errors output redirected to /dev/null when checking Apache version
Nikita Popov [Sun, 7 Jul 2019 09:25:16 +0000 (11:25 +0200)]
Merge branch 'PHP-7.4'
[ci skip]
Nikita Popov [Sun, 7 Jul 2019 09:23:58 +0000 (11:23 +0200)]
Mention that zend_parse_parameters should not be tested
Also mention that --CREDITS-- section should not be included
anymore. We should also change qa.php.net to stop advertising
these.
[ci skip]
Nikita Popov [Sat, 6 Jul 2019 21:51:26 +0000 (23:51 +0200)]
Disable jit on msan job
JIT code is not instrumented and as such incompatible with msan.
I'm not sure why this only started failing in the last build, it
shouldn't have worked before either...
Peter Kokot [Sat, 6 Jul 2019 02:55:42 +0000 (04:55 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Move footer to the end of configure output
Peter Kokot [Wed, 3 Jul 2019 22:18:15 +0000 (00:18 +0200)]
Move footer to the end of configure output
Peter Kokot [Fri, 5 Jul 2019 21:30:51 +0000 (23:30 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove PTHREADS_ASSIGN_VARS
Peter Kokot [Mon, 1 Jul 2019 23:00:14 +0000 (01:00 +0200)]
Remove PTHREADS_ASSIGN_VARS
This simplifies TSRM build steps a bit and avoids doing unnecessary
steps:
- The `PTHREADS_CHECK_COMPILE` can called inside the for loops only
since this is only where the `$pthreads_checked` variable is used.
- Assigning variables can be then done only in the configure.ac
once.
- use `m4_include()` instead of the `sinclude()` in the middle of
the build steps.
- The `$threads_result` variable is not used in the code or in
extensions.
Nikita Popov [Fri, 5 Jul 2019 18:51:31 +0000 (20:51 +0200)]
Always generate interrupt check in jit
Even if zend_interrupt_function is NULL, we still need to perform
the interrupt check for timeouts (which do not use
zend_interrupt_function).
Christoph M. Becker [Fri, 5 Jul 2019 13:57:01 +0000 (15:57 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove superfluous assignment
Christoph M. Becker [Fri, 5 Jul 2019 13:51:53 +0000 (15:51 +0200)]
Remove superfluous assignment
Dmitry Stogov [Fri, 5 Jul 2019 11:25:26 +0000 (14:25 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Eliminate useless checks
Dmitry Stogov [Fri, 5 Jul 2019 11:21:18 +0000 (14:21 +0300)]
Eliminate useless checks