Skip to content

1.17.0

Compare
Choose a tag to compare
@jmikola jmikola released this 15 Nov 09:26
· 43 commits to v1.17 since this release
1.17.0
9d9c917

The PHP team is happy to announce that version 1.17.0 of of the MongoDB PHP library is now available. This complements the 1.17.0 extension release.

Release Highlights

This release introduces a new "codec" API for converting BSON to and from PHP objects. Although this feature is implemented entirely in the library, it leverages the extension's MongoDB\BSON\Document object to work with raw BSON and lazily decode it as necessary. Unlike the extension's MongoDB\BSON\Serializable and MongoDB\BSON\Unserializable interfaces, codecs allow an application to separate the business logic in a PHP object representing a document from the logic necessary to convert it to/from BSON. To support this feature, a new codec option has been introduced on most classes and methods that currently accept a typeMap option; both options are mutually exclusive. More information on this feature may be found in the Codecs tutorial.

In conjunction with the MongoDB\Driver\Monitoring\LogSubscriber interface introduced in the corresponding extension version, MongoDB\add_logger() and MongoDB\remove_logger() functions have been introduced in the library. These functions allow applications to register a PSR-3 Logger to receive log messages emitted by the driver. Previously, logs were only accessible via the extension's mongodb.debug INI setting.

Several new MongoDB\Collection methods were introduced to create and manage Atlas Search indexes. Atlas Search indexes can be queried using the $search aggregation pipeline stage, which is supported in all versions of the library.

This release upgrades the mongodb extension requirement to 1.17.0. Support for PHP 7.2 and 7.3 has been removed and the library now requires PHP 7.4 or newer.

A complete list of resolved issues in this release may be found in JIRA.

Documentation

Documentation for this library may be found in the PHP Library Manual.

Installation

This library may be installed or upgraded with:

composer require mongodb/mongodb:1.17.0

Installation instructions for the mongodb extension may be found in the PHP.net documentation.

Thanks

Thanks to our community contributors for 1.17.0: