Path to this page:
Subject: CVS commit: pkgsrc/devel/libbson
From: Filip Hajny
Date: 2017-08-17 19:00:48
Message id: 20170817170048.15CABFAD0@cvs.NetBSD.org
Log Message:
Update devel/libbson to 1.7.0.
- Changes to JSON encoding and decoding:
- New functions bson_as_canonical_extended_json and
bson_as_relaxed_extended_json convert BSON to canonical and
relaxed extended JSON according to MongoDB Extended JSON Spec.
- When parsing JSON type wrappers like "$timestamp", any missing or
extra keys are an error.
- The JSON format for BSON regular expressions is now
"$regularExpression": {"pattern": "...", \
"options": "..."}.
- The JSON format for BSON binary elements is now "$binary":
{"base64": "...", "subType": "..."}.
- BSON dates can be parsed from "$date" as an ISO8601 date or
"$numberLong" as milliseconds since the epoch: "t": \
{"$date":
{"$numberLong": "1234"}}.
- The non-numbers NaN, Infinity, and -Infinity are now recognized
(regardless of case) when parsing JSON.
- CMake build now installs .pc files for programs that link to libbson
using pkg-config. Both the CMake and Autotools build systems now
install .cmake
- New CMake option, "ENABLE_STATIC", defaults to ON.
- Minimum required CMake version has been increased to 3.1.
- New functions
- bson_strcasecmp, a portable equivalent of strcasecmp.
- bson_iter_as_double, cast the current value to double.
- bson_iter_init_from_data, creates an iterator from BSON string.
- bson_validate_with_error, checks a document like bson_validate
does but also reports which key was invalid
- New convenience macros
- BSON_ITER_HOLDS_INT, checks if iterator holds int32 or int64
- BSON_ITER_HOLDS_NUMBER, checks if iterator holds int32, int64 or
double
- Raised BSON recursion limit to 200
Files: