Fixed a bug that prevented :meth:bson.json_util.loads from
decoding a document with a non-string "$regex" field (PYTHON-3028_).
Fixed a bug where a client may select a hidden/ghost or not yet initialized
replica set member leading to unexpected "connection pool paused" errors
(PYTHON-3027_).
See the PyMongo 4.0.1 release notes in JIRA_ for the list of resolved issues
in this release.
.. warning:: PyMongo 4.0 drops support for Python 2.7, 3.4, and 3.5.
.. warning:: PyMongo 4.0 drops support for MongoDB 2.6, 3.0, 3.2, and 3.4.
PyMongo 4.0 brings a number of improvements as well as some backward breaking
changes. For example, all APIs deprecated in PyMongo 3.X have been removed.
Be sure to read the changes listed below and the :doc:migrate-to-pymongo4
before upgrading from PyMongo 3.x.
Breaking Changes in 4.0
.......................
Removed support for Python 2.7, 3.4, and 3.5. Python 3.6+ is now required.
The default uuid_representation for :class:~bson.codec_options.CodecOptions,
:class:~bson.json_util.JSONOptions, and
:class:~pymongo.mongo_client.MongoClient has been changed from
:data:bson.binary.UuidRepresentation.PYTHON_LEGACY to
:data:bson.binary.UuidRepresentation.UNSPECIFIED. Attempting to encode a
:class:uuid.UUID instance to BSON or JSON now produces an error by default.
See :ref:handling-uuid-data-example for details.
Removed the waitQueueMultiple keyword argument to
:class:~pymongo.mongo_client.MongoClient and removed
:exc:pymongo.errors.ExceededMaxWaiters.
Removed the socketKeepAlive keyword argument to
:class:~pymongo.mongo_client.MongoClient.
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 ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps pymongo from 3.12.1 to 4.0.1.
Release notes
Sourced from pymongo's releases.
Changelog
Sourced from pymongo's changelog.
... (truncated)
Commits
eb9e036
BUMP 4.0.1 (#811)f0d1563
PYTHON-3028 $regex as a field name does not allow for non-string values (#807)fd9a8bf
PYTHON-3033 Fix typo in uuid docs (#808)d715f58
PYTHON-3027 Fix server selection when topology type is Unknown (#806)e3d1d6f
BUMP 4.0.1.dev02c28149
BUMP 4.07de879a
PYTHON-3018 Add docs for removed methods from Collection (#801)37b5195
PYTHON-2434 Automatically combine release wheels + sdist into one archive (#803)64a4f6e
PYTHON-3024 Update estimatedDocumentCount test for Atlas Data Lake (#802)2af521e
PYTHON-2984 Fix retry behavior for bulk write writeConcernError (#800)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 ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)