I'm happy to announce the release of the latest version of the Perl MongoDB driver. This version has a number of significant changes, including the new MongoClient top-level API. This change unifies the API nomenclature among most of MongoDB's officially supported driver libraries. It is also now the default behavior for MongoDB drivers to issue a write concern of 1 on all requests.
In addition to MongoClient, this release has a number of new features, many contributed by the Perl MongoDB community. Among them:
- The documentation and tutorials have been updated to show how to use the new MongoClient API.
MongoDB::Connectionhas been deprecated in favor of
MongoDB::MongoClient. The old Connection object will continue to work for the time being, but will start to issue a warning in an upcoming release. After that, it will go away.
- AUTOLOADed database and collection methods (e.g.
$conn->some_db->some_coll)have been deprecated and will now issue warnings. They will be removed entirely in a future release. Use
get_collectioninstead. The MongoClient object does not support AUTOLOAD methods.
- The dependency on Any::Moose has been removed in favor of Moose.
- The deprecated paired host parameters (
right_host) have been removed from the MongoClient API in favor of seed lists.
- MongoDB datetime types may now be auto-inflated to
DateTime::Tinyobjects (or not inflated at all) via the new
dt_typeparameter. Thanks to Casey Rojas for fixing some datetime tests as well.
- Built-in commands for issuing fsync and unlock commands to MongoDB server (Casey Rojas).
- UTF-8 support for hash keys (Roman Yerin).
- Support for the 'j' connection parameter to turn on journal acknowledgments (Casey Rojas)
- Numerous minor bug fixes, documentation updates, and test tweaks.
Additionally, bug reports and feature requests have come from people too numerous to list here.
It's an exciting time for MongoDB and Perl. The driver is still behind, feature-wise, as compared to many other projects. However, we have a commitment to making it current and keeping it there.