]> granicus.if.org Git - php/log
php
5 years agoRemove unused HAVE_SHM_MMAP_ZERO and HAVE_SHM_MMAP_FILE
Peter Kokot [Thu, 18 Jul 2019 00:11:19 +0000 (02:11 +0200)]
Remove unused HAVE_SHM_MMAP_ZERO and HAVE_SHM_MMAP_FILE

Closes GH-4424

5 years agoAllow multiple cache instances per user/host on Windows
Christoph M. Becker [Tue, 16 Jul 2019 19:14:57 +0000 (21:14 +0200)]
Allow multiple cache instances per user/host on Windows

Formerly, there was at most a single OPcache instance per user and the
so called system ID (which is determined from the PHP version).
Sometimes multiple OPcaches might be desired, though, particularly for
unrelated CLI scripts, which may even be necessary (e.g. for our test
suite in parallel mode).

We therefore introduce a new INI directive `opcache.cache_id` which
allows to configure independent OPcache instances for the same user.

We also use `GetUserNameW()` instead of `php_win32_get_username()`,
because the latter retrieves the user name encoded in the
`default_charset`, which can obviously yield different results for
different charsets, leading to OPcache "incompatibilities".  Slightly
worse, some characters may not even be encodeable in the
`default_charset` and would be replaced by question marks, which could
result in different users sharing the same OPcache.

We also refactor, and re-use existing APIs to avoid duplicated code.

5 years agoRevert "Remove Windows syslog script and syslog.reg"
Christoph M. Becker [Wed, 17 Jul 2019 17:25:36 +0000 (19:25 +0200)]
Revert "Remove Windows syslog script and syslog.reg"

This reverts commit cc44bad1f6ded6a62c9bbe4d145b5b418aa775f4, since its
assumptions were not correct.  Actually, the classic event logging is
still used by PHP, because Windows 7 is still to be supported for a
while.  Without the respective registry entries, the event log entries
show an error message regarding missing ID descriptions.

Thanks to ab@php.net for hinting at this!

Obviously, the part depending on ext/win32std has still to be
overhauled, and further improvements are conceivable; we will address
this in due course.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Wed, 17 Jul 2019 13:59:22 +0000 (15:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Wed, 17 Jul 2019 13:59:05 +0000 (15:59 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoFixed bug #69100
Nikita Popov [Wed, 17 Jul 2019 13:58:29 +0000 (15:58 +0200)]
Fixed bug #69100

5 years agoAvoid duplicate fstat() for includes
Nikita Popov [Wed, 17 Jul 2019 12:43:53 +0000 (14:43 +0200)]
Avoid duplicate fstat() for includes

By adding a flag to avoid forced fstat for includes. The two fstats
will happen back to back and we don't care about a possible
invalidation.

I was hoping to move this higher up in the stack and make the
ISREG check somewhere in fsizer of fixup, but this doesn't really
seem to be possible. E.g. an FP stdin handle will not be a regular
file but of course needs to be allowed. Additionally custom stream
wrappers may not implement this functionality.

5 years agoAvoid extra specialization for cold opcodes
Dmitry Stogov [Wed, 17 Jul 2019 11:03:48 +0000 (14:03 +0300)]
Avoid extra specialization for cold opcodes

5 years agoUse reported fstat filesize for PHP streams
Nikita Popov [Wed, 17 Jul 2019 09:56:00 +0000 (11:56 +0200)]
Use reported fstat filesize for PHP streams

5 years agoRevert "Avoid unused fstat() call"
Nikita Popov [Wed, 17 Jul 2019 09:49:10 +0000 (11:49 +0200)]
Revert "Avoid unused fstat() call"

This reverts commit 5a90dc77b8f244f603082aea022fadc0ce2c009c.

Let's try to go with the reverse direction here and actually trust
the reported size...

5 years agoAvoid unused fstat() call
Nikita Popov [Wed, 17 Jul 2019 09:01:57 +0000 (11:01 +0200)]
Avoid unused fstat() call

If we're including a file via PHP streams, we're not going to trust
the reported file size anyway and populate in a loop -- so don't
bother determining the file size in the first place. Only do this
for non-tty HANDLE_FP now, which is the only case where this
information was used.

5 years agoRemove old hack
Dmitry Stogov [Wed, 17 Jul 2019 09:05:23 +0000 (12:05 +0300)]
Remove old hack

5 years agoAvoid double buffering in Zend streams
Nikita Popov [Wed, 17 Jul 2019 08:20:06 +0000 (10:20 +0200)]
Avoid double buffering in Zend streams

Disable buffering in PHP streams, to avoid storing and copying the
file contents twice.

This will call stream_set_option() on custom stream wrapper as
well, so the method needs to be implemented to avoid a warning.

5 years agoAdded specialization for comparison instructions and QM_ASSIGN
Dmitry Stogov [Wed, 17 Jul 2019 06:12:01 +0000 (09:12 +0300)]
Added specialization for comparison instructions and QM_ASSIGN

5 years agoFix typo
Peter Kokot [Wed, 17 Jul 2019 01:54:54 +0000 (03:54 +0200)]
Fix typo

5 years agoSimplify functions checks in m4
Peter Kokot [Wed, 17 Jul 2019 01:50:47 +0000 (03:50 +0200)]
Simplify functions checks in m4

- AC_CHECK_FUNCS already automatically defines belonging HAVE_function
  symbols and executes given shell code.

5 years agoSeparate "cold" and common unspecialized code
Dmitry Stogov [Tue, 16 Jul 2019 21:52:26 +0000 (00:52 +0300)]
Separate "cold" and common unspecialized code

5 years agoUpdate changelog
Peter Kokot [Tue, 16 Jul 2019 20:46:46 +0000 (22:46 +0200)]
Update changelog

5 years agoRemove unused build checks
Peter Kokot [Tue, 16 Jul 2019 20:39:09 +0000 (22:39 +0200)]
Remove unused build checks

- yp_get_default_domain was part of ext/yp
- functions checks produce HAVE_function_name symbols. These checks are
  currently not used in php-src neither in the extensions out there.
- Removed symbols because they are not used in the code:
  - HAVE_GCVT
  - HAVE_PUTENV
  - HAVE_PUTENV
  - HAVE_SETVBUF
  - HAVE_TEMPNAM
  - HAVE_SIN (sin is also defined in C89 standard)
  - HAVE_SETSOCKOPT
  - HAVE_LOCKF
  - HAVE_ISASCII
  - HAVE_YP_GET_DEFAULT_DOMAIN (and other yp extension related unused checks)
  - HAVE_LINK
- HAVE_USLEEP is already defined in Windows configuration header
- HAVE_LIBBIND has not been used in php-src for a while anymore
- HAVE_GETHOSTNAME is duplicated in Windows configuration header

Closes GH-4417

5 years agoProvide type info
Dmitry Stogov [Tue, 16 Jul 2019 19:56:20 +0000 (22:56 +0300)]
Provide type info

5 years agoRemove ZEND_HANDLE_MAPPED
Nikita Popov [Tue, 16 Jul 2019 15:17:19 +0000 (17:17 +0200)]
Remove ZEND_HANDLE_MAPPED

The buf/len members are now simply used in addition to the main
stream, without changing the handle kind.

5 years agoDrop free_filename field from zend_file_handle
Nikita Popov [Tue, 16 Jul 2019 14:50:22 +0000 (16:50 +0200)]
Drop free_filename field from zend_file_handle

free_filename was always zero.

5 years agoIntroduce zend_stream_init_filename()
Nikita Popov [Tue, 16 Jul 2019 14:40:54 +0000 (16:40 +0200)]
Introduce zend_stream_init_filename()

Avoid more ad-hoc initialization of zend_file_handle structures.

5 years agoIntroduce zend_stream_init_fp() API
Nikita Popov [Tue, 16 Jul 2019 14:21:45 +0000 (16:21 +0200)]
Introduce zend_stream_init_fp() API

Reduce the amount of code that mucks around with zend_file_handle
initialization.

5 years agoSlit INC/DEC opcodes into hot/cold parts and remove specialized versioins for LONG_OR...
Dmitry Stogov [Tue, 16 Jul 2019 14:39:25 +0000 (17:39 +0300)]
Slit INC/DEC opcodes into hot/cold parts and remove specialized versioins for LONG_OR_DOUBLE.

5 years agoRemove unused _get_zval_ptr_cv_BP_VAR_UNSET function
Nikita Popov [Tue, 16 Jul 2019 13:53:41 +0000 (15:53 +0200)]
Remove unused _get_zval_ptr_cv_BP_VAR_UNSET function

To fix the macos -Werror build.

5 years agoRemove ZEND_HANDLE_FD
Nikita Popov [Tue, 16 Jul 2019 12:51:48 +0000 (14:51 +0200)]
Remove ZEND_HANDLE_FD

This handle type was unused.

5 years agoFix bug #52752 by not using mmap() to lex files
Nikita Popov [Tue, 16 Jul 2019 11:27:41 +0000 (13:27 +0200)]
Fix bug #52752 by not using mmap() to lex files

Using mmap() is unsafe under concurrent modification. If the file
is truncated, access past the end of the file may occur, which will
generate a SIGBUS error. Even if the length does not change, the
contents may, which is a situation that the lexer certainly is not
prepared to deal with either.

Reproduce with test.php:

    <?php
    file_put_contents(__DIR__ . '/test.tpl',
        'AAA<?php $string = "' .
        str_repeat('A', mt_rand(1, 256 * 1024)) .
        '"; ?>BBB' . "\r\n");
    require_once __DIR__ . '/test.tpl';

And:

    for ((n=0;n<100;n++)); do sapi/cli/php test.php & done

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 16 Jul 2019 13:29:10 +0000 (15:29 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Convert short tag to standard tag in Zend test file

5 years agoConvert short tag to standard tag in Zend test file
George Peter Banyard [Thu, 11 Jul 2019 14:06:41 +0000 (16:06 +0200)]
Convert short tag to standard tag in Zend test file

Closes GH-4389.

(cherry picked from commit e6c2b288652cf9c8d0b92d2842d73b3eb2431860)

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 16 Jul 2019 11:45:23 +0000 (13:45 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Update NEWS [ci skip]

5 years agoUpdate NEWS [ci skip]
Christoph M. Becker [Tue, 16 Jul 2019 11:44:13 +0000 (13:44 +0200)]
Update NEWS [ci skip]

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Tue, 16 Jul 2019 11:00:44 +0000 (13:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  move NEWS entry [ci skip]

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Remi Collet [Tue, 16 Jul 2019 11:00:30 +0000 (13:00 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  move NEWS entry [ci skip]

5 years agomove NEWS entry [ci skip]
Remi Collet [Tue, 16 Jul 2019 11:00:13 +0000 (13:00 +0200)]
move NEWS entry [ci skip]

5 years agoReplace deprecated conditions by ZEND_ASSERT.
Dmitry Stogov [Tue, 16 Jul 2019 10:50:25 +0000 (13:50 +0300)]
Replace deprecated conditions by ZEND_ASSERT.

5 years agoUse ZEND_HASH_FOREACH APIs in a few more places
Nikita Popov [Tue, 16 Jul 2019 10:07:09 +0000 (12:07 +0200)]
Use ZEND_HASH_FOREACH APIs in a few more places

5 years agoSupport <?php followed by EOF
Nikita Popov [Mon, 15 Jul 2019 15:26:26 +0000 (17:26 +0200)]
Support <?php followed by EOF

This is an annoying edge-case for canonicalization.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 16 Jul 2019 09:11:00 +0000 (11:11 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Tue, 16 Jul 2019 09:10:02 +0000 (11:10 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoFixed bug #78297
Nikita Popov [Tue, 16 Jul 2019 09:08:27 +0000 (11:08 +0200)]
Fixed bug #78297

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Tue, 16 Jul 2019 08:39:24 +0000 (10:39 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  next is 7.2.22

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Remi Collet [Tue, 16 Jul 2019 08:39:03 +0000 (10:39 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  next is 7.2.22

5 years agonext is 7.2.22
Remi Collet [Tue, 16 Jul 2019 08:38:20 +0000 (10:38 +0200)]
next is 7.2.22

5 years agoFix name collisions in fputcsv tests
Nikita Popov [Tue, 16 Jul 2019 08:24:20 +0000 (10:24 +0200)]
Fix name collisions in fputcsv tests

5 years agoCanonicalize file-names in zip tests
Nikita Popov [Tue, 16 Jul 2019 08:21:38 +0000 (10:21 +0200)]
Canonicalize file-names in zip tests

There were a number of name collisions in there.

5 years agoDelay IS_UNDEF checks
Dmitry Stogov [Tue, 16 Jul 2019 08:16:45 +0000 (11:16 +0300)]
Delay IS_UNDEF checks

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Dmitry Stogov [Mon, 15 Jul 2019 22:54:22 +0000 (01:54 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed incorrect specialization (missed IS_INDIRECT handling)

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Dmitry Stogov [Mon, 15 Jul 2019 22:52:11 +0000 (01:52 +0300)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fixed incorrect specialization (missed IS_INDIRECT handling)

5 years agoFixed incorrect specialization (missed IS_INDIRECT handling)
Dmitry Stogov [Mon, 15 Jul 2019 22:50:10 +0000 (01:50 +0300)]
Fixed incorrect specialization (missed IS_INDIRECT handling)

5 years agoSmall typo and proto name fix
George Peter Banyard [Mon, 15 Jul 2019 16:15:17 +0000 (18:15 +0200)]
Small typo and proto name fix

Closes GH-4415

5 years agoRemove win32/php_stdbool.h
Peter Kokot [Mon, 15 Jul 2019 16:00:04 +0000 (18:00 +0200)]
Remove win32/php_stdbool.h

File usage was removed via 33fc7d77d7d0f7c85025b8aa82d62b154c4bc71f.

Closes GH-4411

5 years agoRemove unused files
Peter Kokot [Mon, 15 Jul 2019 15:58:46 +0000 (17:58 +0200)]
Remove unused files

These were introduced in 504b9beae60a45e1b1e6466e97a6bd246dfc74f6
and their usages were removed via
4b3e19802385c5874eefd3ba4565f2efbc55dc96.

Closes GH-4410

5 years agoRemove Windows syslog script and syslog.reg
Peter Kokot [Mon, 15 Jul 2019 15:57:11 +0000 (17:57 +0200)]
Remove Windows syslog script and syslog.reg

These were used on old Windows systems before Vista and also were
used together with unmaintained win32std extension.

https://docs.microsoft.com/en-us/windows/win32/eventlog/event-logging

Closes GH-4409

5 years agoRemove some *.dsp/*.dsw leftovers
Peter Kokot [Mon, 15 Jul 2019 15:55:37 +0000 (17:55 +0200)]
Remove some *.dsp/*.dsw leftovers

Usage of this was removed via 4b3e19802385c5874eefd3ba4565f2efbc55dc96

Closes GH-4408

5 years agoCombine SKIP_TOKEN+RETURN_TOKEN into one macro
Nikita Popov [Mon, 15 Jul 2019 15:29:27 +0000 (17:29 +0200)]
Combine SKIP_TOKEN+RETURN_TOKEN into one macro

5 years agoMove shebang handling into the lexer
Nikita Popov [Mon, 15 Jul 2019 14:21:46 +0000 (16:21 +0200)]
Move shebang handling into the lexer

Instead of handling shebang lines by adjusting the file pointer in
individual SAPIs, move the handling into the lexer, where this is
both a lot simpler and more robust. Whether the shebang should be
skipped is controlled by CG(skip_shebang) -- we might want to do
that in more cases.

This fixed bugs #60677 and #78066.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 15 Jul 2019 13:20:36 +0000 (15:20 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 15 Jul 2019 13:19:43 +0000 (15:19 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoFix bug #77124
Nikita Popov [Tue, 25 Jun 2019 10:09:47 +0000 (12:09 +0200)]
Fix bug #77124

This is a backport of 6fcae63f614d1ed4aaeaff7b13a7a4627b1f1312
to PHP 7.2.

5 years agoSync mysqlnd version with PHP version
Christoph M. Becker [Mon, 15 Jul 2019 09:43:09 +0000 (11:43 +0200)]
Sync mysqlnd version with PHP version

Since mysqlnd is solely developed in the php-src repository, it makes
not much sense to have its own version number, particularly since
nobody cares to update it.  Therefore we use PHP's version number, but
stick with the "mysqlnd" prefix which can be important to distinguish
the mysqli driver (libmysqlclient vs. mysqlnd).

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Mon, 15 Jul 2019 12:17:23 +0000 (14:17 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  typo [ci skip]

5 years agotypo [ci skip]
Remi Collet [Mon, 15 Jul 2019 12:17:13 +0000 (14:17 +0200)]
typo [ci skip]

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Remi Collet [Mon, 15 Jul 2019 12:11:57 +0000 (14:11 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78269 password_hash uses weak options for argon2
  Fix #78269 password_hash uses weak options for argon2

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Remi Collet [Mon, 15 Jul 2019 12:11:38 +0000 (14:11 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

* PHP-7.2:
  Fix #78269 password_hash uses weak options for argon2

5 years agoFix #78269 password_hash uses weak options for argon2
Remi Collet [Mon, 15 Jul 2019 12:11:30 +0000 (14:11 +0200)]
Fix #78269 password_hash uses weak options for argon2

5 years agoFix #78269 password_hash uses weak options for argon2
Remi Collet [Mon, 15 Jul 2019 12:10:38 +0000 (14:10 +0200)]
Fix #78269 password_hash uses weak options for argon2

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 15 Jul 2019 11:49:29 +0000 (13:49 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoEmit T_BAD_CHARACTER for unexpected characters
Nikita Popov [Mon, 15 Jul 2019 10:51:01 +0000 (12:51 +0200)]
Emit T_BAD_CHARACTER for unexpected characters

Avoid having holes in the token stream which are annoying and
inefficient to reconstruct on the consumer side.

5 years agoFixed bug #78010
Nikita Popov [Mon, 15 Jul 2019 10:00:30 +0000 (12:00 +0200)]
Fixed bug #78010

Prevent the gc_info from becoming all zero for a registered root
by setting the top bit to one for compressed root addresses.

5 years agovectorize string-escape with NEON
Sebastian Pop [Wed, 10 Jul 2019 18:31:27 +0000 (18:31 +0000)]
vectorize string-escape with NEON

On this benchmark:
function simple_string_escape() {
    $a = "test'asd'asd'' asd\'\"asdfasdf";
    for($i=0; $i<512; $i++) {
        $a .= chr($i%256);
    }
    for ($i = 0; $i < 100000; $i++) {
        if ($a === stripslashes(addslashes($a)))
            $a .= chr($i%256);
        else {
            echo "error at i=".$i."\n";
            return;
        }
    }
}
the execution time goes from 21.619s to 8.139s (165% speedup) on an A1 Graviton instance.

When removing the characters that need escaping, i.e., this benchmark:
function simple_string() {
  $a = "testasdasd asdasdfasdf";
  for ($i = 0; $i < 10000; $i++) {
      if ($a === stripslashes(addslashes($a)))
          $a .= "test dedeasdf";
      else {
          echo "error at i=".$i."\n";
          return;
      }
  }
}
the execution time goes from 2.932s down to 0.516s (468% speedup) on an A1 Graviton instance.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Mon, 15 Jul 2019 08:29:37 +0000 (10:29 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Mon, 15 Jul 2019 08:23:27 +0000 (10:23 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoFix bug #78291 Missing opcache directives
Andrew Collington [Sun, 14 Jul 2019 13:49:38 +0000 (14:49 +0100)]
Fix bug #78291 Missing opcache directives

New opcache directives have been added recently which are returned
if using `ini_get_all('zend opcache')` but are not listed in the
directives if using `opcache_get_configuration()`.  This fix adds
those missing directives as well as if `opcache.mmap_base` is used
instead of `opcache.lockfile_path`.  Also adds a test to ensure the
directives match with both methods of fetching.

5 years agoRemove usage of PHP_AIX_LDFLAGS
Peter Kokot [Sun, 14 Jul 2019 21:44:01 +0000 (23:44 +0200)]
Remove usage of PHP_AIX_LDFLAGS

These are currently not defined since their usage has been removed via
51ca2dba530883a8e07d6869e66ee6c5b3c978a6
and
53349d69ddf7a2ba128f0928fb3b376422611a3b

5 years agoRemove conditional calls of always available macros
Peter Kokot [Sun, 14 Jul 2019 20:24:21 +0000 (22:24 +0200)]
Remove conditional calls of always available macros

These checks were once relevant for these extensions in PECL and PHP
versions without availability of the checked macros.

Closes GH-4405

5 years agoRemove unsed zts check for sqlite3
Peter Kokot [Sun, 14 Jul 2019 19:06:15 +0000 (21:06 +0200)]
Remove unsed zts check for sqlite3

This check was relevant with bundled sqlite library. Removed via
6083a387a81dbbd66d6316a3a12a63f06d5f7109

Closes GH-4403

5 years agoRemove duplicate PTHREADS template define
Peter Kokot [Sun, 14 Jul 2019 12:45:27 +0000 (14:45 +0200)]
Remove duplicate PTHREADS template define

The undef PTHREADS converts to define if thread safety is configured.
This step is already done by pthreads m4 macros from TSRM so this now
removes duplicated PTHREADS defines from php_config.h.

5 years agoRemove timelib outdated defines
Peter Kokot [Sun, 14 Jul 2019 11:50:05 +0000 (13:50 +0200)]
Remove timelib outdated defines

- TIMELIB_OMIT_STDINT is not used anymore since
  https://github.com/derickr/timelib/commit/a171f99cf02baf39549ab7209e37565b8b8f6529
- HAVE_GETTIMEOFDAY was defined multiple times in Windows headers
- ext/date/lib/timelib_config.h.win32 does not seem to be used

Closes GH-4400

5 years agoRemove PHP_MYSQL variable
Peter Kokot [Sun, 14 Jul 2019 11:48:44 +0000 (13:48 +0200)]
Remove PHP_MYSQL variable

PHP_MYSQL variable was once defined by the ext/mysql (--with-mysql).

Closes GH-4399

5 years agoUpdate changelogs
Peter Kokot [Sat, 13 Jul 2019 13:37:36 +0000 (15:37 +0200)]
Update changelogs

- PHP-7.4 alpha, beta, RC versions already include bugs logged in the
  NEWS
- some links to RFCs
- php_error_docref0

5 years agoRemove php_multiple_shlib_versions_ok
Peter Kokot [Sat, 13 Jul 2019 13:06:35 +0000 (15:06 +0200)]
Remove php_multiple_shlib_versions_ok

Variable usage was removed via
913cec65517f11ebd972f920d1d320b853a175dd

5 years agoRemove unused recode extension artefacts
Peter Kokot [Sat, 13 Jul 2019 12:52:36 +0000 (14:52 +0200)]
Remove unused recode extension artefacts

Closes GH-4395

5 years agoRemove checks for always enabled spl and pcre
Peter Kokot [Sat, 13 Jul 2019 12:47:37 +0000 (14:47 +0200)]
Remove checks for always enabled spl and pcre

Closes GH-4397

5 years agoRemove WARNING_LEVEL fix for QNX
Peter Kokot [Sat, 13 Jul 2019 12:39:29 +0000 (14:39 +0200)]
Remove WARNING_LEVEL fix for QNX

Fix is no longer relevant since the environment variable WARNING_LEVEL
is no longer used to define the value of the -w option for cc.

Closes GH-4398

5 years agoFix #78283: no output for explicit environment
Christoph M. Becker [Sat, 13 Jul 2019 10:01:33 +0000 (12:01 +0200)]
Fix #78283: no output for explicit environment

This test does not work on Windows, if the child process has OPcache
enabled via php.ini, since TEMP is not set in the environment, so
OPcache can't find the base address file, and terminates the childs.

To avoid this (and potentially some other issues regarding missing
environment variables, such as PATH), we force the child process to
ignore any ini files.

5 years agoFix #78282: atime and mtime mismatch
Christoph M. Becker [Sat, 13 Jul 2019 07:40:50 +0000 (09:40 +0200)]
Fix #78282: atime and mtime mismatch

The fix for bug #78241 assumed that `time_t` would always be 64bit, but
actually is 32bit for x86.  We therefore enforce 64bit arithmetic to
avoid wrapping.

5 years agoConvert all php_error_docref0 to php_error_docref
George Peter Banyard [Sat, 13 Jul 2019 00:05:17 +0000 (02:05 +0200)]
Convert all php_error_docref0 to php_error_docref

Closes GH-4394

5 years agoRemove tsrm_config_common.h
Peter Kokot [Fri, 12 Jul 2019 00:57:52 +0000 (02:57 +0200)]
Remove tsrm_config_common.h

- Checks and defines are not relevant for files that include it anymore
- Some code is not used anymore
- Defines are a bit duplicated in zend_portability.h and TSRM.h file
- MAXPATHLEN defs moved to zend_virtual_cwd.h

5 years agoNo more need to cater to pre-PHP-5.3 or PHP-6 versions
Christoph M. Becker [Fri, 12 Jul 2019 16:50:54 +0000 (18:50 +0200)]
No more need to cater to pre-PHP-5.3 or PHP-6 versions

5 years agoDon't split T_INLINE_HTML at partial PHP tag
Nikita Popov [Fri, 12 Jul 2019 15:22:11 +0000 (17:22 +0200)]
Don't split T_INLINE_HTML at partial PHP tag

If <?php occurs without required trailing whitespace, we should keep
it as part of a single T_INLINE_HTML region.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 12 Jul 2019 14:51:52 +0000 (16:51 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Fri, 12 Jul 2019 14:51:47 +0000 (16:51 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoUse TRY_ADDREF/TRY_DELREF in soap
Nikita Popov [Fri, 12 Jul 2019 14:50:43 +0000 (16:50 +0200)]
Use TRY_ADDREF/TRY_DELREF in soap

The DELREF part is a possible fix for bug #78278, the ADDREF part
is a drive-by fix.

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 12 Jul 2019 14:30:47 +0000 (16:30 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

5 years agoMerge branch 'PHP-7.2' into PHP-7.3
Nikita Popov [Fri, 12 Jul 2019 14:29:55 +0000 (16:29 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3

5 years agoFixed bug #78279
Nikita Popov [Fri, 12 Jul 2019 14:29:18 +0000 (16:29 +0200)]
Fixed bug #78279

Even if we don't initialize the callback on every request, we
should still reset our globals to default values...

5 years agoUpdate NEWS and UPGRADING wrt. ext/recode unbundling
Christoph M. Becker [Fri, 12 Jul 2019 12:35:44 +0000 (14:35 +0200)]
Update NEWS and UPGRADING wrt. ext/recode unbundling

5 years agoRemoved ext/recode
Christoph M. Becker [Fri, 12 Jul 2019 11:58:17 +0000 (13:58 +0200)]
Removed ext/recode

Cf. <https://wiki.php.net/rfc/unbundle_recode>.

5 years agoSwap implode() argument order in the test helper
Christoph M. Becker [Fri, 12 Jul 2019 11:26:54 +0000 (13:26 +0200)]
Swap implode() argument order in the test helper