For CDRIVER-2128, bson_as_json() was changed to output relaxed JSON from the Extended JSON spec.
This ticket aims to accomplish a few things:
- Ensure bson_as_json() does not significantly change its output in 1.7.0.
- Rename bson_as_extended_json() to bson_as_canonical_json(), which will output canonical JSON from the Extended JSON spec.
- Create bson_as_relaxed_json() to output relaxed JSON from the Extended JSON spec.
Keeping bson_as_json()'s output largely unchanged will ensure that we do not introduce a subtle BC break for users depending on the structure of its current output (based on MongoDB 3.4's extended JSON syntax). Down the line, we can look at deprecating bson_as_json() once MongoDB 3.6 is released and its tools/shell are updated to handle the new format (TOOLS-1610).
- is depended on by
-
PHPC-926 Implement Extended JSON spec
- Closed
-
PHPC-941 Introduce API for converting BSON to canonical and relaxed extended JSON
- Closed
- is related to
-
CDRIVER-2128 Support revised Extended JSON spec
- Closed
- related to
-
CDRIVER-2168 Escape JSON strings for regex, symbol, and DBPointer types
- Closed
-
PHPC-828 Use canonical extended JSON for Timestamp::jsonSerialize()
- Closed