Commit Graph

899 Commits

Author SHA1 Message Date
Jakub Zelenka
e5a9956336 Update NEWS and UPGRADING with info about syslog.filter 2018-07-22 16:36:36 +01:00
Nikita Popov
4a528d46f5 Add UPGRADING notes for deprecations 2018-07-21 22:48:42 +02:00
Trevor Rowbotham
fb0faf0208 [ci skip] Add new global MBString constants to UPGRADING
The constants are mentioned further up in the New Features section,
but weren't explicitly listed under the New Global Constants section.
2018-07-20 13:17:48 +02:00
Enno Woortmann
50516a6e1f Add implementation and tests for new methods - array_key_first(array $a) Returns the key of the first element or null - array_key_last(array $a) Returns the key of the last element or null 2018-07-17 11:31:00 +02:00
Christoph M. Becker
79a27ccf3f FILTER_FLAG_(SCHEME|HOST)_REQUIRED are now deprecated 2018-07-17 11:01:44 +02:00
Nikita Popov
3588d8af12 Deprecate case-insensitive constants
RFC: https://wiki.php.net/rfc/case_insensitive_constant_deprecation
2018-07-16 19:16:55 +02:00
Andrea Faulds
e4e9cd8355 Export stdClass objects using (object) cast (fixes #48016)
Before this change, var_export()'s output for stdClass objects calls
the non-existent stdClass::__set_state method, and is therefore useless.

This commit makes var_export() output an (object) cast from an array
instead, which when evaluated, will produce a stdClass object. Other
classes see unchanged output.
2018-07-12 13:22:26 +02:00
Kalle Sommer Nielsen
a8dce31957 Added the 'add_slashes' sanitization filter (FILTER_SANITIZE_ADD_SLASHES) as an alias to 'magic_quotes' (FILTER_SANITIZE_MAGIC_QUOTES) so we can move past our "magical" legacy. 2018-07-09 03:58:20 +02:00
Jakub Zelenka
2a78006adb Update NEWS and UPGRADING for fpm_get_status addition 2018-07-07 12:53:08 +01:00
seliver
95013042bf Fixed bug #76136 (stream_socket_get_name enclosed IPv6 in brackets)
The IPv6 IP of a socket is provided by inet_ntop() as a string, but
this function doesn't enclose the IP in brackets. This patch adds
them in the php_network_populate_name_from_sockaddr() function.
2018-07-07 11:47:50 +02:00
Nikita Popov
04e3523b7d Warn if continue is used on switch
Supersedes RFC https://wiki.php.net/rfc/continue_on_switch_deprecation
by generating a warning instead of deprecating and removing this
functionality.
2018-07-07 11:12:48 +02:00
Nikita Popov
41a6625c09 Add UPGRADING for mb_ereg changes
Also some minor code cleanup.
2018-07-07 11:06:29 +02:00
Remi Collet
587ab00698 NEW and UPGRADING 2018-07-05 06:34:08 +02:00
Dmitry Stogov
3a8f26060c Argument unpacking with Traversables and non-integer keys.
Changed error message, added UPGRADING note and test.
2018-07-04 22:34:36 +03:00
Rudi Theunissen
30156d588c Fixed bug #63217
Don't automatically convert literal string keys to integers on
array access, as we may be dealing with an ArrayAccess object,
rather than a plain array.
2018-07-02 16:41:59 +02:00
Jakub Zelenka
ce0721bee5 Update NEWS, UPGRADING and default php.ini files with syslog changes 2018-07-01 18:27:36 +01:00
Christoph M. Becker
3f241f3caa Update UPGRADING wrt. PCRE2
The upgrade to PCRE2 should mostly be transparent to existing code, but
apparently there are some minor differences, which warrant a note in
UPGRADING (and consequently, in the migration guide).
2018-06-27 15:19:41 +02:00
Nikita Popov
2543e61aed Fixed bug #76509
In PHP static properties are shared between inheriting classes,
unless they are explicitly overwritten. However, because this
functionality was implemented using reference, it was possible
to break the implementation by reassigning the static property
reference.

This is fixed by switching the implementation from using references
to using INDIRECTs, which cannot be affected by userland code.
2018-06-25 15:04:09 +02:00
Nikita Popov
490a49d0bb Use COPY_DEREF for DIM_IS and LIST_R as well
Also add an upgrading note for the behavior change, not that we
expect anyone to be affected...
2018-06-25 14:23:06 +02:00
Christoph M. Becker
d169d06d30 Remove useless PHPDBG_* constants
The sole purpose of `PHPDBG_FILE`, `PHPDBG_METHOD`, `PHPDBG_LINENO` and
`PHPDBG_FUNC` has been to be passed as first argument to `phpdbg_break`.
However, this functions is replaced as of PHP 5.6.3 by
`phpdbg_break_file`, `phpdbg_break_method` and 'phpdbg_break_func`,
respectively.  Therefore, we're finally removing the useless constants.
2018-06-25 11:42:54 +02:00
Charles R. Portwood II
55277a6684 RFC: Argon2 Password Hash Enhancements Implementation of Argon2id per RFC https://wiki.php.net/rfc/argon2_password_hash_enhancements
- m4 and Windows configure scripts now forces Argon2 reference library version >= 20161029
- Implementation tested against 20161029 and 20171227 for Argon2id support
- Updates Argon2 ext/standard/password/tests to run tests for both Argon2i and Argon2id
2018-06-21 13:26:57 +02:00
Gabriel Caruso
fc775f6915 Report unknown variables passed to compact() 2018-06-19 12:50:15 +02:00
Nikita Popov
d04917c7b3 Fixed bug #75218
I've introduced a new CompileError type, from which ParseError
inherits. These errors are not parse errors in the narrow sense
of the term, even though they happen to be generated during
parsing in our implementation. Additionally reusing the ParseError
class for this purpose would change existing error messages (if
the exception is not caught) from a "Fatal error:" to a "Parse
error:" prefix, and also the error kind from E_COMPILE_ERROR to
E_PARSE.
2018-06-16 12:41:03 +02:00
Victor Csiky
71c04324b7 Fixe bug #76386
..that is also a duplicate of #67122
2018-06-15 07:23:31 +02:00
Nikita Popov
f2be6e732a Update data tables for Unicode 11 2018-06-11 20:25:37 +02:00
Christoph M. Becker
3cbf594dfd Deprecate image2wbmp()
According to https://wiki.php.net/rfc/image2wbmp, we deprecate
`image2wbmp()`, rename the `$threshold` parameter to `$foreground`, and
remove superfluous code.
2018-06-10 00:33:42 +02:00
Anatol Belski
e147eb24b2 [ci skip] Add UPGRADING note 2018-06-02 20:58:39 +02:00
Nikita Popov
c70468b8d3 Add note about heredoc BC break 2018-05-28 22:14:04 +02:00
Nikita Popov
cc98b88087 UPGRADING tweaks
Fix a typo and clarify that Reflection changes only affect string
export. No API relevant return values are changed.

[ci skip]
2018-05-26 21:59:36 +02:00
Nikita Popov
95c9d9d2d7 Add some upgrading notes for mbstring 2018-05-25 12:09:51 +02:00
Anatol Belski
e788708e01 [ci skip] Add upgrading note 2018-05-17 13:18:43 +02:00
Jakub Zelenka
1f474272e5 Update NEWS and UPGRADING for openssl_pkey_derive 2018-05-09 19:56:34 +01:00
Thomas Punt
4887357269 Implement flexible heredoc/nowdoc syntax
RFC: https://wiki.php.net/rfc/flexible_heredoc_nowdoc_syntaxes

* The ending label no longer has to be followed by a semicolon or
  newline. Any non-label character is fine.
* The ending label may be indented. The indentation will be stripped
  from all lines in the heredoc/nowdoc string.

Lexing of heredoc strings performs a scan-ahead to determine the
indentation of the ending label, so that the correct amount of
indentation can be removed when calculting the semantic values for
use by the parser. This makes the implementation quite a bit more
complicated than we would like :/
2018-04-13 21:35:37 +02:00
Christoph M. Becker
c8c0bb11e7 [ci skip] Update UPGRADING
Cf. ce1d69a1f6 and
fef879a2d6, respectively.

Patch provided by Gabriel Caruso.
2018-04-12 19:00:22 +02:00
Anatol Belski
39301abbe1 Expose functionality for NFKC_Casefold normalization 2018-04-06 18:14:11 +02:00
Anatol Belski
36014ad23f Replace the deprecated API by the newer one available with ICU 56+ 2018-04-06 10:12:44 +02:00
Christoph M. Becker
a9ab5d473b [ci skip] Update UPGRADING
5c5bd30339 removed support for `--with-libmbfl`.
2018-04-04 14:11:37 +02:00
Tim Bazuin
033907b9a5 Add support for rl_completion_suppress_append and rl_completion_append_character
These options are only available with libreadline.
2018-03-25 18:21:35 +02:00
timurib
f7f48643e7 Remove redundant warning in array_push() and array_unshift()
Cf. https://github.com/php/php-src/pull/3011.
2018-03-25 17:49:04 +02:00
Christoph M. Becker
aed1e358dc Implement #51368: php_filter_float does not allow custom thousand separators
A set of hard-coded thousand separator characters (presently, `',.`) is
somewhat limited (users may prefer other separators, such as spaces or
underscores), as well as somewhat too liberal (arbitrary combinations
of different thousand separators are presently possible).  Therefore we
introduce a `thousand` option analogous to `decimal`, which allows to
define the desired thousand separators as non-empty string, defaulting
to `',.`.  While we easily could support empty strings here as well,
that would not make much sense, since this behavior can more easily be
accomplished by not setting the `FILTER_FLAG_ALLOW_THOUSAND` flag in
the first place.
2018-03-24 15:04:32 +01:00
Paul Crovella
aca0f7e24c [ci skip] Add normalizer_get_raw_decomposition to UPGRADING 2018-03-23 10:37:05 +01:00
Gabriel Caruso
d0ee2a8254 Add is_countable function
RFC: https://wiki.php.net/rfc/is-countable
2018-03-11 16:41:16 +01:00
Jonathan Torres
1cb3c15032
Fix typo in upgrade notes 2018-03-09 12:06:17 +01:00
Nikita Popov
47699a24e6 Bump libcurl requirement to 7.15.5
The existence of the following functions is now guaranteed:
 * curl_escape()
 * curl_unescape()
 * curl_multi_setopt()

libcurl 7.15.5 has been released 11.5 years ago and is available
even in RHEL 5.
2018-02-03 21:11:20 +01:00
Benjamin Morel
85021a3993 Add CURLOPT_REQUEST_TARGET constant 2018-02-03 20:43:18 +01:00
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
Andrey Andreev
ce4e07e37d
Add missing NEWS entry, update UPGRADING
This was done back in January, but never noted in the NEWS file.
References:

https://github.com/php/php-src/pull/2312
https://github.com/php/php-src/pull/2321
2017-07-07 13:01:09 +03:00
Yasuo Ohgaki
a2d766503a Fixed bug #74514 5 session functions incorrectly warn when calling in read-only/getter mode 2017-07-01 03:32:54 +09:00
Michał Brzuchalski
8e10c9d373 Implement object type annotation
RFC: https://wiki.php.net/rfc/object-typehint
2017-06-25 21:49:41 +02:00
Christopher Jones
52e5406e87 Fixed Bug #74537 (Align --with-pdo-oci configure option with --with-oci8 syntax) 2017-06-20 16:24:38 +10:00
Christopher Jones
3fd99f4e08 Mention OCI8 TAF callback support in UPGRADING 2017-06-20 15:51:56 +10:00
Christoph M. Becker
e511f152f4 Merge branch 'pull-request/2528'
* pull-request/2528:
  Change flags to use SQLITE3_OPEN_READ* constants instead of a fake-boolean, add tests on errors
  Implement writing to BLOBs in SQLite3
2017-06-19 14:47:42 +02:00
Anatol Belski
e72970026d add UPGRADING note 2017-06-09 17:45:24 +02:00
Nicolas Grekas
3c43510b19 add PREG_UNMATCHED_AS_NULL flag to allow distinguish between unmatched subpatterns and empty matches 2017-05-29 11:40:29 +02:00
Kalle Sommer Nielsen
818272ae10 Added more EXIF MAKERNOTE formats:
- AGFA,
 - Kyocera
 - Ricoh
 - Epson
2017-05-28 14:00:51 +02:00
Pedro Magalhães
a5eb57c96e Allow overriding abstract methods
RFC: https://wiki.php.net/rfc/allow-abstract-function-override
2017-05-24 17:42:01 +02:00
Craig Duncan
e946d074dd
Ensure number_format() doesn't include sign for zero 2017-05-09 10:17:19 +01:00
Pedro Magalhães
92124f9cdc Fixed bug #74269: Strict comparison of initial trait property values 2017-05-01 12:59:27 +02:00
Sammy Kaye Powers
12300f465e Add trailing comma syntax support for mixed and unmixed group use lists
RFC: https://wiki.php.net/rfc/list-syntax-trailing-commas
2017-05-01 12:19:47 +02:00
Vivek Dinesh
33ee022525 Fix typos
[skip ci]
2017-03-27 18:33:47 +02:00
Rowan Collins
1b565f1393 Change 'undefined constant' from E_NOTICE to E_WARNING and mention deprecation
Implements RFC "Deprecate and Remove Bareword (Unquoted) Strings"
[https://wiki.php.net/rfc/deprecate-bareword-strings]
2017-03-23 18:52:43 +01:00
Adam Baratz
5096a429a1 Fix typo 2017-03-21 21:17:08 -07:00
Jakub Zelenka
bde01adaeb Add note to the UPGRADING about JSON_OBJECT_AS_ARRAY priority changes 2017-03-20 13:54:47 +00:00
Remi Collet
402eeb8598 Zip: add support for encrypted archive 2017-03-02 13:36:40 +01:00
Christoph M. Becker
2ed4723aff Merge branch 'pull-request/2355'
* pull-request/2355:
  Deprecate INTL_IDNA_VARIANT_2003

We also add a respective note to UPGRADING.
2017-02-14 14:16:54 +01:00
Niklas Keller
2edc3cf8d2 Implement Parameter Type Widening RFC 2017-02-04 23:33:24 +01:00
Nikita Popov
0ecffc8af6 Add UPGRADING notes for deprecations 2017-02-03 21:02:52 +01:00
Joe Watkins
2eb0cb3afe
[ci skip] add upgrading note about PHP_OS_FAMILY 2017-01-26 05:59:36 +00:00
Rasmus Lerdorf
7b8b2e50f6 Switch to the v2 version of these functions.
The sqlite3 docs suggest always using prepare_v2 and the close_v2
could potentially help with an fd leak we have been seeing
2017-01-22 07:26:07 -08:00
Andrey Andreev
d89d149edf Disallow non-crypto hashes in HMAC and PBKDF2
For this purpose add is_crypto flag to php_hash_ops.
2017-01-18 21:13:54 +01:00
Libor M
90dcbbe3cb Fixed bug #46564
bcmod() no longer truncates fractionals to integers. This matches
the behavior of fmod(). It also matches the behavior of bcpowmod().
It also matches the behavior of bcmod() in HHVM.
2017-01-07 19:10:31 +01:00
Christoph M. Becker
c832ab4de6 Update UPGRADING wrt. PR 1303 2017-01-06 11:24:44 +01:00
Joe Watkins
c9abe878b5
Merge branch 'PHP-7.1'
* PHP-7.1:
  Increase realpath_cache_size default value
  add UPGRADING note for realpath_cache_size
2017-01-06 05:32:12 +00:00
Christoph M. Becker
500b496f8e Implement #69606: Support BMPs (added in GD 2.1.0)
We add PHP bindings for libgd's features to read and write BMP files, which
are available as of libgd 2.1.0.

As PHP's bundled libgd doesn't yet include the respective features of the
external libgd, we add these.
2017-01-04 14:55:02 +01:00
sskaje
4935f795e8 Merge branch 'master' into master 2017-01-03 18:42:27 +08:00
Adam Harvey
eb25e14962 Document the changes to lexical scoping in 7.1.
Fixes bug #73844 (Cannot use lexical variable $variable as a parameter
name inside array_walk()).
2016-12-30 11:39:45 -08:00
Christoph M. Becker
f5bf19ee3a Update UPGRADING wrt. bug #72785 2016-12-30 14:17:38 +01:00
Anatol Belski
5e6faf2306 add UPGRADING and NEWS items 2016-12-21 16:10:38 +01:00
Yasuo Ohgaki
7774fd1916 Update NEWS and UPGRADING 2016-12-21 08:16:38 +09:00
Anatol Belski
59bf7f907f extend UPGRADING 2016-12-18 01:08:58 +01:00
Leigh
1da589eeae Update NEWS/UPGRADING for mcrypt 2016-12-13 10:11:14 +00:00
Tobias Schultze
e15733f0b8 Fix session upgrade documentation 2016-12-04 07:33:29 +01:00
Jakub Zelenka
02cecc0fb5 Update UPGRADING with info about AEAD changes in openssl_(en|de)crypt 2016-11-27 19:05:49 +00:00
Anatol Belski
35a3c6e2b9 fix spelling 2016-11-25 19:27:01 +01:00
Anatol Belski
714ded8049 update UPGRADING 2016-11-25 19:01:13 +01:00
Craig Duncan
78f2bce68a Added a note in UPGRADING about the new count() warning 2016-11-17 09:33:04 +00:00
Yasuo Ohgaki
7f196e321f Fix bug #71038 - session_start() returns true even when it failed
PR #2167
2016-11-17 11:09:07 +09:00
Andrea Faulds
ee38e01ff3 Fix mistake in UPGRADING 2016-11-14 21:32:39 +00:00
Andrea Faulds
a0502b89a6 Convert numeric keys in object/array casts
RFC: https://wiki.php.net/rfc/convert_numeric_keys_in_object_array_casts

This converts key types as appropriate in object to array and array to object
casts, as well as in get_object_vars().
2016-11-14 18:20:45 +00:00
Christoph M. Becker
189bbb586c Merge branch 'pull-request/2164' 2016-11-13 23:31:40 +01:00
Kalle Sommer Nielsen
2104bea5d7 Remove Netware support
If this does not break the Unix system somehow, I'll be amazed. This should get most of it out, apologies for any errors this may cause on non-Windows ends which I cannot test atm.
2016-11-12 11:20:01 +01:00
Derick Rethans
69a3659d41 Add hint that naive DateTime comparisions now are more likely to fail 2016-11-07 16:40:42 +00:00
Anatol Belski
1667acbf72 fix doc 2016-10-28 23:02:38 +02:00
Anatol Belski
cc81971e9e extend info to float related constants 2016-10-28 20:49:12 +02:00
Anatol Belski
431abb2117 note to UPDRADING 2016-10-28 20:27:32 +02:00
Benjamin Morel
da22cfe032 Typo 2016-10-28 10:04:23 +02:00
Anatol Belski
701df2c410 note to UPGRADING 2016-10-26 21:10:17 +02:00
Yasuo Ohgaki
e893abda81 Revert "Update UPGRADING to reflect bug fix"
This change was made in 7.0. Sorry for the noise.

This reverts commit e9c8e50b66.
2016-10-26 04:01:55 +09:00
Yasuo Ohgaki
e9c8e50b66 Update UPGRADING to reflect bug fix 2016-10-26 03:26:44 +09:00
Christoph M. Becker
ed61791a5a Update UPGRADING wrt. imageresolution()
Cf. <http://git.php.net/?p=php-src.git;a=commit;h=209d4220>.
2016-10-20 12:59:03 +02:00
Andrea Faulds
858531661b NEWS and UPGRADING for utf8_encode() and utf8_decode() move 2016-10-17 15:45:01 +01:00
Christoph M. Becker
0f49aa3287 Merge branch 'pull-request/2151' 2016-10-17 10:37:38 +02:00
Kalle Sommer Nielsen
64945e9387 Implemented proc_nice() for Windows (FR #49806)
The core implementation details are described in win32/nice.c for values sent to proc_nice(), these can however be discussed to maybe comply with those of wmic, Anatol, thoughts?

The test supplied uses wmic for testing the functionality, it could potentially fail on systems where either wmic is not available or the system language is not english (as Microsoft tends to translate even CLI programs).
2016-10-16 04:17:35 +02:00
Christoph M. Becker
2cc3aeb4b9 Implement #72918: negative offset inside a quoted string leads to parse error
We allow negative numeric offsets for the simple syntax inside
double-quoted and heredoc strings.
2016-10-14 14:14:08 +02:00
Yasuo Ohgaki
bccc1dd1e7 Update UPGRADING 2016-10-14 07:53:16 +09:00
Christoph M. Becker
14d4ee93a8 Implement #65038: IMAGETYPE_WEBP constant missing
We add WebP support for getimagesize(), getimagesizefromstring)(),
image_type_to_extension() and image_type_to_mime_type(). For now we
care only about the simple lossy WebP format (VP8) and ignore the
lossless (VP8L) and extended (VP8X) formats. We use image/webp as MIME
type as it appears to be pretty common, even though it is not yet
registered with IANA.

Relevant specifications:
 * <https://developers.google.com/speed/webp/docs/riff_container>
 * <https://tools.ietf.org/html/rfc6386>
2016-10-08 00:02:21 +02:00
Christoph M. Becker
5b52d5acde Fix #73207: Array ordering is same between 5.6.21 and 7.1.0 RC3 2016-10-03 18:55:39 +02:00
Christoph M. Becker
82a8e57f37 Add support for gdEffectMultiply
gdLayerMultiply() has been introduced in libgd 2.1.1, and as such would have
been already available for imagelayereffect() with a system libgd. We port
the respective code to the bundled libgd, and also make IMG_EFFECT_MULTIPLY
available to userland.
2016-10-02 19:10:13 +02:00
Christoph M. Becker
d0f14a4429 Switch to libgd anti-aliased drawing API
Instead of rolling our own in the bundled libgd, we use libgd's anti-aliased
drawing API. This way imageantialias() is also available, when built against
a system libgd.
2016-10-02 13:16:40 +02:00
Davey Shafik
94f7e4a5f4 Update UPGRADING to reflect new reality 2016-09-28 11:24:43 -07:00
Nikita Popov
bd893061d6 Use SEND_USER for CONST|TMP as well
Otherwise we're missing the "expected to be a reference, value
given" warning that appears for ordinary calls to call_user_func().

Also update an UPGRADING note with recent changes wrt
call_user_func().
2016-09-25 12:39:23 +02:00
Christoph M. Becker
2e1d20a28b Merge branch 'pull-request/2026' 2016-09-24 15:41:55 +02:00
Christoph M. Becker
d95b8eaf31 Don't enforce palette conversion when writing GD images
The GD image format is able to handle truecolor images as of libgd 2.0.12
(<https://github.com/libgd/libgd/blob/gd-2.2.3/src/gd_gd.c#L31-L33>).
Therefore we don't need the potentially lossy and time consuming palette
conversion.

This way, imagegd() can also be used to export raw truecolor image data.
2016-09-24 14:46:37 +02:00
Yasuo Ohgaki
6e530502d2 Implemented Bug #68776 mail() does not have mail header injection prevention for additional headers
(PR 2060)
2016-09-15 06:43:57 +09:00
Christoph M. Becker
219d8599b0 Fix #72430: [] operator not supported for strings 2016-09-14 12:43:22 +02:00
Christoph M. Becker
494c5dc77a Remove effectless --enable-gd-native-ttf and USE_GD_IMGSTRTTF
--enable-gd-native-ttf did set USE_GD_IMGSTRTTF, which is otherwise unused
as of commit 8a90aad3 (i.e. PHP 5.5.0), at least.
2016-09-14 01:01:19 +02:00
Christoph M. Becker
8bea911f79 Update UPGRADING wrt. [RFC]: Add Argon2 to password_* 2016-09-08 19:59:21 +02:00
Christoph M. Becker
68d3501381 Merge branch 'pull-request/2115' into PHP-7.1 2016-09-06 14:14:23 +02:00
Yasuo Ohgaki
2605ceeaca Added array parameter support to mb_convert_encoding() 2016-09-06 18:20:24 +09:00
Christoph M. Becker
cc8691cc4b Update UPGRADING wrt. commit c4fe264b 2016-09-05 11:27:46 +02:00
Christoph M. Becker
272ba2b738 Update UPGRADING wrt. RFC: Implement socket_getaddrinfo() 2016-09-02 20:19:09 +02:00
Stephan Muggli
9c69d98614 Fix typo in UPGRADING 2016-09-02 15:04:58 +00:00
Yasuo Ohgaki
b651b96738 Allow array input for mb_check_encoding() 2016-09-02 14:18:34 +09:00
Teoh Han Hui
2c3408f5cb Fix some grammatical errors in PHP 7.1 Upgrade Notes
[skip ci]
2016-09-01 12:58:32 +02:00
Yasuo Ohgaki
a3c162665d Revert "Update UPGRADING"
This reverts commit 567f19dd89.
2016-09-01 10:42:03 +09:00
Yasuo Ohgaki
4f07f0e93f Update NEWS and UPGRADING 2016-09-01 10:32:34 +09:00
Yasuo Ohgaki
567f19dd89 Update UPGRADING 2016-09-01 05:56:09 +09:00
Yasuo Ohgaki
80d514d294 Update UPGRADING 2016-09-01 03:24:50 +09:00
Aaron Piotrowski
6dccadaac6 Remove accidental NEWS and UPGRADING entries
Merge mistake from PHP-7.1.
2016-08-23 11:49:57 -05:00
Levi Morrison
f4e68a3968 Revert "Do not prepend ? on nullables in ReflectionType::__toString()"
This reverts commit 8855a2ce76.
2016-08-23 09:43:31 -06:00
Aaron Piotrowski
83bdcf075b Merge branch 'PHP-7.1'
# Conflicts:
#	NEWS
#	UPGRADING
2016-08-21 00:34:00 -05:00
Aaron Piotrowski
8855a2ce76 Do not prepend ? on nullables in ReflectionType::__toString()
Better BC with 7.0.
2016-08-21 00:12:47 -05:00
Julien Pauli
5818b09a45 Updated UPGRADING about function call args 2016-08-18 15:46:02 +02:00
Nikita Popov
89f6377971 Return true for is_object() on Incomplete_Class 2016-08-15 23:13:09 +02:00
Nikita Popov
34824b70f8 gettype(): Use "resource (closed)" instead of "unknown type" 2016-08-15 23:12:24 +02:00
Nikita Popov
0374a98e14 Scrub UPGRADING and UPGRADING.INTERNALS
There were already some master-only entries in there -- I hope I
didn't remove anything that was supposed to be there.

[skip ci]
2016-08-15 23:01:19 +02:00
Anatol Belski
32c94deac3 update UPGRADING 2016-08-14 20:55:26 +02:00
Yasuo Ohgaki
3467526a65 Merge RFC: Session ID without hashing
https://wiki.php.net/rfc/session-id-without-hashing
2016-08-12 12:31:02 +09:00
Andrea Faulds
1dab96c1db Show "or null" in TypeErrors for nullable arg_infos 2016-08-11 18:44:43 +02:00
Aaron Piotrowski
622d2f41d1 ReflectionType improvements
Added ReflectionNamedType and updated ReflectionType::__toString()
2016-08-11 12:19:33 +02:00
Kalle Sommer Nielsen
197051f3ab Remove sql.safe_mode
This is one of the last old and odd deprecated settings we still have in PHP, it was never fully implemented in all the database extensions and should probably have been gone back in 5.4, along with safe_mode. Although if my memory strikes me right, mysql was also supporting it back then, but not mysqli.

So far only interbase was supporting this feature, and the removal of it causes two effects for interbase:
 - CREATE DATABASE is now allowed no matter
 - The default database set by php.ini (ibase.default_db) is no longer forced

http://php.net/ini.core#ini.sql.safe-mode
2016-08-11 05:06:55 +02:00
Yasuo Ohgaki
a53a6b3fb4 Fix URL rewriter issues 2016-08-11 08:31:48 +09:00
Yasuo Ohgaki
ee797e7ecc Update NEWS and UPGRADING 2016-08-10 14:53:27 +09:00
Yasuo Ohgaki
087dcd9381 pull-request/1100
Request #65081 mb_chr() and mb_ord()

Added test cases and little optimization.
2016-08-10 11:32:10 +09:00
Christoph M. Becker
b50a4a485a Class constant visibility modifiers are now supported 2016-08-09 11:54:43 +02:00
Christoph M. Becker
f706897f33 Implement #38992: invoke() and invokeArgs() static method calls should match
We don't want ReflectionMethod::invoke() to simply ignore its first argument,
if the method to invoke is a static method. Instead we match its ZPP with
that of ReflectionMethod::invokeArgs(). Furthermore, we apply the DRY
principle by factoring out the code to a common helper function to prevent
inadvertent future divergence of the implementations of both methods.

As can be seen from the necessity to adapt some test cases, this causes a
BC break for some pathological cases. Therefore we apply this patch to PHP
7.1 only, which is still in beta phase.
2016-08-08 01:43:03 +02:00
Kalle Sommer Nielsen
7cce4496e5 Note about the recent change to the WSA version check on Windows 2016-08-07 05:40:56 +02:00
Kalle Sommer Nielsen
b944a7a549 NEWS + UPGRADING for recent EXIF additions 2016-08-06 12:39:05 +02:00
Christoph M. Becker
67786d343a Merge branch 'PHP-7.1' 2016-08-05 13:25:30 +02:00
ju1ius
03d03243fa Fix #72711: mb_ereg does not clear the $regs parameter on failure
When `mb_ereg` failed to match, it didn't update the `$regs` argument.
Now it will always set it to the empty array.
2016-08-05 13:22:10 +02:00
Kalle Sommer Nielsen
d9e4d5116b NEWS and UPGRADING for recent fixes and additions to ext/exif 2016-08-05 07:54:36 +02:00