Community News: Latest PECL Releases (09.26.2017)
Latest PECL Releases:
- swoole 1.9.21
- Added Atomiclong, support 64-bit signed long integer- Optimized the underlying GlobalMemory implementation, support the creation of an unlimited number of atoms, locks, tables
- Prohibit serialization of Swoole module object
- Fixed HttpClient download method fourth argument is invalid
- Fixed FreeBSD platform compiler error report
- Fixed sendfile on the MacOS platform there is a 5 second delay problem
- Added Process::setTimeout
- parle 0.6.4
- Improve Parser::reduceId property handling - Fixed index range check in Parser::sigil() - Fixed Stack::top handling for empty stack - Improved Parser::errorInfo() - Fixed properties access in all classes exporting properties - igbinary 2.0.4
* Fixes bug #129: Should not call __wakeup() on data which was created by Serializable::unserialize() - igbinary 2.0.3
- Fixes bug #126: Fatal error: "igbinary_serialize_zval: zval has unknown type 0" (IS_UNDEF) Make this a warning instead of a fatal error (and serialize as null instead), since IS_UNDEF is a known type. Later releases will fix the root cause of the warning, and consistently omit array/object/other entries for IS_UNDEF. - igbinary 2.0.2
- Compatible with PHP 5.2 - 7.1 - Fixes crash in Memcached->setMulti (in php 7.0+) when the first level of array elements have references as values. Other extensions using igbinary shouldn't be affected. - parle 0.6.3
- Turned Stack method top into property - Internal refactoring - ibm_db2 2.0.0
Fixed : signal 11 in db2_pconnect Fixed : Security flaw with using user and password for hashing in db2_pconnect. Fxied : Local scope bound values in a class are not used - pdo_sqlsrv 5.1.0preview
[Added] - Added support for Always Encrypted with basic CRUD functionalities (see [here](https://github.com/Microsoft/msphpsql/wiki/Features#aebindparam)) - Support for Windows Certificate Store (use connection keyword ColumnEncryption) - Support for custom key store provider (use connection keywords ColumnEncryption, CEKeystoreProvider, CEKeystoreName, CEKeystoreEncryptKey) - Support for inserting into an encrypted column - Support for fetching from an encrypted column - Added support for MSODBC 17 preview - Added Driver option to set the ODBC driver, Added"Driver" option, valid values are ODBC Driver 13 for SQL Server,ODBC Driver 11 for SQL Server, and ODBC Driver 17 for SQL Server - If the user intends to use the new Always Encrypted features, we recommend you to specify explicitly the 'Driver' option to 'ODBC Driver 17 for SQL Server' in the connection string [Limitation] - Always Encrypted functionalities are only supported using [MSODBC 17 preview](https://github.com/Microsoft/msphpsql/tree/dev/ODBC%2017%20binaries%20preview) - ODBC binaries for macOS available upon request - MSODBC 17 preview msodbcsql.msi only works for Windows10 - [Always Encrypted limitations](https://github.com/Microsoft/msphpsql/wiki/Features#aelimitation) - when using sqlsrv_query with Always Encrypted feature, SQL type has to be specified for each input (see [here](https://github.com/Microsoft/msphpsql/wiki/Features#aebindparam)) - No support for inout / output params when using sql_variant type [Known Issues] - Connection pooling on Linux doesn't work properly if the user uses the MSODBC17 preview - PDO::quote returns truncated string with garbage characters appended if the string contains a ASCII NUL ('/0') character - When pooling is enabled in Linux or MAC - unixODBC 2.3.4 or prior (Linux and MAC) might not return proper diagnostics information, such as error messages, warnings and informative messages - due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples (https://github.com/Microsoft/msphpsql/wiki/Connection-Pooling-on-Linux-and-Mac) - sqlsrv 5.1.0preview
[Added] - Added support for Always Encrypted with basic CRUD functionalities (see [here](https://github.com/Microsoft/msphpsql/wiki/Features#aebindparam)) - Support for Windows Certificate Store (use connection keyword ColumnEncryption) - Support for custom key store provider (use connection keywords ColumnEncryption, CEKeystoreProvider, CEKeystoreName, CEKeystoreEncryptKey) - Support for inserting into an encrypted column - Support for fetching from an encrypted column - Added support for MSODBC 17 preview - Added Driver option to set the ODBC driver, Added"Driver" option, valid values are ODBC Driver 13 for SQL Server,ODBC Driver 11 for SQL Server, and ODBC Driver 17 for SQL Server - If the user intends to use the new Always Encrypted features, we recommend you to specify explicitly the 'Driver' option to 'ODBC Driver 17 for SQL Server' in the connection string [Limitation] - Always Encrypted functionalities are only supported using [MSODBC 17 preview](https://github.com/Microsoft/msphpsql/tree/dev/ODBC%2017%20binaries%20preview) - ODBC binaries for macOS available upon request - MSODBC 17 preview msodbcsql.msi only works for Windows10 - [Always Encrypted limitations](https://github.com/Microsoft/msphpsql/wiki/Features#aelimitation) - when using sqlsrv_query with Always Encrypted feature, SQL type has to be specified for each input (see [here](https://github.com/Microsoft/msphpsql/wiki/Features#aebindparam)) - No support for inout / output params when using sql_variant type [Known Issues] - Connection pooling on Linux doesn't work properly if the user uses the MSODBC17 preview - Binding decimal type when using Always Encrypted in the SQLSRV x64 driver returns an error during insertion when the input does not have any decimal places - When pooling is enabled in Linux or MAC - unixODBC 2.3.4 or prior (Linux and MAC) might not return proper diagnostics information, such as error messages, warnings and informative messages - due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples (https://github.com/Microsoft/msphpsql/wiki/Connection-Pooling-on-Linux-and-Mac) - mongodb 1.3.0
** Bug * [PHPC-586] - Create regression tests for tailable cursor iteration * [PHPC-624] - WriteResult::getUpsertedIds() only supports ObjectIDs and integers * [PHPC-692] - Check for phongo_bson_to_zval_ex() failures in Server methods * [PHPC-712] - Driver should validate BSON documents before insert and update * [PHPC-875] - Allow compiling without SSL * [PHPC-895] - Require 16-byte data length for Binary UUID subtypes 0x03 and 0x04 * [PHPC-914] - php mongodb connect 'SCRAM Failure: invalid salt length of 0 in sasl step2' exception * [PHPC-939] - BSON classes should not assign public properties after var_dump() * [PHPC-950] - Skip APM callbacks if subscriber HashTable is uninitialized * [PHPC-951] - CursorId is a signed 64-bit integer * [PHPC-964] - Ensure SASL output variables are always defined in config.m4 * [PHPC-974] - Converting JSON to BSON to PHP introduces gaps in array indexes * [PHPC-981] - APM functions should reside in MongoDBDriverMonitoring namespace * [PHPC-982] - Include null byte in key length when accessing subscriber HashTable in PHP 5 * [PHPC-983] - MongoDBBSONtoPHP() arg info is missing type map parameter * [PHPC-994] - Fix HAVE_SOCKLEN_T macro redefinition for Windows builds * [PHPC-1005] - Ensure array symtable converts to object proptable in PHP 7.2 * [PHPC-1006] - Do not modify memory of Persistable::bsonSerialize() return value** Epic * [PHPC-909] - Spring cleaning for 1.3.0
** New Feature * [PHPC-349] - Application Performance Monitoring (APM) * [PHPC-382] - Allow zval_to_bson() to return the ID irrespective of ID generation * [PHPC-471] - BulkWrite::insert() should always return the document's ID * [PHPC-587] - CursorId should serialize to BSON as 64-bit integer * [PHPC-772] - Parse authMechanism options in URI options array * [PHPC-839] - Add option maxAwaitTimeMS on getMore commands * [PHPC-926] - Implement Extended JSON spec * [PHPC-976] - Create isDefault() method for read and write concerns * [PHPC-985] - Implement Timestamp::getIncrement() and getTimestamp() methods * [PHPC-988] - PHP 5.x segfault if TypeWrapper::createFromBSONType() throws exception
** Task * [PHPC-302] - Throw exceptions for unsupported BSON types * [PHPC-640] - Implement interfaces for userland BSON type classes * [PHPC-765] - Connection string spec compliance * [PHPC-892] - Upgrade libbson and libmongoc to 1.6.0 * [PHPC-907] - Remove PHONGO_API macro for exported symbols * [PHPC-908] - Do not declare MINIT functions for each driver class * [PHPC-910] - Reorganize BSON encoding and decoding sources * [PHPC-911] - Prefix symbols and use static decls whenever possible * [PHPC-915] - Document precedence of authMechanismProperties URI option over named GSSAPI options * [PHPC-928] - Sync release files in PECL package generation script * [PHPC-929] - Skip BSON corpus test for embedded null in code string * [PHPC-932] - Remove reference to Manager on Cursor, Server, and WriteResult objects * [PHPC-953] - Do not parse undocumented "database" key in URI options array * [PHPC-957] - Use libmongoc constants for applicable URI options * [PHPC-959] - Do not check for null return from mongoc_collection_find_with_opts() * [PHPC-977] - Upgrade libbson and libmongoc to 1.7.0 * [PHPC-992] - Rename to[Canonical|Relaxed]JSON() to to[Canonical|Relaxed]ExtendedJSON() * [PHPC-996] - Remove support for PHP 5.4 * [PHPC-997] - Update date/time handling code due to changes in timelib * [PHPC-1004] - Rename ObjectID to ObjectId * [PHPC-1007] - Upgrade libbson and libmongoc to 1.8.0 * [PHPC-1008] - Use SETUP_OPENSSL() in config.w32 if available
** Improvement * [PHPC-579] - Throw exception for invalid BulkWrite::update() newObj argument * [PHPC-628] - executeBulkWrite() should throw InvalidArgumentException for empty BulkWrite * [PHPC-846] - Throw if maxStalenessSeconds URI option is out of range * [PHPC-887] - Throw exceptions for unexpected types in URI options array * [PHPC-904] - ReadPreference constructor should accept strings * [PHPC-930] - Do not throw exceptions for critical and error levels in libmongoc log callback * [PHPC-935] - Validate filter and options in Query constructor * [PHPC-937] - Cursor::setTypeMap() and toPHP() should return early if type map is invalid * [PHPC-941] - Introduce API for converting BSON to canonical and relaxed extended JSON * [PHPC-942] - Use mongoc_uri_new_with_error() to improve URI error reporting * [PHPC-944] - MONGOC_ERROR_COMMAND_INVALID_ARG should yield InvalidArgumentException * [PHPC-1001] - Report field name for invalid UTF-8 and unsupported zval types during BSON encoding
- mongodb 1.2.11
** Bug * [PHPC-875] - Allow compiling without SSL** Task * [PHPC-1008] - Use SETUP_OPENSSL() in config.w32 if available
- parle 0.6.2
- Fixed reflection properties allocation (Remi Collet) - Removed offset from the Token class - Introduced Lexer properties for marker and cursor positions - Max token id is set to UINT16_MAX to save memory. This might be changed in the future