UNCLASSIFIED - NO CUI

Skip to content

Update dependency multidict to v6.1.0

This MR contains the following updates:

Package Update Change
multidict minor ==6.0.4 -> ==6.1.0

Warning

Some dependencies could not be looked up. Check the warning logs for more information.


Release Notes

aio-libs/multidict (multidict)

v6.1.0

Compare Source

==================

Bug fixes

  • Covered the unreachable code path in multidict._multidict_base._abc_itemsview_register() with typing -- by :user:skinnyBat.

    Related issues and pull requests on GitHub: :issue:928.

Features

  • Added support for Python 3.13 -- by :user:bdraco.

    Related issues and pull requests on GitHub: :issue:1002.

Removals and backward incompatible breaking changes

  • Removed Python 3.7 support -- by :user:bdraco.

    Related issues and pull requests on GitHub: :issue:997.

Contributor-facing changes

  • Added tests to have full code coverage of the multidict._multidict_base._viewbaseset_richcmp() function -- by :user:skinnyBat.

    Related issues and pull requests on GitHub: :issue:928.

  • The deprecated <https://hynek.me/til/set-output-deprecation-github-actions/>_ ::set-output workflow command has been replaced by the $GITHUB_OUTPUT environment variable in the GitHub Actions CI/CD workflow definition.

    Related issues and pull requests on GitHub: :issue:940.

  • codecov-action <https://github.com/codecov/codecov-action>_ has been temporarily downgraded to v3 in the GitHub Actions CI/CD workflow definitions in order to fix uploading coverage to Codecov <https://app.codecov.io/gh/aio-libs/multidict>*. See this issue <https://github.com/codecov/codecov-action/issues/1252>* for more details.

    Related issues and pull requests on GitHub: :issue:941.

  • In the GitHub Actions CI/CD workflow definition, the Get pip cache dir step has been fixed for Windows runners by adding shell: bash. See actions/runner#2224 <https://github.com/actions/runner/issues/2224>_ for more details.

    Related issues and pull requests on GitHub: :issue:942.

  • Interpolation of the pip cache keys has been fixed by adding missing $ syntax in the GitHub Actions CI/CD workflow definition.

    Related issues and pull requests on GitHub: :issue:943.


v6.0.5

Compare Source

==================

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() <multidict.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 <https://github.com/aio-libs/multidict/blob/master/CHANGES/README.rst>_ 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 <python:and>, :ref:or <python:or>, :py:obj:sub <python:object.__sub__>, and :py:obj:xor <python:object.__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.



Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Merge request reports