mongodb 1.2.0alpha1

MongoDB driver for PHP


The purpose of this driver is to provide exceptionally thin glue between MongoDB
and PHP, implementing only fundamental and performance-critical components
necessary to build a fully-functional MongoDB driver.

License: Apache License

Changes

** Bug
* [PHPC-316] - config.w32 should define MONGOC_ENABLE_SASL
* [PHPC-447] - Windows builds should generate libmongoc and libbson config and version files
* [PHPC-481] - Windows reports wrong mongoc and libbson versions
* [PHPC-530] - Document MongoDB\Driver\Server type constants
* [PHPC-554] - Rephrase unsupported/corrupt BSON messages
* [PHPC-673] - Cursor::isDead() returns true despite cursor being alive
* [PHPC-693] - Unacknowledged WriteResults have null counts
* [PHPC-728] - Wrong example on how to provide client certificate
* [PHPC-748] - CursorID is not properly expressed on 32-bit platforms

** Improvement
* [PHPC-486] - Add syntax highlighting to BSON persistence articles
* [PHPC-684] - Report bypassDocumentValidation in BulkWrite debug output
* [PHPC-721] - Javascript constructor should throw if code contains null bytes
* [PHPC-724] - Regex constructor should throw if pattern or flags contain null bytes
* [PHPC-739] - Rename "javascript" to "code" in Javascript BSON class
* [PHPC-741] - Use consistent exceptions for BSON initialization methods
* [PHPC-746] - Default Manager URI to "mongodb://127.0.0.1/"
* [PHPC-754] - Remove libmongoc-priv system dependency in config.m4
* [PHPC-755] - Remove include of private mongoc-trace.h

** New Feature
* [PHPC-460] - BSON classes should support PHP serialization and var_export()
* [PHPC-536] - UTCDateTime constructor should default to current time and accept DateTimeInterface
* [PHPC-619] - Implement Decimal 128 type spec
* [PHPC-729] - Implement __toString() method for Javascript and Binary
* [PHPC-730] - Implement getCode() and getScope() for Javascript

** Task
* [PHPC-600] - Manager::getServers() should use mongoc_client_get_server_descriptions()
* [PHPC-601] - Cursor::getServer() should not access mongoc_cursor_t.client
* [PHPC-602] - Create command cursors with mongoc_cursor_new_from_command_document()
* [PHPC-603] - Use mongoc_read_prefs_t getters instead of accessing struct fields directly
* [PHPC-604] - WriteConcern::getJournal() should use mongoc_write_concern_journal_is_set()
* [PHPC-606] - Use mongoc_server_description_t public API
* [PHPC-607] - Manager::selectServer() should use mongoc_client_select_server()
* [PHPC-609] - Ensure client URI handling uses libmongoc public API
* [PHPC-610] - Client construction should use mongoc_write_concern_is_valid()
* [PHPC-611] - WriteResult::isAcknowledged() should use mongoc_write_concern_is_acknowledged()
* [PHPC-630] - Update bson_visitor_t for unsupported type function pointer
* [PHPC-659] - Update bson_visitor_t for decimal 128 type function pointer
* [PHPC-662] - Use mongoc_bulk_operation_get_hint()
* [PHPC-663] - Use mongoc_bulk_operation_get_write_concern()
* [PHPC-664] - Use mongoc_write_concern_get_w()
* [PHPC-665] - Remove private libmongoc and libbson header includes
* [PHPC-680] - BulkWrite::count() should return number of operations instead of estimated round-trips
* [PHPC-682] - Do not use mongoc_bulk_operation_t private API in BulkWrite debug handler
* [PHPC-687] - Consolidate struct definitions for PHP 5 and 7
* [PHPC-688] - Do not use mongoc_cursor_t private API in Cursor debug handler
* [PHPC-689] - Query and command execution should use mongoc_cursor_set_hint()
* [PHPC-703] - Update configure scripts for upstream SSL changes
* [PHPC-708] - Port http://php.net/manual/en/mongo.security.php to the new docs/driver
* [PHPC-758] - Disable Decimal128 for bundled libbson and libmongoc 1.4.0