Revision history for BSON
v0.999.4 2016-06-27 23:19:56-04:00 America/New_York (TRIAL RELEASE)
[Prereqs]
- Bump Moo prereq to 2.002004 to work around core sub shadowing
bug in generated constructor. Removed workround added to BSON::DBRef
in v0.999.3.
v0.999.3 2016-06-23 00:44:37-04:00 America/New_York (TRIAL RELEASE)
[Bug fixes]
- Fixed detection of Infinity/NaN during serialization of BSON::Double
to JSON for Windows perls before 5.22.0.
- Work around compilation ambiguities involving the core keyword 'ref'
and the BSON::DBRef attribute 'ref' in certain versions of Moo.
[Testing]
- Require newer Path::Tiny with full-featured "basename" method.
v0.999.2 2016-06-13 16:02:54-04:00 America/New_York (TRIAL RELEASE)
[Added]
- Added full "minimum set" of overloaded operations to numeric and
string type wrappers.
- Added convenience functions to provide "Infinity" and "NaN" double
values.
[Testing]
- Replace double test cases for better portability.
- Skip threads tests before 5.8.5 because of problems with
weak references during global destruction.
v0.999.1 2016-06-08 16:03:23-04:00 America/New_York (TRIAL RELEASE)
[Testing]
- Checks for JSON serialization of doubles with no fractional part with
a regular expression to account for the way that different JSON
backends will handle it.
- Skip testing TO_JSON under JSON::PP if the value to be converted
is false. See https://github.com/makamaka/JSON-PP/pull/23 for why.
- Skip some BSON double tests on 32-bit perls with JSON::PP to work
around a JSON::PP bug.
[~Internal Changes~]
- Disambiguates calls to 'ref' in BSON::DBRef to avoid warnings.
v0.999.0 2016-06-01 18:27:43-04:00 America/New_York (TRIAL RELEASE)
[!!! Incompatible Changes !!!]
- Internal representation of BSON::Bool changed to make it a subclass
of boolean.pm for conistency with other "boolean" type classes on
CPAN.
- All BSON type wrapper classes are now immutable; accessors have
been changed to read-only.
[*** Deprecations ***]
- BSON::Binary deprecated in favor of the new BSON::Bytes module.
- BSON::Bool deprecated in favor of direct use of boolean.pm.
- BSON::ObjectID deprecated in favor of the new BSON::OID module.
- The 'ixhash' option is deprecated in favor of 'ordered' and the
resulting tied object is no longer guaranteed to be Tie::IxHash.
This will allow future optimization, as Tie::IxHash is extremely
slow.
[API]
- BSON module is now object-oriented, with an API and options directly
compatible with the MongoDB driver. Options set as constructor
attributes apply to all encoding/decoding, unless options given to methods
override them.
- Added a method for inflation of MongoDB's extended JSON format to
BSON type wrapper objects.
[BSON types]
- Added new type wrappers to cover all BSON Types, including
forthcoming Decimal128.
- Rationalized/harmonized BSON type classes for compatibility with
pre-existing MongoDB BSON classes. Classes that could not be made to
interoperate are deprecated as listed above.
[Bug fixes]
- Fixed numerous encoding and decoding bugs revealed by greater test
coverage (e.g. fixes to UTF-8 encoding/decoding).
[Testing]
- Significantly improved test coverage, including tests using a
standardized BSON corpus.
[~Internal Changes~]
- Pure-perl implementation split into a separate module to avoid
its load time in the future when an XS implementation becomes
available.
- Will prefer BSON::XS (when released) or fallback to BSON::PP;
PERL_BSON_BACKEND environment variable will override.
0.16 2015-09-25 10:54:41-04:00 America/New_York
[CHANGES]
- Improved diagnostic output if integers are too big
[BUG FIXES]
- Improved OID counter thread-safety
- Fix tests for perls with long doubles
[OPTIMIZATION]
- BSON::ObjectId generation now ~ 1.9x faster
0.13 2015-04-07 12:02:29-04:00 America/New_York (TRIAL RELEASE)
[BUG FIXES]
- Fix t/10-bson.t bug comparing floating point values; now using
Test::Number::Delta for comparison
0.12 2015-04-06 16:11:59-04:00 America/New_York
[BUG FIXES]
- added decoding support for BSON type 0x06 (Javascript "undefined");
treated like type 0x0A (null value) and decoded as Perl undef
[OPTIMIZATION]
- Inlined most functions for 10-20% performance increase measured
on a sample of Twitter tweets.
[META]
- Switched repository to Dist::Zilla structure using @DAGOLDEN plugin
bundle and associated file layout
0.11 2011-12-14
use Math::Int64 to address the 32-bit only Perl support
0.06 2011-09-26
Lower the required Perl version to 5.8
0.04 2011-08-04 17:30 PST
Add BSON::String type
0.03 2011-08-02 14:00:00 PST
Fix regex parsing for Perl<5.14
Fix thread dependency in oid.t
0.02 2011-07-25 19:10:00 PST
Fix spelling errors
0.01 2011-07-22 16:45:00 PST
First version, released.