Commit Graph

704 Commits

Author SHA1 Message Date
Anatol Belski
b2a1199d33 [ci skip] Fix typos 2018-01-12 19:12:54 +01:00
Anatol Belski
d857703bdb [ci skip] Update UPGRADING 2018-01-12 07:45:39 +01:00
Anatol Belski
45db77ed0d Revert "Add possibility to lower timer resolution"
This reverts commit c3717d9aec.

The final mitigation of the consequences with spectre should be
discussed more also with the regard to the happenings on the
developments. Right now a preliminary mitigation might be wrong or
suboptimal, thus reverting this.
2018-01-11 12:40:01 +01:00
Anatol Belski
c3717d9aec Add possibility to lower timer resolution
The recently discovered security flaw Spectre requires a high resolution
timer. To the today's knowledge, PHP can't be used to create an attack for
this flaw. Still some concerns were raised, that there might be impact in
shared hosting environments. This patch adds a possibility to reduce the
timer resolution by an ini setting, thus giving administrators full
control. Especially, as the flaw was also demonstrated by an abuse of
the JS engine in a browser, Firefox reduced several time sources to 20us.
Any programming language, that doesn't compile to JIT, won't be able to
produce an attack vector for Meltdown and Spectre, at least by todays
knowledge. There are also other factors that say that the security
concern on the hrtime feature is to the big part not justified, still we
aim JIT in the future. Thus, adding a possibility to control the timer
resolution is a good and small enough tradeoff for safety and future.
2018-01-10 18:45:15 +01:00
Anatol Belski
83497327e7 Implement high resolution monotonic timer function hrtime() 2018-01-07 16:03:52 +01:00
Xinchen Hui
ec69cb664f Added entry on UPGRADING 2018-01-04 13:50:34 +08:00
Nikita Popov
b2b2b437af Add _IS_NUMBER as cast_object() target type
convert_scalar_to_number() will now call cast_object() with an
_IS_NUMBER argument, in which case the cast handler should return
either an integer or floating point number, whichever is more
appropriate.

Previously convert_scalar_to_number() unconditionally converted
objects to integers instead.

Fixes bug #53033.
Fixes bug #54973.
Fixes bug #73108.
2017-12-26 12:39:06 +01:00
Nikita Popov
688b9136ab Fixed bug #54043 2017-12-23 13:35:08 +01:00
Nikita Popov
161fd75773 Bump libcurl requirement to 7.12.1
The existence of the following functions is now guaranteed:
 * curl_reset()
 * curl_strerror()
 * curl_multi_strerror()
 * curl_share_strerror()

libcurl 7.12.1 has been released more than 13 years ago and is
available even in RHEL 4.
2017-12-19 23:23:56 +01:00
Nikita Popov
e512305581 Remove opcache.inherited_hack
This ini directive has already been ignored since PHP 5.3.
2017-12-18 22:00:54 +01:00
Nikita Popov
43d9f5995d Fix duplicate NEWS entry
Also add an UPGRADING note while at it, as this is potentially
BC breaking.

[ci skip]
2017-12-16 17:41:24 +01:00
Nikita Popov
fc80114a48 Add gmp_kronecker()
Exposes the mpz_kronecker(), mpz_si_kronecker() and
mpz_kronecher_si() for computing the Kronecker symbol.
2017-12-11 19:25:54 +01:00
Nikita Popov
10a336d3d0 Add gmp_perfect_power()
Exposes the mpz_perfect_power_p() function.

We already had the more specific gmp_perfect_square() function.
2017-12-11 19:25:54 +01:00
Nikita Popov
a1d36a1157 Add gmp_lcm()
Exposes mpz_lcm() and mpz_lcm_ui() for calculating the least
common multiple.

We already expose the somewhat complementary gmp_gcd() function.
2017-12-11 19:25:54 +01:00
Nikita Popov
7fea79675c Add gmp_binomial()
Adds PHP bindings for mpz_bin_ui and mpz_bin_uiui, for calculating
binomial coefficients.
2017-12-11 19:25:54 +01:00
David Walker
6d4de4cf05 Implement list() reference assignments
Support list() reference assignments of the form:

    list(&$a, list(&$b, $c)) = $d;

RFC: https://wiki.php.net/rfc/list_reference_assignment
2017-12-09 13:39:52 +01:00
Nikita Popov
9cdd547eca Fixed bug #74372 2017-12-06 23:36:09 +01:00
Joe Watkins
18c833504f
Merge branch 'PHP-7.2'
* PHP-7.2:
  Mention spl_object_id in UPGRADING notes
2017-11-06 07:20:14 +00:00
Tyson Andre
88e94a0bd1
Mention spl_object_id in UPGRADING notes
This was implemented in PR #2611
2017-11-06 07:18:39 +00:00
Anatol Belski
b66eeb3652 Note to UPGRADING about Spoofchecker::setRestrictionLevel() 2017-11-02 13:34:58 +01:00
Andrea Faulds
e823770515 Merge JSON_THROW_ON_ERROR 2017-10-22 19:41:23 +01:00
Dmitry Stogov
cb9d81ef4f Refactored recursion pretection 2017-10-06 01:34:50 +03:00
Christoph M. Becker
b0d6d27349 [ci skip] hash_hmac_algos() is new in PHP 7.2.0 2017-09-27 17:18:10 +02:00
Jannes Jeising
c7a0177491 [ci skip] Fix more typos in UPGRADING 2017-09-20 15:50:06 -04:00
Christoph M. Becker
97bfc28341 [ci skip] Update UPGRADING wrt. PR 2742 2017-09-18 15:57:51 +02:00
Christoph M. Becker
9848e417c3 Merge branch 'PHP-7.2'
* PHP-7.2:
  [ci skip] Fix typos in UPGRADING
2017-09-14 00:36:43 +02:00
Christoph M. Becker
b5052f0110 [ci skip] Fix typos in UPGRADING 2017-09-14 00:34:26 +02:00
Christoph M. Becker
18adc6f0fc Merge branch 'pull-request/2745'
* pull-request/2745:
  Fixed bug #75169 (BCMath errors/warnings bypass error handling)
2017-09-13 16:21:30 +02:00
Christoph M. Becker
1738fa3ec1 Merge branch 'pull-request/2739'
* pull-request/2739:
  Fix proto and indentation
  Fix arginfo
  Return old scale value from bcscale()
2017-09-13 16:04:54 +02:00
Christoph M. Becker
d95221ec4b [ci-skip] Add missing UPGRADING entry for commit 0d0f7cd
There is a respective entry in NEWS, but that would likely be missed by
the doc team.
2017-09-11 18:37:51 +02:00
Nikita Popov
fd07302024 Fixed bug #75170
This change may result in different mt_rand/rand sequences being
generated on 64-bit systems for a specific seed.

See also https://externals.io/message/100229.
2017-09-07 20:04:38 +02:00
Remi Collet
040a3230b2 UPGRADING 2017-09-07 14:28:05 +02:00
Remi Collet
7378967206 UPGRADING 2017-09-05 08:20:04 +02:00
Kalle Sommer Nielsen
d3bc8beb4f Removed support for BeOS, development for BeOS was supported 17 years ago.
This patch however does not drop support for the BeOS compatible variant, Haiku, see Github PR #2697 which is currently a WiP

I intentionally left out some fragments for BeOS in the build system for that seems to be bundles
2017-08-29 22:03:56 +02:00
Michael Moravec
d9d13aba58 Added method DateTime::createFromImmutable() 2017-08-25 22:20:43 +02:00
Kalle Sommer Nielsen
1d9b46f362 Implemented FR #74781 (Add the latest PG_DIAG_* const) 2017-08-17 21:04:41 +02:00
Christoph M. Becker
9221bd7f32 Merge branch 'pull-request/2670'
* pull-request/2670:
  Change getimagesize() and friends to report image/bmp
2017-08-13 21:22:57 +02:00
Nikita Popov
b202587e09 Note deprecation of $errcontext 2017-08-12 20:34:44 +02:00
Andreas Treichel
29e4d4eee6 Add ftp_append to create a new file or append data to an existing file (RFC959) 2017-08-02 20:52:28 +02:00
Kalle Sommer Nielsen
398be731e6 Removed support for ODBCRouter 2017-07-28 10:31:48 +02:00
Andreas Treichel
00cd671233
Make transfer mode optional, set default to binary 2017-07-25 09:09:12 +01:00
jrfnl
f901e7e3c5 Fix typo in PHP 7.2 changelog 2017-07-24 16:57:07 -04:00
Issei.M
f1d7857969
Fix typo in UPGRADING for 7.2 2017-07-24 10:44:19 +01:00
Kalle Sommer Nielsen
f35f45906e Redesigned ext_skel to be written entirely in PHP with no dependencies, this means it will now run on Windows without Cygwin and other nonsense.
It no longer includes a way to generate XML documentation (the PHP documentation utilities already got tools for that in svn under phpdoc/doc-base) and it no longer support function stubs.

$ php ext_skel.php --help
php ext_skel.php --ext=<name> [--experimental] [--author=<name>]
                 [--dir=<path>] [--std] [--onlyunix]
                 [--onlywindows] [--help]

  --ext=<name>          The name of the extension defined as <name>
  --experimental        Passed if this extension is experimental, this creates
                        the EXPERIMENTAL file in the root of the extension
  --author=<name>       Your name, this is used if --header is passed and
                        for the CREDITS file
  --dir=<path>          Path to the directory for where extension should be
                        created. Defaults to the directory of where this script
                        lives
  --std                 If passed, the standard header and vim rules footer used

                        in extensions that is included in the core, will be used

  --onlyunix            Only generate configure scripts for Unix
  --onlywindows         Only generate configure scripts for Windows
  --help                This help

Example usage:
$ php ext_skel.php --ext test --std --experimental
$ php ext_skel.php --ext kalle --author "Kalle Sommer Nielsen"
$ php ext_skel.php --ext phpfi --dir "/home/kalle/dev/" --onlyunix
2017-07-23 10:36:35 +02:00
Kalle Sommer Nielsen
a398df3e36 Removed Bird(broken)step support from ODBC 2017-07-19 10:19:32 +02:00
Kalle Sommer Nielsen
969eb8345b * Implemented #65187 (exif_read_data/thumbnail: add support for stream resource)
* ext/exif now uses FAST_ZPP
2017-07-12 05:43:50 +02:00
Remi Collet
c229ab587c NEWS for Sodium 2017-07-11 07:41:43 +02:00
Remi Collet
569d164c4a ZipArchive implements countable, added ZipArchive::count() method 2017-07-10 11:31:55 +02:00
Remi Collet
5369006edf Upgrading note for #74837 2017-07-10 08:55:41 +02:00
Kalle Sommer Nielsen
ba28d75c2c Deprecated the read_exif_data() alias 2017-07-08 15:02:05 +02:00