MongoDB
view release on metacpan or search on metacpan
- PERL-495 Preserve fractional seconds when using dt_type 'raw'
- PERL-571 Include limits.h explicitly rather than relying on other
headers to load it.
- PERL-526 Detect stale primaries by election_id (only supported by
MongoDB 3.0 or later)
- PERL-575 Copy inflated booleans instead of aliasing them.
- Fix a failing test in the case where a user is running a
single-node replica set.
[Documentation]
- PERL-532 Document loss of precision when serializing long doubles
- Noted that IPv6 support requires IO::Socket::IP (core since
Perl v5.20.0).
[Prerequisites]
- PERL-579 Require at least version 0.25 of boolean.pm
[~ Internal changes ~]
- PERL-475 Optimize 'all' QueryResult method
v1.0.1 2015-09-22 12:55:08-04:00 America/New_York
[Bug fixes]
- PERL-567 Fixed a failing test in the case where a user is running a
replica set on the default port 27017.
[Documentation]
- PERL-568 Fixed SYNOPSIS of MongoDB.pm
- Clarified some confusing sections of MongoDB::Tutorial and added
hyperlinks to documentation for methods used in the tutorial.
- Clarified some sections of MongoDB::Collection and MongoDB::Cursor
and added some hyperlinks.
v1.0.0 2015-09-21 16:15:04-04:00 America/New_York
[!!! Incompatible Changes !!!]
- The v1.0.0 driver includes numerous incompatible changes; users are
STRONGLY encouraged to read MongoDB::Upgrading for advice on upgrading
applications written for the 'v0' driver.
- PERL-221 The 'inflate_regexps' MongoDB::MongoClient option has been
removed. BSON regular expressions always decode to
MongoDB::BSON::Regexp objects. This ensure safety and consistency with
other drivers.
- PERL-330 The driver now uses pure-Perl networking; SSL and SASL now
implemented via optional CPAN modules IO::Socket::SSL and Authen::SASL.
- PERL-442 Connection string options have revised to match MongoClient
options; connection string options always take precedence over
MongoClient constructor arguments.
- PERL-470 The MongoDB::Cursor globals "slave_ok" and "timeout" no longer
have any effect and have been removed.
- PERL-471 The MongoDB::Cursor 'snapshot' method now requires a boolean
argument.
- PERL-505 When bulk inserting a document without an '_id' field, the _id
will be added during BSON encoding, but the original document will NOT
be changed. (This was the case for regular insertion in the v0.x
series, but not for the Bulk API.)
- PERL-519 The $MongoDB::BSON::use_binary global variable has been
removed. Binary data always decodes to MongoDB::BSON::Binary objects
(which now overload stringification). This ensures that binary data
will correctly round-trip.
- PERL-520 The $MongoDB::BSON::utf8_flag_on global variable has been
removed. BSON strings will always be decoded to Perl character strings.
This ensures that string data will correctly round-trip.
- PERL-523 Requires a replica set name explicitly to connect to a replica
set. Connecting to a single host is always in a 'direct' mode
otherwise.
- PERL-546 MongoDB::DBRef objects no longer have a 'fetch' method or
'client' attribute. This is consistent with the design of the MongoDB
drivers for other language. For the Perl driver, specifically, it
decouples the BSON model from the MongoClient model, eliminates a
circular reference, and avoid Perl memory bugs using weak references
under threads.
- MongoDB::MongoClient configuration options are now read-only and may
not be modified after client construction.
- The $MongoDB::BSON::looks_like_number and $MongoDB::BSON::char global
variables now ONLY have an effect at MongoDB::MongoClient construction.
Changing them later does not change BSON encoding. Both are deprecated
as well and should not be used in new code. Instead, the enhanced
MongoDB::BSON codec class has attributes that encapsulate these
behaviors.
- The 'dt_type' MongoDB::MongoClient option has been deprecated and made
read-only. It now only takes effect if C<MongoDB::MongoClient>
constructs a MongoDB::BSON codec object and is read-only so that any
code that relied on changing it after client construction will fail
rather that being silently ignored.
- The 'inflate_dbrefs' MongoDB::MongoClient option has been removed. By
default, dbrefs are always inflated to MongoDB::DBRef objects.
- The MongoDB::MongoClient 'read_preference' method is no longer a
mutator. It is now only an accessor for a MongoDB::ReadPreference
object constructed from 'read_preference_mode' and
'read_preference_tag_sets'.
done via a new MongoDB::QueryResult class.
- MongoDB::Error exception objects are now used consistently throughout
the driver, replacing other error mechanism and raw "die" calls.
- The MongoDB::WriteResult class was renamed to MongoDB::BulkWriteResult.
- The long-deprecated MongoDB::Connection class has been removed.
- Low-level client functions have been removed.
[*** Deprecations ***]
- PERL-398 The MongoDB::MongoClient 'timeout' and 'query_timeout' options
are deprecated in favor of new, more explicit 'connect_timeout_ms' and
'socket_timeout_ms' options.
- PERL-424 The MongoDB::Cursor 'count' method has been deprecated.
- PERL-464 The MongoDB::Database 'last_error' method has been deprecated.
- PERL-507 MongoDB::Collection 'get_collection' method is deprecated; it
implied sub-collections, which don't actually exist in MongoDB.
- PERL-511 The old CRUD method names for the MongoDB::Bulk API have been
deprecated in favor of names that match the new MongoDB::Collection
CRUD API.
- PERL-516 The MongoDB::Collection index management methods have been
deprecated in favor of the new MongoDB::IndexView API.
- PERL-533 The MongoDB::Collection 'save' method has been deprecated.
- PERL-534 The MongoDB::Collection 'validate' method has been deprecated.
- PERL-559 The MongoDB::Database 'eval' method has been deprecated, as
the MongoDB server version 3.0 deprecated the '$eval' command.
- The MongoDB::MongoClient 'sasl' and 'sasl_mechanism' config options
have been deprecated in favor of the more generic 'auth_mechanism'
option.
- Legacy MongoDB::Collection CRUD methods (insert, update, etc.) have
been deprecated in favor of new CRUD API methods.
- MongoDB::CommandResult changed the name of the accessor for the
document returned by the server to 'output' instead of 'result' for
clarity. The 'result' method is deprecated.
- As mentioned above, 'dt_type', '$MongoDB::BSON::looks_like_number' and
'$MongoDB::BSON::char' have been deprecated in addition to their other
behavior changes.
[Additions]
- PERL-93 Implemented awaitData cursor support.
- PERL-135 Added the ability to set write_concern at database and
collection level, rather than only in MongoDB::MongoClient.
- PERL-233 Implemented SSL certificate support via IO::Socket::SSL
options.
- PERL-375 Added support for cursor options to the MongoDB::Collection
'find_one' method.
- PERL-378 Implemented the cross-driver Server Discovery and Monitoring
specification.
- PERL-379 Implemented the cross-driver Server Selection specification.
- PERL-406 Allowed count methods to work with query hints.
- PERL-408 Implemented SCRAM-SHA-1 and revised handshake for MongoDB 3.0
and later.
- PERL-413 Added max_time_ms as a MongoDB::MongoClient configuration
option to set a default for database and collection objects.
- PERL-422 Added support for specifying read preferences in the
connection string URI.
- PERL-465 Added support for arbitrary options on index creation.
- PERL-466 Added the ability to set read preference at the database and
collection level.
- PERL-486 Added 'has_modified_count' method to MongoDB::UpdateResult and
MongoDB::BulkWriteResult to ease detection of when that attribute is
supported by a server or not.
- PERL-490 Added 'list_collections' method to MongoDB::Database.
- PERL-500 Added 'topology_status' method to MongoDB::MongoClient.
- PERL-502 and PERL-503 Implemented new common driver CRUD API
specification in MongoDB::Collection.
- PERL-506 Added support for serializing/deserializing Time::Moment
objects.
- PERL-515 Added new MongoDB::IndexView API.
- PERL-554 Implemented 'server_selection_try_once' configuration option on
MongoDB::MongoClient.
- Added an optional read preference argument to 'run_command'.
- Added 'db' and 'coll' methods as aliases for 'get_database' and
'get_collection' on MongoDB::MongoClient and MongoDB::Database,
respectively.
- Added the 'get_namespace' method to MongoDB::MongoClient (with the
alias 'ns'), to get a MongoDB::Collection object directly from
a MongoDB::MongoClient object.
- Added a 'connect' class method to the MongoDB class for syntactic sugar
to create a client object.
- Added a 'with_codec' method to MongoDB::Collection for easier localized
changes to BSON codec attributes.
( run in 1.768 second using v1.01-cache-2.11-cpan-39bf76dae61 )