From e650e0420182dde6b704af55336252467b94c6b2 Mon Sep 17 00:00:00 2001 From: Shane Harvey Date: Wed, 26 Jun 2024 08:55:07 -0700 Subject: [PATCH 1/2] PYTHON-4507 pip>=21.3 is required for editable installs (cherry picked from commit 6220ff3450d3b995f272f6dae85080d0e13ad152) --- doc/changelog.rst | 2 +- setup.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/doc/changelog.rst b/doc/changelog.rst index da52dab47b..7c44d38ac1 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -31,7 +31,7 @@ Unavoidable breaking changes ............................ - Since we are now using ``hatch`` as our build backend, we no longer have a ``setup.py`` file - and require installation using ``pip``. + and require installation using ``pip``. ``pip`` >= 21.3 is required for editable installs. Issues Resolved ............... diff --git a/setup.py b/setup.py index 9312c68bd4..f371b3d75b 100644 --- a/setup.py +++ b/setup.py @@ -1,5 +1,8 @@ from __future__ import annotations -msg = "PyMongo>=4.8 no longer supports building via setup.py, use python -m pip install instead" +msg = ( + "PyMongo>=4.8 no longer supports building via setup.py, use python -m pip install instead. If " + "this is an editable install (-e) please upgrade to pip>=21.3 first: python -m pip install --upgrade pip" +) raise RuntimeError(msg) From b11408f7767643d8d8f5e2db35b45d0b8eee24e1 Mon Sep 17 00:00:00 2001 From: Shane Harvey Date: Wed, 26 Jun 2024 09:30:34 -0700 Subject: [PATCH 2/2] Add full 4.8 changelog --- doc/changelog.rst | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/changelog.rst b/doc/changelog.rst index 7c44d38ac1..162e286b8b 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -26,12 +26,20 @@ PyMongo 4.8 brings a number of improvements including: - The handshake metadata for "os.name" on Windows has been simplified to "Windows" to improve import time. - The repr of ``bson.binary.Binary`` is now redacted when the subtype is SENSITIVE_SUBTYPE(8). +- Secure Software Development Life Cycle automation for release process. + GitHub Releases now include a Software Bill of Materials, and signature + files corresponding to the distribution files released on PyPI. +- Fixed a bug in change streams where both ``startAtOperationTime`` and ``resumeToken`` + could be added to a retry attempt, which caused the retry to fail. +- Fallback to stdlib ``ssl`` module when ``pyopenssl`` import fails with AttributeError. +- Improved performance of MongoClient operations, especially when many operations are being run concurrently. Unavoidable breaking changes ............................ -- Since we are now using ``hatch`` as our build backend, we no longer have a ``setup.py`` file - and require installation using ``pip``. ``pip`` >= 21.3 is required for editable installs. +- Since we are now using ``hatch`` as our build backend, we no longer have a usable ``setup.py`` file + and require installation using ``pip``. Attempts to invoke the ``setup.py`` file will raise an exception. + Additionally, ``pip`` >= 21.3 is now required for editable installs. Issues Resolved ...............