.. warning:: Driver support for MongoDB 3.6 reached end of life in April 2024.
PyMongo 4.9 will be the last release to support MongoDB 3.6.
.. warning:: PyMongo 4.9 refactors a large portion of internal APIs to support the new asynchronous API beta.
As a result, versions of Motor older than 3.6 are not compatible with PyMongo 4.9.
Existing users of these versions must either upgrade to Motor 3.6 and PyMongo 4.9,
or cap their PyMongo version to < 4.9.
Any applications that use private APIs may also break as a result of these internal changes.
PyMongo 4.9 brings a number of improvements including:
Added support for MongoDB 8.0.
Added support for Python 3.13.
A new beta asynchronous API with full asyncio support.
This new asynchronous API is a work-in-progress that may change during the beta period before the full release.
Added support for In-Use Encryption range queries with MongoDB 8.0.
Added :attr:~pymongo.encryption.Algorithm.RANGE.
sparsity and trim_factor are now optional in :class:~pymongo.encryption_options.RangeOpts.
Added support for the "delegated" option for the KMIP master_key in
:meth:~pymongo.encryption.ClientEncryption.create_data_key.
pymongocrypt>=1.10 is now required for :ref:In-Use Encryption support.
Added :meth:~pymongo.cursor.Cursor.to_list to :class:~pymongo.cursor.Cursor,
:class:~pymongo.command_cursor.CommandCursor,
:class:~pymongo.asynchronous.cursor.AsyncCursor,
and :class:~pymongo.asynchronous.command_cursor.AsyncCommandCursor
as an asynchronous-friendly alternative to list(cursor).
Added :meth:~pymongo.mongo_client.MongoClient.bulk_write to :class:~pymongo.mongo_client.MongoClient
and :class:~pymongo.asynchronous.mongo_client.AsyncMongoClient,
enabling users to perform insert, update, and delete operations
against mixed namespaces in a minimized number of round trips.
Please see :doc:examples/client_bulk for more information.
Added support for the namespace parameter to the
:class:~pymongo.operations.InsertOne,
:class:~pymongo.operations.ReplaceOne,
:class:~pymongo.operations.UpdateOne,
:class:~pymongo.operations.UpdateMany,
:class:~pymongo.operations.DeleteOne, and
:class:~pymongo.operations.DeleteMany operations, so
they can be used in the new :meth:~pymongo.mongo_client.MongoClient.bulk_write.
Added :func:repr support to :class:bson.tz_util.FixedOffset.
Fixed a bug where PyMongo would raise InvalidBSON: unhashable type: 'tzfile'
when using :attr:~bson.codec_options.DatetimeConversion.DATETIME_CLAMP or
:attr:~bson.codec_options.DatetimeConversion.DATETIME_AUTO with a timezone from dateutil.
Fixed a bug where PyMongo would raise InvalidBSON: date value out of range
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the pip group with 5 updates:
0.114.2
0.115.0
4.8.0
4.9.1
3.2.7
3.3.0
1.1.4
1.1.5
28.4.1
29.0.0
Updates
fastapi[all]
from 0.114.2 to 0.115.0Release notes
Sourced from fastapi[all]'s releases.
... (truncated)
Commits
40e33e4
🔖 Release version 0.115.0b36047b
📝 Update release notes7eadeb6
📝 Update release notes55035f4
✨ Add support for Pydantic models for parameters usingQuery
,Cookie
, `He...0903da7
📝 Update release notes4b2b14a
⬆ [pre-commit.ci] pre-commit autoupdate (#12204)35df20c
📝 Update release notes8eb3c56
🌐 Add Portuguese translation for `docs/pt/docs/advanced/security/http-basic-a...Updates
pymongo
from 4.8.0 to 4.9.1Release notes
Sourced from pymongo's releases.
Changelog
Sourced from pymongo's changelog.
... (truncated)
Commits
8b26d4b
BUMP 4.9.1d0772f2
PYTHON-4773 - Async PyMongo Beta docs update (#1868)2ddd16d
BUMP 4.10.0.dev0699d962
BUMP 4.92c432b5
PYTHON-4768 - Fix atlas connection tests and cleanup uses of raw MongoClients...6d472a1
PYTHON-4738 Skip encryption test_fork on PyPy (#1865)9a71be1
PYTHON-4740 Convert asyncio.TimeoutError to socket.timeout for compat (#1864)c136684
PYTHON-4585 Cursor.to_list does not apply client's timeoutMS setting (#1860)40ebc16
PYTHON-4764 Update to use current supported EVG hosts (#1858)163e3d4
PYTHON-4738 - Make test_encryption.TestClientSimple.test_fork sync-only (#1862)Updates
pylint
from 3.2.7 to 3.3.0Commits
6350dfa
Bump pylint to 3.3.0, update changelog78f3dfa
Bump astroid to 3.3.3 (#9939)b28c1f6
Add check forunnecessary-default-type-args
(#9938)bd97b93
[doc framework] Assert that the good and bad example exists in the doc (#9936)7aa4436
Fix duplicate workflow step ids (#9934)0950916
[pre-commit] Add codespell, and fix some existing typos (#9912)3b4a7f9
Add details.rst for c-extension-no-member (#9933)7d60c27
Explicitly save cache in primer jobs67acc96
Add additional stdlib deprecations (mostly 3.13) (#9853)0adf671
Remove old-style classes code, remove check for new-style class (#9925)Updates
pytest-env
from 1.1.4 to 1.1.5Release notes
Sourced from pytest-env's releases.
Commits
fb88038
Update README.md438fc5a
Improve the CI (#101)36ba135
[pre-commit.ci] pre-commit autoupdate (#100)e9faa63
[pre-commit.ci] pre-commit autoupdate (#99)Updates
faker
from 28.4.1 to 29.0.0Release notes
Sourced from faker's releases.
Changelog
Sourced from faker's changelog.
Commits
71715c8
Bump version: 28.4.1 → 29.0.02a4963c
:pencil: Update CHANGELOG.md9c8a9d9
💄 Format codee4914bf
make it clear that stubs are auto-generatede96222c
Fixpydecimal
distribution when called with a range across 0Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show