From a9b281b2ef4ab25d95d6b268aa88c428e75c3696 Mon Sep 17 00:00:00 2001 From: Sviatoslav Sydorenko Date: Thu, 1 Feb 2024 05:59:36 +0100 Subject: [PATCH] =?UTF-8?q?=E2=87=AA=20=F0=9F=93=A6=20Release=20v6.0.5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.rst | 185 ++++++++++++++++++++++++++++++++++ CHANGES/31e1170.packaging.rst | 5 - CHANGES/7ba0e72.packaging.rst | 2 - CHANGES/802.packaging.rst | 4 - CHANGES/827.contrib.rst | 2 - CHANGES/828.contrib.rst | 8 -- CHANGES/837.contrib.rst | 1 - CHANGES/862.bugfix.1.rst | 1 - CHANGES/862.bugfix.rst | 1 - CHANGES/864.bugfix.rst | 2 - CHANGES/868.bugfix.rst | 1 - CHANGES/877.packaging.rst | 2 - CHANGES/898.bugfix.rst | 1 - CHANGES/909.bugfix.rst | 10 -- CHANGES/911.doc.rst | 2 - CHANGES/915.contrib.rst | 12 --- CHANGES/920.contrib.rst | 2 - CHANGES/926.bugfix.rst | 1 - CHANGES/927.bugfix.rst | 2 - CHANGES/929.bugfix.rst | 1 - CHANGES/936.contrib.rst | 9 -- CHANGES/937.contrib.rst | 3 - CHANGES/98.contrib.rst | 1 - multidict/__init__.py | 2 +- 24 files changed, 186 insertions(+), 74 deletions(-) delete mode 100644 CHANGES/31e1170.packaging.rst delete mode 100644 CHANGES/7ba0e72.packaging.rst delete mode 100644 CHANGES/802.packaging.rst delete mode 100644 CHANGES/827.contrib.rst delete mode 100644 CHANGES/828.contrib.rst delete mode 120000 CHANGES/837.contrib.rst delete mode 120000 CHANGES/862.bugfix.1.rst delete mode 120000 CHANGES/862.bugfix.rst delete mode 100644 CHANGES/864.bugfix.rst delete mode 120000 CHANGES/868.bugfix.rst delete mode 100644 CHANGES/877.packaging.rst delete mode 120000 CHANGES/898.bugfix.rst delete mode 100644 CHANGES/909.bugfix.rst delete mode 100644 CHANGES/911.doc.rst delete mode 100644 CHANGES/915.contrib.rst delete mode 100644 CHANGES/920.contrib.rst delete mode 120000 CHANGES/926.bugfix.rst delete mode 100644 CHANGES/927.bugfix.rst delete mode 120000 CHANGES/929.bugfix.rst delete mode 100644 CHANGES/936.contrib.rst delete mode 100644 CHANGES/937.contrib.rst delete mode 120000 CHANGES/98.contrib.rst diff --git a/CHANGES.rst b/CHANGES.rst index 66d574714..b6255209b 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -14,6 +14,191 @@ Changelog .. towncrier release notes start +6.0.5 (2024-02-01) +================== + +Bug fixes +--------- + +- Upgraded the C-API macros that have been deprecated in Python 3.9 + and later removed in 3.13 -- by :user:`iemelyanov`. + + + *Related issues and pull requests on GitHub:* + :issue:`862`, :issue:`864`, :issue:`868`, :issue:`898`. + + + +- Reverted to using the public argument parsing API + :c:func:`PyArg_ParseTupleAndKeywords` under Python 3.12 + -- by :user:`charles-dyfis-net` and :user:`webknjaz`. + + The effect is that this change prevents build failures with + clang 16.9.6 and gcc-14 reported in :issue:`926`. It also + fixes a segmentation fault crash caused by passing keyword + arguments to :py:meth:`MultiDict.getall() + ` discovered by :user:`jonaslb` + and :user:`hroncok` while examining the problem. + + + *Related issues and pull requests on GitHub:* + :issue:`862`, :issue:`909`, :issue:`926`, :issue:`929`. + + + +- Fixed a ``SystemError: null argument to internal routine`` error on + a ``MultiDict.items().isdisjoint()`` call when using C Extensions. + + + *Related issues and pull requests on GitHub:* + :issue:`927`. + + + + +Improved documentation +---------------------- + +- On the `Contributing docs `_ page, + a link to the ``Towncrier philosophy`` has been fixed. + + + *Related issues and pull requests on GitHub:* + :issue:`911`. + + + + +Packaging updates and notes for downstreams +------------------------------------------- + +- Stopped marking all files as installable package data + -- by :user:`webknjaz`. + + This change helps ``setuptools`` understand that C-headers are + not to be installed under :file:`lib/python3.{x}/site-packages/`. + + + + *Related commits on GitHub:* + :commit:`31e1170`. + + +- Started publishing pure-python wheels to be installed + as a fallback -- by :user:`webknjaz`. + + + + *Related commits on GitHub:* + :commit:`7ba0e72`. + + +- Switched from ``setuptools``' legacy backend (``setuptools.build_meta:__legacy__``) + to the modern one (``setuptools.build_meta``) by actually specifying the + the ``[build-system] build-backend`` option in :file:`pyproject.toml` + -- by :user:`Jackenmen`. + + + *Related issues and pull requests on GitHub:* + :issue:`802`. + + + +- Declared Python 3.12 supported officially in the + distribution package metadata -- by :user:`hugovk`. + + + *Related issues and pull requests on GitHub:* + :issue:`877`. + + + + +Contributor-facing changes +-------------------------- + +- The test framework has been refactored. In the previous state, the circular + imports reported in :issue:`837` caused the C-extension tests to be skipped. + + Now, there is a set of the ``pytest`` fixtures that is set up in a parametrized + manner allowing to have a consistent way of accessing mirrored ``multidict`` + implementations across all the tests. + + This change also implemented a pair of CLI flags (``--c-extensions`` / + ``--no-c-extensions``) that allow to explicitly request deselecting the tests + running against the C-extension. + + -- by :user:`webknjaz`. + + + *Related issues and pull requests on GitHub:* + :issue:`98`, :issue:`837`, :issue:`915`. + + + +- Updated the test pins lockfile used in the + ``cibuildwheel`` test stage -- by :user:`hoodmane`. + + + *Related issues and pull requests on GitHub:* + :issue:`827`. + + + +- Added an explicit ``void`` for arguments in C-function signatures + which addresses the following compiler warning: + + .. code-block:: console + + warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] + + -- by :user:`hoodmane` + + + *Related issues and pull requests on GitHub:* + :issue:`828`. + + + +- An experimental Python 3.13 job now runs in the CI + -- :user:`webknjaz`. + + + *Related issues and pull requests on GitHub:* + :issue:`920`. + + + +- Added test coverage for the :ref:`and `, :ref:`or + `, :py:obj:`sub `, and + :py:obj:`xor ` operators in the + :file:`multidict/_multidict_base.py` module. It also covers + :py:data:`NotImplemented` and + ":py:class:`~typing.Iterable`-but-not-:py:class:`~typing.Set`" + cases there. + + -- by :user:`a5r0n` + + + *Related issues and pull requests on GitHub:* + :issue:`936`. + + + +- The version of pytest is now capped below 8, when running MyPy + against Python 3.7. This pytest release dropped support for + said runtime. + + + *Related issues and pull requests on GitHub:* + :issue:`937`. + + + + +---- + + 6.0.4 (2022-12-24) ================== diff --git a/CHANGES/31e1170.packaging.rst b/CHANGES/31e1170.packaging.rst deleted file mode 100644 index 119bd4f01..000000000 --- a/CHANGES/31e1170.packaging.rst +++ /dev/null @@ -1,5 +0,0 @@ -Stopped marking all files as installable package data --- by :user:`webknjaz`. - -This change helps ``setuptools`` understand that C-headers are -not to be installed under :file:`lib/python3.{x}/site-packages/`. diff --git a/CHANGES/7ba0e72.packaging.rst b/CHANGES/7ba0e72.packaging.rst deleted file mode 100644 index c77c0f67c..000000000 --- a/CHANGES/7ba0e72.packaging.rst +++ /dev/null @@ -1,2 +0,0 @@ -Started publishing pure-python wheels to be installed -as a fallback -- by :user:`webknjaz`. diff --git a/CHANGES/802.packaging.rst b/CHANGES/802.packaging.rst deleted file mode 100644 index b803d21ca..000000000 --- a/CHANGES/802.packaging.rst +++ /dev/null @@ -1,4 +0,0 @@ -Switched from ``setuptools``' legacy backend (``setuptools.build_meta:__legacy__``) -to the modern one (``setuptools.build_meta``) by actually specifying the -the ``[build-system] build-backend`` option in :file:`pyproject.toml` --- by :user:`Jackenmen`. diff --git a/CHANGES/827.contrib.rst b/CHANGES/827.contrib.rst deleted file mode 100644 index d37ea1170..000000000 --- a/CHANGES/827.contrib.rst +++ /dev/null @@ -1,2 +0,0 @@ -Updated the test pins lockfile used in the -``cibuildwheel`` test stage -- by :user:`hoodmane`. diff --git a/CHANGES/828.contrib.rst b/CHANGES/828.contrib.rst deleted file mode 100644 index 2632e285a..000000000 --- a/CHANGES/828.contrib.rst +++ /dev/null @@ -1,8 +0,0 @@ -Added an explicit ``void`` for arguments in C-function signatures -which addresses the following compiler warning: - -.. code-block:: console - - warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] - --- by :user:`hoodmane` diff --git a/CHANGES/837.contrib.rst b/CHANGES/837.contrib.rst deleted file mode 120000 index 845b046c6..000000000 --- a/CHANGES/837.contrib.rst +++ /dev/null @@ -1 +0,0 @@ -915.contrib.rst \ No newline at end of file diff --git a/CHANGES/862.bugfix.1.rst b/CHANGES/862.bugfix.1.rst deleted file mode 120000 index 1dad3117f..000000000 --- a/CHANGES/862.bugfix.1.rst +++ /dev/null @@ -1 +0,0 @@ -909.bugfix.rst \ No newline at end of file diff --git a/CHANGES/862.bugfix.rst b/CHANGES/862.bugfix.rst deleted file mode 120000 index b47fb3b93..000000000 --- a/CHANGES/862.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -864.bugfix.rst \ No newline at end of file diff --git a/CHANGES/864.bugfix.rst b/CHANGES/864.bugfix.rst deleted file mode 100644 index 86637b8f6..000000000 --- a/CHANGES/864.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Upgraded the C-API macros that have been deprecated in Python 3.9 -and later removed in 3.13 -- by :user:`iemelyanov`. diff --git a/CHANGES/868.bugfix.rst b/CHANGES/868.bugfix.rst deleted file mode 120000 index b47fb3b93..000000000 --- a/CHANGES/868.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -864.bugfix.rst \ No newline at end of file diff --git a/CHANGES/877.packaging.rst b/CHANGES/877.packaging.rst deleted file mode 100644 index 93b3bb31a..000000000 --- a/CHANGES/877.packaging.rst +++ /dev/null @@ -1,2 +0,0 @@ -Declared Python 3.12 supported officially in the -distribution package metadata -- by :user:`hugovk`. diff --git a/CHANGES/898.bugfix.rst b/CHANGES/898.bugfix.rst deleted file mode 120000 index b47fb3b93..000000000 --- a/CHANGES/898.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -864.bugfix.rst \ No newline at end of file diff --git a/CHANGES/909.bugfix.rst b/CHANGES/909.bugfix.rst deleted file mode 100644 index 6cb8fc0cf..000000000 --- a/CHANGES/909.bugfix.rst +++ /dev/null @@ -1,10 +0,0 @@ -Reverted to using the public argument parsing API -:c:func:`PyArg_ParseTupleAndKeywords` under Python 3.12 --- by :user:`charles-dyfis-net` and :user:`webknjaz`. - -The effect is that this change prevents build failures with -clang 16.9.6 and gcc-14 reported in :issue:`926`. It also -fixes a segmentation fault crash caused by passing keyword -arguments to :py:meth:`MultiDict.getall() -` discovered by :user:`jonaslb` -and :user:`hroncok` while examining the problem. diff --git a/CHANGES/911.doc.rst b/CHANGES/911.doc.rst deleted file mode 100644 index 14cab48c1..000000000 --- a/CHANGES/911.doc.rst +++ /dev/null @@ -1,2 +0,0 @@ -On the `Contributing docs `_ page, -a link to the ``Towncrier philosophy`` has been fixed. diff --git a/CHANGES/915.contrib.rst b/CHANGES/915.contrib.rst deleted file mode 100644 index 2fbaf2ff5..000000000 --- a/CHANGES/915.contrib.rst +++ /dev/null @@ -1,12 +0,0 @@ -The test framework has been refactored. In the previous state, the circular -imports reported in :issue:`837` caused the C-extension tests to be skipped. - -Now, there is a set of the ``pytest`` fixtures that is set up in a parametrized -manner allowing to have a consistent way of accessing mirrored ``multidict`` -implementations across all the tests. - -This change also implemented a pair of CLI flags (``--c-extensions`` / -``--no-c-extensions``) that allow to explicitly request deselecting the tests -running against the C-extension. - --- by :user:`webknjaz`. diff --git a/CHANGES/920.contrib.rst b/CHANGES/920.contrib.rst deleted file mode 100644 index e9928b69f..000000000 --- a/CHANGES/920.contrib.rst +++ /dev/null @@ -1,2 +0,0 @@ -An experimental Python 3.13 job now runs in the CI --- :user:`webknjaz`. diff --git a/CHANGES/926.bugfix.rst b/CHANGES/926.bugfix.rst deleted file mode 120000 index 1dad3117f..000000000 --- a/CHANGES/926.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -909.bugfix.rst \ No newline at end of file diff --git a/CHANGES/927.bugfix.rst b/CHANGES/927.bugfix.rst deleted file mode 100644 index 884a735d4..000000000 --- a/CHANGES/927.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a ``SystemError: null argument to internal routine`` error on -a ``MultiDict.items().isdisjoint()`` call when using C Extensions. diff --git a/CHANGES/929.bugfix.rst b/CHANGES/929.bugfix.rst deleted file mode 120000 index 1dad3117f..000000000 --- a/CHANGES/929.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -909.bugfix.rst \ No newline at end of file diff --git a/CHANGES/936.contrib.rst b/CHANGES/936.contrib.rst deleted file mode 100644 index 832f09d1e..000000000 --- a/CHANGES/936.contrib.rst +++ /dev/null @@ -1,9 +0,0 @@ -Added test coverage for the :ref:`and `, :ref:`or -`, :py:obj:`sub `, and -:py:obj:`xor ` operators in the -:file:`multidict/_multidict_base.py` module. It also covers -:py:data:`NotImplemented` and -":py:class:`~typing.Iterable`-but-not-:py:class:`~typing.Set`" -cases there. - --- by :user:`a5r0n` \ No newline at end of file diff --git a/CHANGES/937.contrib.rst b/CHANGES/937.contrib.rst deleted file mode 100644 index da8c5a29e..000000000 --- a/CHANGES/937.contrib.rst +++ /dev/null @@ -1,3 +0,0 @@ -The version of pytest is now capped below 8, when running MyPy -against Python 3.7. This pytest release dropped support for -said runtime. diff --git a/CHANGES/98.contrib.rst b/CHANGES/98.contrib.rst deleted file mode 120000 index 845b046c6..000000000 --- a/CHANGES/98.contrib.rst +++ /dev/null @@ -1 +0,0 @@ -915.contrib.rst \ No newline at end of file diff --git a/multidict/__init__.py b/multidict/__init__.py index b2089a180..23142eeaf 100644 --- a/multidict/__init__.py +++ b/multidict/__init__.py @@ -20,7 +20,7 @@ "getversion", ) -__version__ = "6.0.5.dev0" +__version__ = "6.0.5" try: