Release Notes - PHP Driver: Library - Version 1.16.0 - HTML format

Build Failure

  • [PHPLIB-1044] - Explain tests fail when explaining aggregate on MongoDB latest
  • [PHPLIB-1051] - Skip example scripts tests for requireApiVersion Evergreen tasks
  • [PHPLIB-1115] - DocumentationExamplesTest::testSnapshotQueries() fails on latest server version

Bug

  • [PHPLIB-802] - Send readConcern but not writeConcern to explain commands
  • [PHPLIB-915] - Disable causal consistency in implicit sessions
  • [PHPLIB-935] - Propagate Original Error for Write Errors Labeled NoWritesPerformed
  • [PHPLIB-1129] - Replace operations may inadvertently execute pipeline updates
  • [PHPLIB-1142] - GridFS\Bucket::$disableMD5 not used

New Feature

  • [PHPLIB-913] - Automatically create Queryable Encryption keys
  • [PHPLIB-1049] - Support AWS authentication with temporary credentials in CSFLE
  • [PHPLIB-1122] - Support Document and PackedArray objects in public APIs

Task

  • [PHPLIB-475] - Use read preference formats and strings consistently
  • [PHPLIB-619] - Unskip Azure FLE test once RHEL 7.x root certificate is in order
  • [PHPLIB-693] - Remove early returns for failed tests from tearDown methods
  • [PHPLIB-794] - Use multi-server URIs for load balancer tests when useMultipleMongoses is true
  • [PHPLIB-816] - Clean up extra namespaces used in DocumentationExamplesTest
  • [PHPLIB-878] - Spec tests for queryable encryption range indexes
  • [PHPLIB-881] - Consolidate validation of aggregation pipeline options
  • [PHPLIB-1031] - Test mongocryptd is not spawned when shared library is loaded
  • [PHPLIB-1034] - Update php-edge-versions latest-stable in Evergreen to PHP 8.2
  • [PHPLIB-1038] - Remove use of activate_venv.sh and utils.sh
  • [PHPLIB-1055] - Various documentation fixes related to command() helper
  • [PHPLIB-1057] - Deprecate IndexInfo::isGeoHaystack() and note that geoHaystack was removed in MongoDB 5.0+
  • [PHPLIB-1058] - Remove obsolete mongo-orchestration directory in repository root
  • [PHPLIB-1060] - Drop support for Composer 1.x
  • [PHPLIB-1063] - Add a test that drivers emit a CommandSucceededEvent when ok=1 and a writeConcernError is returned
  • [PHPLIB-1068] - Support optional insertedIds in CSFLE unified tests
  • [PHPLIB-1088] - Update Queryable Encryption tests for v2 protocol
  • [PHPLIB-1089] - Sync CSFLE spec tests for state collection namespace validation
  • [PHPLIB-1094] - Remove obsolete internal constants in EstimatedDocumentCount
  • [PHPLIB-1099] - Add MongoDB rapid releases to Evergreen matrix
  • [PHPLIB-1106] - Upgrade doctrine/coding-standard to 11.1.0
  • [PHPLIB-1110] - Queryable Encryption prose and spec tests can share the same encryptedFields JSON files
  • [PHPLIB-1116] - Add tests for runCommand spec
  • [PHPLIB-1117] - Remove @api annotations throughout the project
  • [PHPLIB-1120] - Simplify transaction options in convenient API doc example code
  • [PHPLIB-1128] - Move generate_index_name() to private method within IndexInput
  • [PHPLIB-1130] - Remove "Public Technical Preview" from Queryable Encryption Equality API
  • [PHPLIB-1132] - Sync unified spec tests for revised runOnRequirements
  • [PHPLIB-1133] - Enable QEv2 tests on Serverless
  • [PHPLIB-1135] - ExamplesTest broken when xdebug is enabled
  • [PHPLIB-1141] - Use rector for automatic refactor in CI and locally
  • [PHPLIB-1144] - Add unit tests on Explainable::getCommandDocument() implementations
  • [PHPLIB-1147] - Utilize Int64 constructor and integer casts in test suite
  • [PHPLIB-1148] - Create Comparator for Int64 objects and numeric primitives
  • [PHPLIB-1149] - Use consistent terminology when referring to the MongoDB shell in docs
  • [PHPLIB-1152] - Use private constants instead of private static properties
  • [PHPLIB-1153] - Add helper method FunctionalTestCase::skipIfServerVersion($op, $version)
  • [PHPLIB-1156] - Sync various spec tests for flexible getMore cursor ID assertions
  • [PHPLIB-1157] - fle2v2-CreateCollection tests expect embedded nulls to be treated specially
  • [PHPLIB-1158] - Update CI to run psalm & phpcs on PHP 8.2+
  • [PHPLIB-1162] - Remove unused $server argument in Explainable::getCommandDocument

Improvement

  • [PHPLIB-866] - Obtain AWS credentials for CSFLE in the same way as for MONGODB-AWS
  • [PHPLIB-1043] - Remove getNonce command usage for 6.2+
  • [PHPLIB-1056] - Add relevant type union syntax to documentation method signatures
  • [PHPLIB-1065] - Deprecate currentOp/collStats commands by 7.0
  • [PHPLIB-1071] - Drivers should not create the ECC collection in v2 of queryable encryption
  • [PHPLIB-1087] - Improving Time-Series Scalability
  • [PHPLIB-1093] - InvalidArgumentException::invalidType() should ensure $expectedType is not an empty array
  • [PHPLIB-1123] - Utilize array_is_list() where we currently detect packed arrays
  • [PHPLIB-1161] - Leverage array_key_first in functions

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.