summaryrefslogtreecommitdiff
path: root/NEWS
blob: ace3247fdab43eb99c65abf817b93a29569731b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
PHP                                                                        NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 Jul 2018, PHP 7.3.0alpha4

- Core:
  . Fixed bug #33502 (Some nullary functions don't check the number of
    arguments). (cmb)
  . Fixed bug #76392 (Error relocating sapi/cli/php: unsupported relocation
    type 37). (Peter Kokot)
  . The declaration and use of case-insensitive constants has been deprecated.
    (Nikita)

- Filter:
  . Added the 'add_slashes' sanitization mode (FILTER_SANITIZE_ADD_SLASHES). 
	(Kalle)
  . Fixed bug #76366 (References in sub-array for filtering breaks the filter).
    (ZiHang Gao)

- FPM:
  . Fixed bug #62596 (getallheaders() missing with PHP-FPM). (Remi)
  . Added fpm_get_status function. (Till Backhaus)
  . Fixed bug #69031 (Long messages into stdout/stderr are truncated
    incorrectly) - added new log related FPM configuration options:
    log_limit, log_buffering and decorate_workers_output. (Jakub Zelenka) 

- mbstring:
  . Fixed bug #76574 (use of undeclared identifiers INT_MAX and LONG_MAX). (cmb)
  . Fixed bug #76594 (Bus Error due to unaligned access in zend_ini.c
    OnUpdateLong). (cmb, Nikita)

- PDO_Firebird:
  . Fixed bug #74462 (PDO_Firebird returns only NULLs for results with boolean
    for FIREBIRD >= 3.0). (Dorin Marcoci)
  . Fixed bug #76488 (Memory leak when fetching a BLOB field). (Simonov Denis)

- Standard:
  . Fixed bug #73817 (Incorrect entries in get_html_translation_table). (cmb)
  . Fixed bug #76136 (stream_socket_get_name should enclose IPv6 in brackets).
    (seliver)

- Zip:
  . Fixed bug #76524 (ZipArchive memory leak (OVERWRITE flag and empty archive)).
    (Timur Ibragimov)

05 Jul 2018, PHP 7.3.0alpha3

- Core:
  . Fixed bug #76534 (PHP hangs on 'illegal string offset on string references
    with an error handler). (Laruence)
  . Fixed bug #76520 (Object creation leaks memory when executed over HTTP).
    (Nikita)
  . Fixed bug #76502 (Chain of mixed exceptions and errors does not serialize
    properly). (Nikita)
  . Fixed bug #76509 (Inherited static properties can be desynchronized from
    their parent by ref). (Nikita)
  . Fixed bug #76439 (Changed behaviour in unclosed HereDoc). (Nikita, tpunt)
  . Added syslog.facility and syslog.ident INI entries for customizing syslog
    logging. (Philip Prindeville)
  . Fixed bug #63217 (Constant numeric strings become integers when used as
    ArrayAccess offset). (Rudi Theunissen, Dmitry)

- DOM:
  . Fixed bug #76285 (DOMDocument::formatOutput attribute sometimes ignored).
    (Andrew Nester)

- FPM:
  . Fixed bug #73342 (Vulnerability in php-fpm by changing stdin to
    non-blocking). (Nikita)

- GMP:
  . Fixed bug #74670 (Integer Underflow when unserializing GMP and possible
    other classes). (Nikita)

- intl:
  . Fixed bug #76556 (get_debug_info handler for BreakIterator shows wrong
    type). (cmb)

- mbstring:
  . Fixed bug #76532 (Integer overflow and excessive memory usage
    in mb_strimwidth). (MarcusSchwarz)

- OpenSSL:
  . Add min_proto_version and max_proto_version ssl stream options as well as
    related constants for possible TLS protocol values. (Jakub Zelenka)

- PCRE:
  . Fixed bug #76512 (\w no longer includes unicode characters). (cmb)
  . Fixed bug #76514 (Regression in preg_match makes it fail with
    PREG_JIT_STACKLIMIT_ERROR). (Anatol)

- PGSQL:
  . Fixed bug #76548 (pg_fetch_result did not fetch the next row). (Anatol)

- phpdbg:
  . Fix arginfo wrt. optional/required parameters. (cmb)

- Reflection:
  . Fixed bug #76536 (PHP crashes with core dump when throwing exception in
    error handler). (Laruence)
  . Fixed bug #75231 (ReflectionProperty#getValue() incorrectly works with
    inherited classes). (Nikita)

- Standard:
  . Fixed bug #76505 (array_merge_recursive() is duplicating sub-array keys).
    (Laruence)
  . Fixed bug #71848 (getimagesize with $imageinfo returns false). (cmb)
  . Fixed bug #48016 (stdClass::__setState is not defined although var_export() uses it). (Andrea)

- Tokenizer:
  . Fixed bug #76538 (token_get_all with TOKEN_PARSE flag fails to recognise
    close tag with newline). (Nikita)

21 Jun 2018, PHP 7.3.0alpha2

- Core:
  . Fixed bug #76427 (Segfault in zend_objects_store_put). (Laruence)
  . Fixed bug #76422 (ftruncate fails on files > 2GB). (Anatol)

- CLI:
  . Fixed bug #44217 (Output after stdout/stderr closed cause immediate exit
    with status 0). (Robert Lu)

- Date:
  . Fixed bug #76462 (Undefined property: DateInterval::$f). (Anatol)

- EXIF:
  . Fixed bug #76409 (heap use after free in _php_stream_free). (cmb)

- Interbase:
  . Fixed bug #76443 (php+php_interbase.dll crash on module_shutdown). (Kalle)

- Mysqlnd:
  . Fixed bug #76386 (Prepared Statement formatter truncates fractional seconds
    from date/time column). (Victor Csiky)

- Opcache:
  . Fixed bug #76477 (Opcache causes empty return value).
    (Nikita, Laruence)
  . Fixed bug #76466 (Loop variable confusion). (Dmitry, Laruence, Nikita)
  . Fixed bug #76463 (var has array key type but not value type). (Laruence)
  . Fixed bug #76446 (zend_variables.c:73: zend_string_destroy: Assertion
    `!(zval_gc_flags((str)->gc)). (Nikita, Laruence)

- Tokenizer:
  . Fixed bug #76437 (token_get_all with TOKEN_PARSE flag fails to recognise
    close tag). (Laruence)
  . Fixed bug #75218 (Change remaining uncatchable fatal errors for parsing
    into ParseError). (Nikita)

- ZIP:
  . Fixed bug #76461 (OPSYS_Z_CPM defined instead of OPSYS_CPM).
    (Dennis Birkholz, Remi)

07 Jun 2018, PHP 7.3.0alpha1

- Core:
  . Improved PHP GC. (Dmitry, Nikita)
  . Redesigned the old ext_skel program written in PHP, run: 
    'php ext_skel.php' for all options. This means there are no dependencies,
    thus making it work on Windows out of the box. (Kalle)
  . Removed support for BeOS. (Kalle)
  . Add PHP_VERSION to phpinfo() <title/>. (github/MattJeevas)
  . Add net_get_interfaces(). (Sara, Joe, Anatol)
  . Implemented flexible heredoc and nowdoc syntax, per
    RFC https://wiki.php.net/rfc/flexible_heredoc_nowdoc_syntaxes.
    (Thomas Punt)
  . Added support for references in list() and array destructuring, per
    RFC https://wiki.php.net/rfc/list_reference_assignment.
    (David Walker)
  . Fixed bug #75683 (Memory leak in zend_register_functions() in ZTS mode).
    (Dmitry)
  . Fixed bug #75031 (support append mode in temp/memory streams). (adsr)
  . Fixed bug #74860 (Uncaught exceptions not being formatted properly when
    error_log set to "syslog"). (Philip Prindeville)
  . Fixed bug #75220 (Segfault when calling is_callable on parent). 
    (andrewnester)
  . Fixed bug #69954 (broken links and unused config items in distributed ini
    files). (petk)
  . Fixed bug #74922 (Composed class has fatal error with duplicate, equal const
    properties). (pmmaga)
  . Fixed bug #63911 (identical trait methods raise errors during composition). 
    (pmmaga)
  . Fixed bug #75677 (Clang ignores fastcall calling convention on variadic
    function). (Li-Wen Hsu)
  . Fixed bug #54043 (Remove inconsitency of internal exceptions and user
    defined exceptions). (Nikita)
  . Fixed bug #53033 (Mathematical operations convert objects to integers).
    (Nikita)
  . Fixed bug #73108 (Internal class cast handler uses integer instead of
    float). (Nikita)
  . Fixed bug #75765 (Fatal error instead of Error exception when base class is
    not found). (Timur Ibragimov)
  . Fixed bug #76198 (Wording: "iterable" is not a scalar type). (Levi Morrison)
  . Fixed bug #76137 (config.guess/config.sub do not recognize RISC-V). (cmb)
  . Improved effectiveness of ZEND_SECURE_ZERO for NetBSD and systems
    without native similar feature (devnexen).

- BCMath:
  . Fixed bug #66364 (BCMath bcmul ignores scale parameter). (cmb)
  . Implemented request #67855 (No way to get current scale in use). (Chris
    Wright, cmb)
  . Fixed bug #75164 (split_bc_num() is pointless). (cmb)
  . Fixed bug #75169 (BCMath errors/warnings bypass PHP's error handling). (cmb)

- cURL:
  . Fixed bug #74125 (Fixed finding CURL on systems with multiarch support).
    (cebe)

- Date:
  . Implemented FR #74668: Add DateTime::createFromImmutable() method.
    (majkl578, Rican7)
  . Fixed bug #75222 (DateInterval microseconds property always 0). (jhdxr)
  . Fixed bug #68406 (calling var_dump on a DateTimeZone object modifies it).
    (jhdxr)
  . Fixed bug #76131 (mismatch arginfo for date_create). (carusogabriel)

- DBA:
  . Fixed bug #75264 (compiler warnings emitted). (petk)

- GD:
  . Added support for WebP in imagecreatefromstring() (Andreas Treichel, cmb).

- GMP:
  . Export internal structures and accessor helpers for GMP object. (Sara)
  . Added gmp_binomial(n, k). (Nikita)
  . Added gmp_lcm(a, b). (Nikita)
  . Added gmp_perfect_power(a). (Nikita)
  . Added gmp_kronecker(a, b). (Nikita)

- interbase:
  . Fixed bug #75453 (Incorrect reflection for ibase_[p]connect). (villfa)

- intl:
  . Fixed bug #75317 (UConverter::setDestinationEncoding changes source instead 
    of destination). (andrewnester)

- JSON:
  . Added JSON_THROW_ON_ERROR flag. (Andrea)

- LDAP:
  . Added ldap_exop_refresh helper for EXOP REFRESH operation with dds overlay. 
    (Come)
  . Added full support for sending and parsing ldap controls (Come)
  . Fixed bug #49876 (Fix LDAP path lookup on 64-bit distros). (dzuelke)

- libxml2:
  . Fixed bug #75871 (use pkg-config where available). (pmmaga)

- litespeed:
  . Fixed bug #75248 (Binary directory doesn't get created when building 
    only litespeed SAPI). (petk)
  . Fixed bug #75251 (Missing program prefix and suffix). (petk)

- mbstring:
  . Fixed bug #65544 (mb title case conversion-first word in quotation isn't
    capitalized). (Nikita)
  . Fixed bug #71298 (MB_CASE_TITLE misbehaves with curled apostrophe/quote.
    (Nikita)
  . Fixed bug #73528 (Crash in zif_mb_send_mail). (Nikita)
  . Fixed bug #74929 (mbstring functions version 7.1.1 are slow compared to 5.3
    on Windows). (Nikita)
  . Fixed bug #76319 (mb_strtolower with invalid UTF-8 causes segmentation
    fault). (Nikita)
  . Updated to Oniguruma 6.8.2. (cmb)

- ODBC:
  . Removed support for ODBCRouter. (Kalle)
  . Removed support for Birdstep. (Kalle)

- OpenSSL:
  . Added openssl_pkey_derive function. (Jim Zubov)

- PCRE:
  . Implemented https://wiki.php.net/rfc/pcre2-migration (Anatol, Dmitry)
  . Fixed bug #75355 (preg_quote() does not quote # control character).
    (Michael Moravec)

- PDO_DBlib:
  . Implemented request #69592 (allow 0-column rowsets to be skipped
    automatically). (fandrieu)
  . Fixed bug #74243 (allow locales.conf to drive datetime format). (fandrieu)
  . Expose TDS version as \PDO::DBLIB_ATTR_TDS_VERSION attribute on \PDO
    instance. (fandrieu)
  . Treat DATETIME2 columns like DATETIME. (fandrieu)

- PDO_OCI:
  . Fixed bug #74631 (PDO_PCO with PHP-FPM: OCI environment initialized
    before PHP-FPM sets it up). (Ingmar Runge)

- PDO SQLite
  . Add support for additional open flags

- pgsql:
  . Added new error constants for pg_result_error(): (Kalle)
    - Requires Postgres 9.3
      - PGSQL_DIAG_SCHEMA_NAME
	  - PGSQL_DIAG_TABLE_NAME
	  - PGSQL_DIAG_COLUMN_NAME
	  - PGSQL_DIAG_DATATYPE_NAME
	  - PGSQL_DIAG_CONSTRAINT_NAME
	- Requires Postgres 9.6
	  - PGSQL_DIAG_SEVERITY_NONLOCALIZED

- phar:
  . Fixed bug #74991 (include_path has a 4096 char limit in some cases).
    (bwbroersma)
  . Fixed bug #65414 (deal with leading slash when adding files correctly).
    (bishopb)

- readline:
  . Added completion_append_character and completion_suppress_append options
    to readline_info() if linked against libreadline. (krageon)

- Session:
  . Fixed bug #74941 (session fails to start after having headers sent). 
    (morozov)

- SimpleXML:
  . Fixed bug #54973 (SimpleXML casts integers wrong). (Nikita)

- SOAP:
  . Fixed bug #75464 (Wrong reflection on SoapClient::__setSoapHeaders). (villfa)
  . Fixed bug #70469 (SoapClient generates E_ERROR even if exceptions=1 is
    used). (Anton Artamonov)

- SPL:
  . Fixed bug #74977 (Appending AppendIterator leads to segfault). 
    (Andrew Nester)
  . Fixed bug #75173 (incorrect behavior of AppendIterator::append in foreach
    loop). (jhdxr)
  . Fixed bug #74372 (autoloading file with syntax error uses next autoloader,
    may hide parse error). (Nikita)
  . Fixed bug #75878 (RecursiveTreeIterator::setPostfix has wrong signature).
    (cmb)
  . Fixed bug #74519 (strange behavior of AppendIterator). (jhdxr)
  . Fixed bug #76131 (mismatch arginfo for splarray constructor). 
    (carusogabriel)

- SQLite3:
  . Updated bundled libsqlite to 3.24.0. (cmb)

- Standard:
  . Added is_countable() function. (Gabriel Caruso)
  . Fixed bug #75916 (DNS_CAA record results contain garbage). (Mike, 
    Philip Sharp)
  . Fixed unserialize(), to disable creation of unsupported data structures
    through manually crafted strings. (Dmitry)
  . Fixed bug #75409 (accept EFAULT in addition to ENOSYS as indicator 
    that getrandom() is missing). (sarciszewski)
  . Fixed bug #74719 (fopen() should accept NULL as context). (Alexander Holman)
  . Fixed bug #69948 (path/domain are not sanitized in setcookie). (cmb)
  . Fixed bug #75996 (incorrect url in header for mt_rand). (tatarbj)
  . Remove superfluous warnings from inet_ntop()/inet_pton(). (daverandom)
  . Added hrtime() function, to get high resolution time. (welting)

- Testing:
  . Implemented request #62055 (Make run-tests.php support --CGI-- sections).
    (cmb)

- Tidy:
  . Fixed bug #74707 (Tidy has incorrect ReflectionFunction param counts for
    functions taking tidy). (Gabriel Caruso)
  . Support using tidyp instead of tidy (devnexen).

- Zlib:
  . Added zlib/level context option for compress.zlib wrapper. (Sara)

<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>