Commit Graph

117 Commits

Author SHA1 Message Date
Xinchen Hui
cf0fae5e97 Optimized base64_encode/decode with SIMD instructions 2018-02-12 20:53:14 +08:00
Dmitry Stogov
1208acfe5f Added note about changed VM instructions 2018-02-02 17:35:23 +03:00
Dmitry Stogov
17a3b48454 Make IS_UNUSED to be zero. 2018-01-31 11:18:41 +03:00
Dmitry Stogov
742d5a01ed Get rid of IS_TYPE_COPYABLE. 2018-01-19 17:47:26 +03:00
Dmitry Stogov
1ee94f56c4 Removed IS_TYPE_COPYABLE flag from IS_STRING zvals. 2018-01-18 12:41:27 +03:00
Xinchen Hui
3a3e0493d0 Added ZEND_API zend_cpu_supports 2018-01-16 14:53:00 +08:00
Anatol Belski
83497327e7 Implement high resolution monotonic timer function hrtime() 2018-01-07 16:03:52 +01:00
Dmitry Stogov
d9f5ea691f zend_fcall_info_cache.initialized is removed (zend_fcall_info_cache is initialized if zend_fcall_info_cache.function_handler is set). 2017-12-27 15:15:03 +03: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
Tom Van Looy
e4e26f2428 Remove RAND_RANGE() macro
The behavior of RANGE_RANGE() is 7.1 changed completely, from
rescaling an already generated number to generating a number
itself. Because of this str_shuffle() ended up generating two
random numbers on every iteration.

To avoid further misuse the function is dropped entirely. Extensions
for PHP >= 7.1 should directly call php_mt_rand_range().
2017-12-09 17:24:17 +01:00
Anatol Belski
6c8b441f87 [ci skip] Update UPGRADING.INTERNALS 2017-11-06 14:20:04 +01:00
Anatol Belski
7d14dcc084 [ci skip] Fix UPGRADING.INTERNALS, seems it was not reset after 7.2
branch off
2017-11-06 14:12:02 +01:00
Dmitry Stogov
67d5f39a47 Persistent resources are "thread-local".
Register persistent resources through new functions zend_register_persistent_resource()/zend_register_persistent_resource_ex().
2017-11-01 15:19:31 +03:00
Nikita Popov
cb2884679c Remove zend_get_parameters(_ex) APIs
zend_get_parameters_ex() has been marked as deprecated for a long
time already. What zend_get_paramers() does is even more
questionable under PHP7. Both functions are obsoleted by the ZPP
mechanism, so I'm dropping them.
2017-10-30 22:00:42 +01:00
Dmitry Stogov
5d88ea5c75 Update UPGRADING.INTERNALS 2017-10-30 12:47:22 +03:00
Dmitry Stogov
ef5ea48741 Always use IS_CONSTANT_AST (IS_CONSTANT is removed). 2017-10-10 10:11:05 +03:00
Dmitry Stogov
39ded1d5f8 Changed zend_ast_ref structure to use only one allocation, removing dichotomy between heap/arena ASTs. 2017-10-09 16:57:51 +03:00
Dmitry Stogov
254b74b85f HASH_FLAG_PERSISTENT renamed into IS_ARRAY_PERSISTENT and moved into GC_FLAGS (to be consistent with IS_STR_PERSISTENT). 2017-10-06 02:54:14 +03:00
Dmitry Stogov
cb9d81ef4f Refactored recursion pretection 2017-10-06 01:34:50 +03:00
Dmitry Stogov
e70618aff6 Changed the way VM accesses constant operands in 64-bit builds. 2017-10-04 16:53:01 +03:00
Dmitry Stogov
44e0b79ac6 Refactored array creation API. array_init() and array_init_size() are converted into macros calling zend_new_array(). They are not functions anymore and don't return any values. 2017-09-20 02:25:56 +03:00
Remi Collet
8d1ae4e1c5 valid_symbol_table removed 2017-07-05 06:33:34 +02:00
Remi Collet
b6ee9dd490 upgrading: doc about ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX 2017-06-26 17:26:07 +02:00
Remi Collet
4ed8ff5090 not about zend_arg_info.class_name 2017-06-25 08:41:11 +02:00
Remi Collet
b3b8627106 note about IS_TYPE_IMMUTABLE 2017-06-25 08:32:03 +02:00
Remi Collet
59c30c01b3 note about php_pcre_replace* 2017-06-25 08:27:52 +02:00
Remi Collet
754e1c463d ZEND_ACC_CLONE is removed 2017-06-25 08:23:30 +02:00
Remi Collet
8e98a44eb2 fix version 2017-06-25 08:22:29 +02:00
Anatol Belski
e9dd511ec6 [ci skip] more upgrading notes 2017-04-24 18:15:15 +02:00
Anatol Belski
0e1b2ae4f3 [ci skip] move item to right section 2017-04-24 18:15:14 +02:00
Anatol Belski
46df51132a fix typo 2017-02-15 16:15:16 +01:00
Anatol Belski
8164e024cd update UPGRADING.INTERNALS 2017-02-13 08:35:01 +01:00
Anatol Belski
758af77e9d Path handling related refactorings
Primarily related to the path handling datatypes, to avoid unnecessary
casts, where possible. Also some rework to avoid code dup. Probably
more places are to go, even not path related, primarily to have less
casts and unsigned integers where possible. That way, we've not only
less warnings and casts, but are also safer with regard to the
integer overflows. OFC it's not a panacea, but still significantly
reduces the vulnerability potential.
2016-12-22 14:56:47 +01:00
Anatol Belski
5e6faf2306 add UPGRADING and NEWS items 2016-12-21 16:10:38 +01: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
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
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
6442aac72f move the internal only info into UPGRADING.INTERNALS 2016-07-11 11:22:00 +02:00
Anatol Belski
5e66b8f232 notes to UPGRADING.INTERNALS 2016-06-20 18:03:19 +02:00
Anatol Belski
0f71d006e8 make room for next UPGRADING notes 2015-09-17 13:19:30 +02:00
Christoph M. Becker
1b5e87a579 Fix #70289: Different sort in php7 (and hhvm) compared to php5
We add a respective note to UPGRADING. Furthermore, as renaming of zend_qsort()
and the new zend_insert_sort() are irrelevant for user-land, we move this
info to UPGRADING.INTERNALS.
2015-08-18 13:44:14 +02:00
Adam Harvey
d6db83816c We don't need CVS/SVN keywords in UPGRADING. 2015-08-13 12:40:46 -07:00
Anatol Belski
a7587135e3 more info for UPGRADING.INTERNALS 2015-08-02 17:49:06 +02:00
Anatol Belski
9249890acf fix wrong info 2015-07-29 19:30:36 +02:00
Anatol Belski
f6d196a38f document globals accesor macro and tls specifiers 2015-07-29 17:26:53 +02:00
Anatol Belski
02df0cb02b improve info about the applink 2015-07-03 12:45:59 +02:00
Anatol Belski
9d9f372df6 added openssl applink shim note to UPGRADING.INTERNALS 2015-07-03 12:40:54 +02:00
Anatol Belski
274edb4c6f add missing item in the content table 2015-07-03 12:40:53 +02:00
Anatol Belski
d0787534c0 add missing items to the table of contents 2015-07-02 16:34:42 +02:00
Anatol Belski
79ca2b06b6 update UPGRADING infos 2015-07-02 16:32:57 +02:00