The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version v1.999.1 - 2018-06-23 (TRIAL RELEASE)

  • !!! Incompatible Changes !!!
    • See note from 1.999.0-TRIAL
  • *** Deprecations ***
    • PERL-856 Deprecate 'md5' field in GridFS file documents
  • Additions
    • PERL-875 Multi-document ACID transactions (replica sets only)
    • PERL-912 Add 'watch' methods to MongoDB::Database and MongoDB::MongoClient
    • PERL-940 Added 'startAtOperationTime' option to 'watch' methods
  • Bug fixes
    • PERL-936 Added session support to 'watch' for MongoDB::Collection
    • PERL-947 Weaken session pool reference to MongoClient to avoid a circular reference memory leak.
  • Documentation
    • PERL-859 Added tests with example code for MongoDB's docs site
    • PERL-859 Add test examples for aggregate, run_command and indexing
  • Prerequisites
    • PERL-941 Bump BSON prereq to v1.6.5 for BSON::Time fix on 32-bit perls
    • PERL-947 Require Authen::SCRAM 0.011 to avoid memory leak
  • ~ Internal changes ~
    • PERL-937 Gossip cluster time during SDAM

Changes for version v1.999.0 - 2018-06-15 (TRIAL RELEASE)

  • !!! Incompatible Changes !!!
    • PERL-640 Remove bundled MongoDB::BSON codec and use BSON.pm and/or BSON::XS instead. While this is a sweeping change, applications that relied on the default encoder are likely to need minimal changes. MongoDB type wrapper classes will encode correctly, but decoded wrappers will be from the BSON.pm library instead. See MongoDB::Upgrading for more details. Additionally, with this change, the MongoDB driver can now be used without a compiler.
    • PERL-742 Require Perl 5.10.1 or later
    • PERL-871 Remove features and methods deprecated in v1.0.0
  • *** Deprecations ***
    • PERL-718 Deprecate find option 'modifiers'
    • PERL-856 Deprecate 'md5' field in GridFS file documents
    • PERL-872 Deprecate maxScan find option
    • PERL-873 Deprecate cursor snapshot option
    • PERL-926 Deprecate 'count' method
  • Additions
    • PERL-710 Support authSource URI option
    • PERL-718 Add find options to replace deprecated 'modifiers' option
    • PERL-768 Added support for aggregation hints
    • PERL-778 Add support for wire protocol compression
    • PERL-782 Add maxTimeMS option to Indexview methods
    • PERL-787 Implement arrayFilters support
    • PERL-790 Implement Drivers Sessions API
    • PERL-791 Change stream support
    • PERL-792 Implement Retryable Writes
    • PERL-793 Causally Consistency read support
    • PERL-805 Implement database enumeration spec
    • PERL-807 Implement DNS Seedlist Discovery (mongodb+srv://...)
    • PERL-808 Add support for aggregation comment option
    • PERL-863 Implement SCRAM-SHA-256 authentication
    • PERL-883 Implement command monitoring
  • Bug fixes
    • PERL-690 Fix undefined reference to strerror_r on Windows
    • PERL-781 Prevent index drop errors for no collection
    • PERL-783 Check username/password are URI-escaped
    • PERL-865 Fix wide character error in auth
    • PERL-887 Fix topology_status with refresh
    • PERL-891 Fix bugs found during command monitoring testing (bulk_write write concern, query limit propagation, cursor internal accounting)
    • PERL-919 Fix user/pass percent encoding validation
  • Changes
    • PERL-641 Make legacy typewrappers into subclasses of BSON.pm classes
    • PERL-733 Require ordered document for run_command
    • PERL-794 Improve resolution of GridFS uploadDate
    • PERL-816 Improve error message for incompatible MongoDB versions
    • PERL-864 Improve auth error messages
  • Documentation
    • PERL-768 Document GridFS uniqueness constraints
    • PERL-788 Amend MongoDB::Cursor docs
    • PERL-809 Added t/examples/changestream.t
    • PERL-866 Document how to use the latest TLS protocols
    • PERL-903 Revise MongoDB::DataTypes and MongoDB::Tutorial
    • PERL-917 Fix minor spelling error
  • Prerequisites
    • PERL-900 Conditionally require XS dependencies (BSON::XS, Class::XSAccessor and Type::Tiny::XS)
    • PERL-934 Bumped Authen::SCRAM prerequisite to work around deep dependency issues
  • Removals
    • PERL-765 Remove DateTime from driver code and tests
  • Testing
    • PERL-668 Update SDAM spec tests
    • PERL-671 Update CRUD testing data files
    • PERL-700 Fix app_name test for multi-shard topologies
    • PERL-719 Resync CRUD spec tests
    • PERL-726 Update deprecated 'last_error' test
    • PERL-727 Fix GridFS tests on Windows
    • PERL-907 Test with BSON Codec using full wrapping
  • ~ Internal changes ~
    • PERL-666 Eliminate Module::Install in Makefile.PL
    • PERL-715 Force localhost to connect via IPv4
    • PERL-767 Cache SCRAM-SHA-1 client key
    • PERL-826 Stop sending maxAwaitTimeMS if not set
    • PERL-900 Vendor ExtUtils::HasCompiler

Documentation

Using MongoDB data types with Perl
Some examples of MongoDB syntax
Internal event monitoring API for instrumentation
Getting started with MongoDB
Deprecations and behavior changes from v1 to v2
Deprecations and behavior changes from v0 to v1

Modules

Official MongoDB Driver for Perl
(DEPRECATED) MongoDB binary type
(DEPRECATED) Regular expression type
MongoDB bulk write interface
MongoDB bulk write result document
Bulk write operations against a query document
A stream providing update information for collections.
MongoDB session management
(DEPRECATED) JavaScript code type
A MongoDB Collection
MongoDB generic command result document
A lazy cursor for Mongo query results
(DEPRECATED) A MongoDB database reference type
A MongoDB Database
MongoDB deletion result object
MongoDB Driver Error classes
A file storage abstraction
File handle abstraction for downloading
File handle abstraction for uploading
Index management for a collection
MongoDB single insert result object
MongoDB single insert result object
A connection to a MongoDB server or multi-server deployment
(DEPRECATED) A Mongo Object ID
An iterator for Mongo query results
An iterator for Mongo query results with client-side filtering
Encapsulate and validate a read concern
Encapsulate and validate read preferences
(DEPRECATED) Replication timestamp type
MongoDB unacknowledged result object
MongoDB update result object
Encapsulate and validate a write concern
MongoDB Server Session object

Provides

in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm
in lib/MongoDB/Error.pm