Release Notes - Python Driver - Version 4.4 - HTML format

Build Failure

  • [PYTHON-3543] - Broken Links for ICU Project
  • [PYTHON-3596] - Test-latest-replica_set failing across all variants.
  • [PYTHON-3607] - FAIL: test_01_aws (test.test_encryption.TestKmsTLSOptions)
  • [PYTHON-3619] - MacOS hosts are incredibly slow
  • [PYTHON-3629] - Test Failure - Atlas connect tests
  • [PYTHON-3639] - Release Build is Failing to Create Universal Wheels for MacOS
  • [PYTHON-3651] - Core dump on OCSP test Ubuntu 20.04 PyPy 3.8
  • [PYTHON-3671] - Test Failure - Windows replica set test sometimes fails to connect
  • [PYTHON-3672] - Test Failure - test_validation_with_system_ca_certs Windows server selection timeout too low in tests
  • [PYTHON-3686] - Test Failure - Mypy tests failing (avoid using stub file for codec options namedtuple generic workaround)
  • [PYTHON-3690] - [Build Failure] Failed building wheel for lxml
  • [PYTHON-3692] - [Build Failure] Container Test failed MONGODB-AWS on MongoDB 5.0
  • [PYTHON-3708] - Fix ReadTheDocs Build Failure
  • [PYTHON-3725] - Test Failure - MockupDB test_network_disconnect_primary
  • [PYTHON-3744] - utcnow deprecation build regressions

Spec Change

  • [PYTHON-2754] - Add Spec Tests For DB Names With Commas
  • [PYTHON-3616] - Use minimum RTT for CSOT maxTimeMS calculation instead of 90th percentile
  • [PYTHON-3618] - Perf tests are failing on the centos6-perf boxes due to mongosh download

Bug

  • [PYTHON-3360] - Disable causal consistency in implicit sessions
  • [PYTHON-3388] - Propagate Original Error for Write Errors Labeled NoWritesPerformed
  • [PYTHON-3469] - Error if RewrapManyDataKey is called with masterKey and without provider
  • [PYTHON-3546] - bson.CodecOptions docs missing unicode_decode_error_handler="ignore" option in newer documentation
  • [PYTHON-3562] - Type annotation of `bson.json_utils.loads` is incorrect (only accepts `str`)
  • [PYTHON-3565] - The docs page appears to be missing a component reference
  • [PYTHON-3568] - Intellisense highlights multiple PyMongo methods because of CodecOptions
  • [PYTHON-3657] - Allow explicit index name set to None
  • [PYTHON-3678] - Auth docs page says to use quote() when it should say quote_plus()
  • [PYTHON-3691] - file descriptor cannot be a negative integer (-1) error when using PyOpenSSL

Epic

New Feature

  • [PYTHON-2818] - Add native support for AWS IAM Roles for service accounts, EKS in particular
  • [PYTHON-3357] - Automatically create Queryable Encryption keys
  • [PYTHON-3524] - Support passing list of strings to create_index
  • [PYTHON-3533] - Permit tlsDisableOCSPEndpointCheck in KMS TLS options
  • [PYTHON-3694] - Test against MongoDB 7.0
  • [PYTHON-3709] - Remove "Public Technical Preview" from Queryable Encryption Equality API

Task

  • [PYTHON-2468] - Add pymongoexplain example to pymongo docs
  • [PYTHON-2504] - Modernize syntax
  • [PYTHON-3066] - Test against Apple silicon in Evergreen
  • [PYTHON-3162] - Deprecate ServerDescription.election_tuple
  • [PYTHON-3351] - Provide access to raw result document when the server returns an error for a command
  • [PYTHON-3443] - Fix Coverity issues
  • [PYTHON-3456] - CSFLE/QE Naming
  • [PYTHON-3470] - Build Python 3.11 Wheels for MacOS
  • [PYTHON-3492] - Test mongocryptd is not spawned when shared library is loaded
  • [PYTHON-3531] - Pre-commit failure due to flake8 repository move
  • [PYTHON-3541] - Use bash instead of sh in evergreen scripts
  • [PYTHON-3542] - Test Failure - test_iteration on PyPy 3.8+
  • [PYTHON-3558] - Missing docs for JSONOptions
  • [PYTHON-3567] - Add guidance for setting uuidRepresentation in 4.0 migration guide
  • [PYTHON-3577] - test_read_concern.TestReadConcern.test_aggregate_out takes > 60 seconds on 4.0 replica set
  • [PYTHON-3584] - Tag 4.4 beta for rangePreview
  • [PYTHON-3589] - createEncryptedCollection should not accept keyAltNames
  • [PYTHON-3591] - Document createEncryptedCollection as "Public Technical Preview"
  • [PYTHON-3593] - Remove bulk api docs page which is blank
  • [PYTHON-3599] - Incorrect parameter in create_data_key example
  • [PYTHON-3604] - Remove Duplicate API Docs
  • [PYTHON-3609] - Stop using deprecated thread apis in test suite
  • [PYTHON-3614] - Update libmongocrypt payloads to new QE protocol
  • [PYTHON-3620] - Ensure unittest-xml-reporting is Installed in Evergreen Tasks
  • [PYTHON-3622] - Improve Server Log Download in Evergreen
  • [PYTHON-3626] - Document srvMaxHosts in MongoClient options
  • [PYTHON-3644] - Test encryption KMS connections with stdlib ssl, not just pyopenssl
  • [PYTHON-3646] - Update readme for PyMongo driver
  • [PYTHON-3658] - Clean up Azure resources on task failure
  • [PYTHON-3666] - Queryable Encryption prose and spec tests can share the same encryptedFields JSON files
  • [PYTHON-3677] - Update docs on Range Index
  • [PYTHON-3679] - Upgrade to mypy 1.2
  • [PYTHON-3696] - Bump minimum pymongocrypt version req to >=1.6 for QEv2
  • [PYTHON-3700] - Typo in create_index/drop_indexes doc strings
  • [PYTHON-3702] - Stop using utcnow and utcfromtimestamp
  • [PYTHON-3703] - Fix typos and setup "codespell" pre-commit
  • [PYTHON-3724] - fle2v2-CreateCollection tests expect embedded nulls to be treated specially
  • [PYTHON-3728] - Coverity issue with convert_codec_options
  • [PYTHON-3731] - Disable MONGODB-OIDC Auth for 4.4

Improvement

  • [PYTHON-2287] - Improve error message TypeError: upsert must be True or False
  • [PYTHON-3381] - Improve readability of sphinx docs
  • [PYTHON-3446] - Do not connect to mongocryptd if shared library is loaded
  • [PYTHON-3464] - Collect FaaS platform information as part of the environment information in driver handshake metadata
  • [PYTHON-3523] - Remove getNonce command usage for 6.2+
  • [PYTHON-3570] - Deprecate currentOp/collStats commands by 7.0
  • [PYTHON-3592] - createEncryptedCollection should raise a specialized exception to report the intermediate encryptedFields
  • [PYTHON-3610] - Add blacken-docs to pre-commit hook
  • [PYTHON-3613] - Improving Time-Series Scalability
  • [PYTHON-3615] - Add docs example for how to rotate CMKs using rewrap_many_data_key
  • [PYTHON-3643] - MONGODB-AWS auth examples should use mongodb+srv
  • [PYTHON-3652] - Bump maxWireVersion for MongoDB 7.0
  • [PYTHON-3699] - Avoiding Errors if Change Stream Events Exceed 16MB
  • [PYTHON-3717] - Speed up _type_marker check in BSON
  • [PYTHON-3718] - Faster INT2STRING

Edit/Copy Release Notes

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