741 Commits

Author SHA1 Message Date
Derick Rethans
1caffe0fa8 PHPC-1053: UTCDateTime constructor should be marked as optional for Refelection 2017-12-01 15:26:42 +00:00
Jeremy Mikola
f98e72fbea PHPC-1044: Bump libbson and libmongoc to 1.8.2 2017-11-21 09:12:54 -05:00
Derick Rethans
20bbaf352a Changed to ignore fields with unsupported types, and upgraded test cases. 2017-10-27 15:00:38 +01:00
Derick Rethans
1252a6ea03 PHPC-1026: Log warnings instead of throwing for unsupported BSON types 2017-10-27 15:00:38 +01:00
Jeremy Mikola
ad1666f680 PHPC-1014: Bump libbson and libmongoc to 1.8.1 2017-10-11 22:06:47 -07:00
Jeremy Mikola
3241dbada3 PHPC-1007: Bump libbson and libmongoc to 1.8.0 2017-09-13 16:57:45 -04:00
Jeremy Mikola
a8a639b941 PHPC-1006: Do not modify Persistable::bsonSerialize() retval 2017-09-06 14:34:27 -04:00
Jeremy Mikola
95c4678564 PHPC-1005: Use convert_to_object() to create stdClass from array
This will ensure that the array symtable is properly converted to an object proptable in PHP 7.2 (e.g. integer key 0 converts to string key "0").
2017-09-06 14:14:15 -04:00
Jeremy Mikola
94ee50e5ef PHPC-1004: Rename ObjectID to ObjectId 2017-08-30 10:12:22 -04:00
Jeremy Mikola
aef71068a8 Revert "Use canonical ObjectID class name in tests"
This reverts commit 991cbe887e.
2017-08-30 10:02:17 -04:00
Jeremy Mikola
5d2a7741b7 Revert "PHPC-1004: Rename CursorId to CursorID"
This reverts commit 708c214034.
2017-08-30 10:02:10 -04:00
Derick Rethans
138ba06458 Merge branch 'v1.2' 2017-08-30 12:06:58 +01:00
Derick Rethans
d5aef90483 PHPC-997: Handle changes in field names in timelib 2017.05beta7 2017-08-30 12:05:33 +01:00
Jeremy Mikola
991cbe887e Use canonical ObjectID class name in tests 2017-08-29 09:47:50 -04:00
Jeremy Mikola
708c214034 PHPC-1004: Rename CursorId to CursorID 2017-08-29 09:47:50 -04:00
Jeremy Mikola
d616162e13 PHPC-1001: Report field name for invalid UTF-8 and unsupported zval types 2017-08-29 08:39:58 -04:00
Jeremy Mikola
a5fe81bd06 PHPC-640: Revert TypeWrapper interface 2017-08-28 17:54:55 -04:00
Jeremy Mikola
726fb9a071 PHPC-996: Remove support for PHP 5.4 2017-08-14 12:19:30 -04:00
Jeremy Mikola
58324ad627 PHPC-992: Rename extended JSON functions to[Canonical|Relaxed]ExtendedJSON() 2017-08-10 12:56:47 -04:00
Jeremy Mikola
b6a5e48549 PHPC-977: Bump libbson and libmongoc to 1.7.0 2017-08-10 12:20:13 -04:00
Jeremy Mikola
ef4241c10e PHPC-988: Check for TypeWrapper::createFromBSONType() exception
If the userland function throws, we should return early and avoid assigning the uninitialized return value (zwrapper) to zchild. On PHP 5.x, such an assignment could cause a segfault.
2017-08-03 14:52:56 -04:00
Jeremy Mikola
36487bc0a9 PHPC-640: Create interfaces for BSON types classes
These interfaces are implemented by the corresponding BSON classes and intended to be used by TypeWrapper implementations.
2017-08-03 11:18:56 -04:00
Jeremy Mikola
4335eae4cc PHPC-985: Timestamp::getIncrement() and getTimestamp() methods 2017-07-31 17:40:14 -04:00
Jeremy Mikola
65f5091010 PHPC-941: Add MongoDB\BSON\toCanonicalJSON() and toRelaxedJSON()
In CDRIVER-2208, bson_as_json() (used by toJSON()) was reverted to its original output format. Canonical and relaxed extended JSON are now produced by bson_as_canonical_json() and bson_as_relaxed_json(), respectively. This commit removes toExtendedJSON() (added in 980f1fb01a) in favor of the new functions.

Implementations for the BSON functions have been moved to their own file, which is consistent with what we're doing for the APM subscriber functions.
2017-07-28 13:30:06 -04:00
Jeremy Mikola
c5e859d59c PHPC-977: Bump libbson and libmongoc to 1.7.0-rc2 2017-07-28 13:29:55 -04:00
Jeremy Mikola
83908b560f Collapse code scopes and add vim settings 2017-07-27 20:31:45 -04:00
Jeremy Mikola
9596415a81 PHPC-982: PHP 5 expects HashTable key length to include null byte 2017-07-26 14:06:11 -04:00
Jeremy Mikola
f99cb40c2f Update copyright header for APM sources 2017-07-26 14:03:46 -04:00
Jeremy Mikola
c79f57c1de PHPC-981: Move APM functions to MongoDB\Driver\Monitoring namespace 2017-07-26 14:02:10 -04:00
Jeremy Mikola
e089c2bd01 PHPC-950: Skip APM callbacks if subscriber HashTable is uninitialized 2017-07-25 15:32:31 -04:00
Jeremy Mikola
31aa04b746 PHPC-976: isDefault() method for read and write concerns 2017-07-11 16:56:19 -04:00
Jeremy Mikola
ea770fc90f PHPC-977: Bump libbson and libmongoc to 1.7.0-rc0
Disable GSSAPI and compression for all builds.
2017-07-11 11:39:44 -04:00
Jeremy Mikola
ad1f3f049f PHPC-939: Don't modify std props in BSON get_properties handlers 2017-07-10 14:31:19 -04:00
Jeremy Mikola
adbc7eced9 PHPC-624: Support additional types in WriteResult::getUpsertedIds()
Previously, only ObjectIDs and integer types were supported.
2017-07-06 17:50:46 -04:00
Jeremy Mikola
d8541658ad PHPC-839: Support maxAwaitTimeMS Query option for tailable await cursors 2017-05-24 20:29:11 -04:00
Jeremy Mikola
e16fc67dce PHPC-895: Require 16-byte data length for Binary UUID subtypes 0x03 and 0x04
The ability to decoding existing BSON documents with invalid UUID data lengths will be preserved, per bson-toPHP-006.phpt.
2017-05-12 15:26:06 -04:00
Jeremy Mikola
2b80a7be7f Merge pull request #587 2017-05-12 14:33:13 -04:00
Jeremy Mikola
925963199d PHPC-692: Check for phongo_bson_to_zval_ex() failures in Server methods 2017-05-08 12:22:20 -04:00
Jeremy Mikola
ab02e3856d Consolidate cleanup after error in php_phongo_bson_to_zval_ex() 2017-05-08 12:22:20 -04:00
Jeremy Mikola
92904af430 Return boolean instead of int from php_phongo_bson_to_zval_ex() 2017-05-08 12:22:20 -04:00
Jeremy Mikola
9559781147 PHPC-382, PHPC-471: Always return "_id" from BulkWrite::insert() 2017-05-08 09:45:46 -04:00
Jeremy Mikola
773d36450e PHPC-772: Parse authMechanism options in URI options array 2017-04-26 11:48:35 -04:00
Jeremy Mikola
a13e118214 PHPC-957: Use libmongoc constants for applicable URI options 2017-04-26 11:48:35 -04:00
Jeremy Mikola
deb4fcde4b PHPC-640: Handle TypeWrappers during BSON serialization 2017-04-26 11:25:31 -04:00
Jeremy Mikola
60ec72a2d8 PHPC-640: TypeWrappers for BSON unserialization 2017-04-26 11:23:26 -04:00
Jeremy Mikola
122d7a86fd PHPC-640: Parse TypeWrapper classes in type maps 2017-04-26 11:23:26 -04:00
Jeremy Mikola
81b8d505d8 PHPC-937: Cursor::setTypeMap() and toPHP() should abort for invalid type map
This changes php_phongo_bson_typemap_to_state() to return a success boolean and also extracts class fetching into a separate php_phongo_bson_state_fetch_class() function to assist with supporting type wrappers in PHPC-640.
2017-04-26 11:23:26 -04:00
Jeremy Mikola
277df7ebee PHPC-640: TypeWrapper interface 2017-04-26 11:23:26 -04:00
Jeremy Mikola
8721fada72 Remove shadowed declaration in php_phongo_bson_append_object() 2017-04-26 11:23:26 -04:00
Jeremy Mikola
8b773781db Compatibility macro for accessing BSON state's zval 2017-04-26 11:22:11 -04:00