PHP 7.3.0 alpha 1 发布,包含大量修复和改进

  

PHP 7.3.0 alpha 1 已发布,更新内容如下:

NEWS

- 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)

- 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)

- 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)

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

猜你喜欢

转载自www.oschina.net/news/96875/php-7-3-0-alpha1-released