Skip to content

Commit

Permalink
MOTOR-941 Bump pymongo requirement to 4 (#161)
Browse files Browse the repository at this point in the history
  • Loading branch information
blink1073 committed Apr 22, 2022
1 parent 0b0a360 commit ca0b27b
Show file tree
Hide file tree
Showing 5 changed files with 50 additions and 37 deletions.
6 changes: 3 additions & 3 deletions README.rst
Expand Up @@ -98,8 +98,8 @@ Motor works in all the environments officially supported by Tornado or by
asyncio. It requires:

* Unix (including macOS) or Windows.
* PyMongo_ >=3.12,<4
* Python 3.5+
* PyMongo_ >=4,<5
* Python 3.7+

Optional dependencies:

Expand Down Expand Up @@ -155,7 +155,7 @@ Documentation

Motor's documentation is on ReadTheDocs_.

Build the documentation with Python 3.5. Install sphinx_, Tornado_, and aiohttp_,
Build the documentation with Python 3.7+. Install sphinx_, Tornado_, and aiohttp_,
and do ``cd doc; make html``.

Testing
Expand Down
2 changes: 1 addition & 1 deletion doc/changelog.rst
Expand Up @@ -6,7 +6,7 @@ Changelog
Motor 3.0
---------

Motor 3.0 adds support for PyMongo 4.0+.
Motor 3.0 requires PyMongo 4.0+ and Python 3.7+.


Breaking Changes
Expand Down
4 changes: 2 additions & 2 deletions doc/installation.rst
Expand Up @@ -19,8 +19,8 @@ Motor works in all the environments officially supported by Tornado or by
asyncio. It requires:

* Unix (including macOS) or Windows.
* PyMongo_ >=3.12,<4
* Python 3.5+
* PyMongo_ >=4,<5
* Python 3.7+

Optional dependencies:

Expand Down
73 changes: 43 additions & 30 deletions doc/requirements.rst
Expand Up @@ -3,8 +3,8 @@ Requirements

The current version of Motor requires:

* CPython 3.5 and later.
* PyMongo_ 3.12 and later.
* CPython 3.7 and later.
* PyMongo_ 4.0 and later.

Motor can integrate with either Tornado or asyncio.

Expand Down Expand Up @@ -47,6 +47,8 @@ Motor and PyMongo
+-------------------+-----------------+
| 2.5 | 3.12+ |
+-------------------+-----------------+
| 3.0 | 4.0+ |
+-------------------+-----------------+

Motor and MongoDB
`````````````````
Expand Down Expand Up @@ -76,6 +78,8 @@ Motor and MongoDB
+---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| | 2.5 |**N**|**N**|**N**| Y | Y | Y | Y | Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| | 3.0 |**N**|**N**|**N**|**N**|**N**|**N**| Y | Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+

There is no relationship between PyMongo and MongoDB version numbers, although
the numbers happen to be close or equal in recent releases of PyMongo and MongoDB.
Expand Down Expand Up @@ -112,6 +116,8 @@ known to be incompatible, or have not been tested together.
+---------------+-----+-----+-----+-----+-----+
| | 2.3 |**N**|**N**| Y | Y |
+---------------+-----+-----+-----+-----+-----+
| | 3.0 |**N**|**N**|**N**| Y |
+---------------+-----+-----+-----+-----+-----+

Motor and Python
````````````````
Expand All @@ -121,34 +127,41 @@ the "async for" protocol implemented in Python 3.5.0 and 3.5.1. Motor continues
to work with "async for" loops in Python 3.5.2 and later.

Motor 1.2.5 and 1.3.1 add compatibility with Python 3.7, but at the cost of
dropping Python 3.4.3 and older. Motor 2.2 dropped support for Pythons older
than 3.5.2. Motor 2.5 deprecates support for Python 3.5.

+-------------------------------------------------------------------------------------------+
| Python Version |
+=====================+=====+=====+=====+=====+=====+=======+=======+=====+=====+=====+=====+
| | 2.5 | 2.6 | 2.7 | 3.3 | 3.4 | 3.5.0 | 3.5.2 | 3.6 | 3.7 | 3.8 | 3.9 |
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| Motor Version | 1.0 |**N**| Y | Y | Y | Y | Y | Y | Y |**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 1.1 |**N**| Y | Y | Y | Y | Y | Y | Y |**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 1.2 |**N**|**N**| Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 1.3 |**N**|**N**| Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.0 |**N**|**N**| Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.1 |**N**|**N**| Y |**N**| Y |**N** | Y | Y | Y | Y |**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.2 |**N**|**N**|**N**|**N**|**N**|**N** | Y | Y | Y | Y |**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.3 |**N**|**N**|**N**|**N**|**N**|**N** | Y | Y | Y | Y |**N**|
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.4 |**N**|**N**|**N**|**N**|**N**|**N** | Y | Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
| | 2.5 |**N**|**N**|**N**|**N**|**N**|**N** | Y | Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+
dropping Python 3.4.3 and older.

Motor 2.2 dropped support for Pythons older than 3.5.2.

Motor 2.5 deprecated support for Python 3.5.

Motor 3.0 dropped support for Pythons older than 3.7.

+-------------------------------------------------------------------------------------+
| Python Version |
+=====================+=====+=====+=====+=======+=======+=====+=====+=====+=====+=====+
| | 2.7 | 3.3 | 3.4 | 3.5.0 | 3.5.2 | 3.6 | 3.7 | 3.8 | 3.9 | 3.10|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| Motor Version | 1.0 | Y | Y | Y | Y | Y | Y |**N**|**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 1.1 | Y | Y | Y | Y | Y | Y |**N**|**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 1.2 | Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 1.3 | Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.0 | Y |**N**| Y |**N** | Y | Y | Y |**N**|**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.1 | Y |**N**| Y |**N** | Y | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.2 |**N**|**N**|**N**|**N** | Y | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.3 |**N**|**N**|**N**|**N** | Y | Y | Y | Y |**N**|**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.4 |**N**|**N**|**N**|**N** | Y | Y | Y | Y | Y |**N**|
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 2.5 |**N**|**N**|**N**|**N** | Y | Y | Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+
| | 3.0 |**N**|**N**|**N**|**N** |**N** |**N**| Y | Y | Y | Y |
+---------------+-----+-----+-----+-----+-------+-------+-----+-----+-----+-----+-----+

Not Supported
-------------
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Expand Up @@ -36,7 +36,7 @@
with open("README.rst") as readme:
long_description = readme.read()

pymongo_ver = ">=3.12,<5"
pymongo_ver = ">=4,<5"

install_requires = ["pymongo" + pymongo_ver]

Expand Down

0 comments on commit ca0b27b

Please sign in to comment.