Skip to content

build(deps): bump the all-pip-updates group across 3 directories with 42 updates - #70114

Open
dependabot[bot] wants to merge 2 commits into
3006.xfrom
dependabot/pip/3006.x/all-pip-updates-0b34dfa4ff
Open

build(deps): bump the all-pip-updates group across 3 directories with 42 updates#70114
dependabot[bot] wants to merge 2 commits into
3006.xfrom
dependabot/pip/3006.x/all-pip-updates-0b34dfa4ff

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 22, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on aiohttp, certifi, cffi, croniter, cryptography, jaraco-functools, jaraco-context, jaraco-text, lxml, multidict, msgpack, packaging, psutil, pymssql, pyopenssl, requests, tornado, virtualenv, filelock, zipp, idna, more-itertools, pycparser, docker, pytest, build, wheel, pip, gitpython, boto3, kubernetes, pynacl, sqlparse, vcert, xmldiff, pylint, m2crypto, pygit2, mercurial, ansible, twilio and python-telegram-bot to permit the latest version.
Updates aiohttp to 3.14.3

Changelog

Sourced from aiohttp's changelog.

3.14.3 (2026-07-22)

Bug fixes

  • Fixed the client dropping only the first Authorization, Cookie and Proxy-Authorization header when a redirect crossed an origin -- by :user:arshsmith1.

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

  • Fixed error message construction in the C HTTP parser -- by :user:bdraco.

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


3.14.2 (2026-07-20)

Bug fixes

  • Fixed :py:attr:~aiohttp.web.StreamResponse.last_modified rounding a :class:datetime.datetime with a fractional second down.

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

  • Fixed resolving localhost on Windows to fall back without AI_ADDRCONFIG when the first lookup fails, so localhost still works without an active network.

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

... (truncated)

Commits

Updates certifi to 2026.7.22

Commits

Updates cffi to 2.1.1

Release notes

Sourced from cffi's releases.

v2.1.1

What's Changed

  • Minimize internal Python API usage for interpreter and thread state sampling where possible. Avoids breaking ABI change in Python >= 3.15.0b4 (python-cffi/cffi#269).

Full Changelog: python-cffi/cffi@v2.1.0...v2.1.1

Commits
  • fd33e77 New release 2.1.1
  • 56a7876 Use PyGILState_Ensure to avoid accessing CPython internals (#269) (#270)
  • d9f6f70 New release 2.1.0
  • 02a7b0e Misc pre-2.1 release/packaging cleanup (#253)
  • 1362e5d Move cffi-gen-src release note to 2.1.0 notes
  • a797055 Make error message when embedding version test fails more friendly
  • f1f40a8 Update changelog
  • dc62c93 Delete missed cp39 Windows builds
  • a341180 Update version numbers to prepare for v2.1 release
  • 9f04d85 Mark test using inet_ntoa as thread-unsafe
  • Additional commits viewable in compare view

Updates croniter to 6.2.4

Release notes

Sourced from croniter's releases.

6.2.4

croniter 6.2.4

Bugfixes

  • Fix expand_from_start_time day-of-week low bound so Sunday wraps correctly for stepped day-of-week ranges (isoweekday() % 7 instead of weekday() + 1). (#239, thanks @​alhudz)

Packaging

  • Bump pinned GitHub Actions via dependabot. (#238, #240)

Install: pip install croniter==6.2.4 · PyPI

Changelog

Sourced from croniter's changelog.

6.2.4 (2026-07-10)

Bugfixes

- Fix ``expand_from_start_time`` day-of-week low bound so Sunday wraps correctly for stepped day-of-week ranges (``isoweekday() % 7`` instead of ``weekday() + 1``). [44e3090, [#239](https://github.com/pallets-eco/croniter/issues/239), @alhudz]

Packaging

  • Bump pinned GitHub Actions via dependabot. [fd13d2e, #240; 5cd2e46, #238]

6.2.3 (2026-07-02)

Features and Improvements

- Fix quadratic expansion of comma-separated range lists for a large speed-up on expressions with many ranges. [1d79fc6, [#231](https://github.com/pallets-eco/croniter/issues/231), @alhudz]

Bugfixes

- Reject a zero step (e.g. ``5-5/0``) in equal and reversed cron ranges instead of silently accepting it. [ab27767, [#232](https://github.com/pallets-eco/croniter/issues/232), @alhudz]
- Fix ``expand_from_start_time`` month low-bound off-by-one so stepped month ranges start on the correct month. [f329964, [#235](https://github.com/pallets-eco/croniter/issues/235), @alhudz]

Packaging

  • Fix zizmor-reported security findings in GitHub Actions workflows. [ed19f94, #230]
  • Bump pinned build and CI dependencies via dependabot.
  • Upgrade locked development and build dependencies (uv lock --upgrade).

6.2.2 (2026-03-15)

Packaging

- Switch build backend from ``flit_core`` to ``hatchling`` with pinned dependencies. [4cce160]
- Add PEP 639 license expression (``license = "MIT"``) to project metadata. [4cce160]
- Pin all GitHub Actions to SHA hashes across CI workflows. [4cce160]
- Add dependabot for automated dependency updates. [4cce160]
- Add zizmor workflow for CI security scanning. [4cce160]

6.2.1 (2026-03-15)

Bugfixes

- Fix ``get_prev`` skipping Feb 29 on leap years for day-of-month expressions. [441a0b5, [#203](https://github.com/pallets-eco/croniter/issues/203), @Souls-R]

</tr></table> 
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>

<ul>
<li><a href="https://github.com/pallets-eco/croniter/commit/58534997eb4634344f00d407fb199d4d1bd057e7"><code>5853499</code></a> Prepare for release 6.2.4 (<a href="https://redirect.github.com/pallets-eco/croniter/issues/241">#241</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/fd13d2ec447efd854806638cb5f71a2a3a90a0b5"><code>fd13d2e</code></a> Bump the github-actions group with 2 updates (<a href="https://redirect.github.com/pallets-eco/croniter/issues/240">#240</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/44e3090ae47ccf72e4027ed6fabf6a31eca42f85"><code>44e3090</code></a> wrap sunday in expand_from_start_time day-of-week low bound (<a href="https://redirect.github.com/pallets-eco/croniter/issues/239">#239</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/5cd2e4611e8ebea446a9d0edef3f9d8e1f30c0e3"><code>5cd2e46</code></a> Bump the github-actions group with 2 updates (<a href="https://redirect.github.com/pallets-eco/croniter/issues/238">#238</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/f1eeddd7b9057b66406d162d04879258b29601d5"><code>f1eeddd</code></a> Prepare for 6.2.4 development (<a href="https://redirect.github.com/pallets-eco/croniter/issues/237">#237</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/22b59e05f5ca485c45596b2a9b580fddffbf753f"><code>22b59e0</code></a> Prepare for release 6.2.3 (<a href="https://redirect.github.com/pallets-eco/croniter/issues/236">#236</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/ab277671adc8e446e8dc7f1e939eabf024b6199e"><code>ab27767</code></a> reject zero step in equal and reversed cron ranges (<a href="https://redirect.github.com/pallets-eco/croniter/issues/232">#232</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/f329964223eeb29e7788b1a9d615b525148fec96"><code>f329964</code></a> fix expand_from_start_time month low bound off-by-one (<a href="https://redirect.github.com/pallets-eco/croniter/issues/235">#235</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/9810279c20030954e2f1ed2cf5f1d34b98c6b07f"><code>9810279</code></a> Bump the github-actions group with 2 updates (<a href="https://redirect.github.com/pallets-eco/croniter/issues/233">#233</a>)</li>
<li><a href="https://github.com/pallets-eco/croniter/commit/d051aaf6342fbe9c559b9fcd99e6fb6f3bb63cb7"><code>d051aaf</code></a> Bump hatchling from 1.29.0 to 1.30.1 in the pip-dependencies group (<a href="https://redirect.github.com/pallets-eco/croniter/issues/234">#234</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/pallets-eco/croniter/compare/6.2.2...6.2.4">compare view</a></li>
</ul>
</details>

&lt;br /&gt;</code></pre>

Updates `cryptography` to 50.0.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst">cryptography's changelog</a>.</em></p>
<blockquote>
<p>50.0.0 - 2026-07-31</p>
<pre><code>
* **SECURITY ISSUE**:
  :func:`~cryptography.hazmat.primitives.serialization.pkcs7.pkcs7_decrypt_der`
  and its PEM and S/MIME variants no longer expose distinguishable errors or
  timing when unwrapping a ``RecipientInfo``'s ``encryptedKey``, which could
  act as a Bleichenbacher oracle for callers that decrypt untrusted messages.
  A random key is now substituted on failure, as described in :rfc:`3218`.
  Credit to **@X1AOxiang** for reporting the issue. **CVE-2026-69247**
* Deprecated Diffie-Hellman key exchange over finite fields (FFDH).
  Everything FFDH is deprecated, including the types in
  ``cryptography.hazmat.primitives.asymmetric.dh`` and loading FFDH keys or
  parameters with the key loading APIs. Users should migrate to a more
  modern key exchange algorithm.
* Added ``xof()`` class methods to
  :class:`~cryptography.hazmat.primitives.hashes.SHAKE128` and
  :class:`~cryptography.hazmat.primitives.hashes.SHAKE256` for constructing
  algorithm instances configured for use with
  :class:`~cryptography.hazmat.primitives.hashes.XOFHash`.
* The :mod:`X.509 verification &lt;cryptography.x509.verification&gt;` APIs are now
  considered stable and are subject to our API stability policy.
* Added the :doc:`/cobblestone` recipe, an implementation of the
  Cobblestone-128 and Cobblestone-256 instantiations of the `C2SP
  chunked-encryption specification
  &lt;https://c2sp.org/chunked-encryption&gt;`_ for streaming authenticated
  encryption of large messages.
* Parsing a Signed Certificate Timestamp list now rejects encodings that
  carry trailing bytes after the list or after an individual SCT, instead of
  silently ignoring them.
* Added support for using :class:`~cryptography.x509.Name` as a field type in
  the :doc:`/hazmat/asn1/index` module.
* Loading a public key or an EC private key now rejects DER where the
  ``subjectPublicKey`` (or EC ``publicKey``) ``BIT STRING`` declares a non-zero
  number of unused bits, instead of silently ignoring it.
* Parsing a CRL entry's ``InvalidityDate`` extension now rejects a
  ``GeneralizedTime`` that carries fractional seconds or another non-DER form,
  matching the strict encoding already required for every other X.509 time
  field.
* :func:`~cryptography.x509.ocsp.load_der_ocsp_request` and
  :func:`~cryptography.x509.ocsp.load_der_ocsp_response` now reject a request
  or response whose ``version`` field is not ``v1``, the only version defined
  by RFC 6960, matching the version validation already performed when loading
  certificates, CSRs and CRLs.
* :class:`~cryptography.hazmat.primitives.hashes.XOFHash` is now supported
  when building against AWS-LC.
* HMAC (and therefore PBKDF2-HMAC) with SHA-3 hashes is now supported when
  building against AWS-LC.
* Diffie-Hellman (:doc:`/hazmat/primitives/asymmetric/dh`) is now supported
  when building against AWS-LC.
&lt;/tr&gt;&lt;/table&gt; 
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pyca/cryptography/commit/dcb7050b807b00392fa9fe2eac7cb362fcf355cc"><code>dcb7050</code></a> Prepare for 50.0.0 release (<a href="https://redirect.github.com/pyca/cryptography/issues/15372">#15372</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/53fccd93413a8d7f07d6d8999681f27b75cffa3f"><code>53fccd9</code></a> Don't leak how PKCS#7 encryptedKey decryption failed (<a href="https://redirect.github.com/pyca/cryptography/issues/15369">#15369</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/d472f978470fbefa521b86d98b2ecccbbb4d1dd8"><code>d472f97</code></a> Add <code>from __future__ import annotations</code> to all src/ Python files (<a href="https://redirect.github.com/pyca/cryptography/issues/15371">#15371</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/908773d53829fb1466c6db364b31321c3cd8eb9a"><code>908773d</code></a> Bump downstream dependencies in CI (<a href="https://redirect.github.com/pyca/cryptography/issues/15368">#15368</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/2cc07cc948948211899bcb0cddd1fddf86e95812"><code>2cc07cc</code></a> Bump BoringSSL, OpenSSL, AWS-LC in CI (<a href="https://redirect.github.com/pyca/cryptography/issues/15367">#15367</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/c94ede9f040fa44942f7139772603419000acf66"><code>c94ede9</code></a> chore(deps): bump ruff from 0.16.0 to 0.16.1 (<a href="https://redirect.github.com/pyca/cryptography/issues/15366">#15366</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/67a8308dc9ea4cce6056e0f1438f903c208c3f35"><code>67a8308</code></a> chore(deps): bump virtualenv from 21.7.0 to 21.7.1 (<a href="https://redirect.github.com/pyca/cryptography/issues/15365">#15365</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/95018ffcdbbc510fd92fc872e3a3e80aa6e58596"><code>95018ff</code></a> Release the GIL in one-shot AEAD encrypt/decrypt (<a href="https://redirect.github.com/pyca/cryptography/issues/15361">#15361</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/6954733eaf55a0074abf88f06f7242dfca3a5d02"><code>6954733</code></a> Release the GIL during DH and DSA parameter generation (<a href="https://redirect.github.com/pyca/cryptography/issues/15364">#15364</a>)</li>
<li><a href="https://github.com/pyca/cryptography/commit/6893b94c33e948f6240082461424cfb5da2dacc6"><code>6893b94</code></a> Import _serialization instead of serialization in x509/extensions (<a href="https://redirect.github.com/pyca/cryptography/issues/15363">#15363</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/pyca/cryptography/compare/46.0.7...50.0.0">compare view</a></li>
</ul>
</details>
<br />

Updates `jaraco-functools` to 4.6.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/jaraco/jaraco.functools/blob/main/NEWS.rst">jaraco-functools's changelog</a>.</em></p>
<blockquote>
<h1>v4.6.0</h1>
<h2>Features</h2>
<ul>
<li>Add <code>signed</code> wrapper to render a value with an explicit sign.</li>
</ul>
<h1>v4.5.0</h1>
<h2>Features</h2>
<ul>
<li><code>bypass_when</code> and <code>bypass_unless</code> now accept callable checks and evaluate
them on each invocation instead of binding only at decoration time. (<a href="https://redirect.github.com/jaraco/jaraco.functools/issues/36">#36</a>)</li>
</ul>
<h1>v4.4.0</h1>
<h2>Features</h2>
<ul>
<li>Add noop.</li>
</ul>
<h1>v4.3.0</h1>
<h2>Features</h2>
<ul>
<li>Add none_as function.</li>
</ul>
<h1>v4.2.1</h1>
<p>No significant changes.</p>
<h1>v4.2.0</h1>
<h2>Features</h2>
<ul>
<li>Add 'passthrough' function.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/f7f4f3bcac8f70e01064dee9a8bde6cc8f997a17"><code>f7f4f3b</code></a> Finalize</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/1b615071613da21818c3f20f5696c1ec6e1eeb3d"><code>1b61507</code></a> Merge pull request <a href="https://redirect.github.com/jaraco/jaraco.functools/issues/38">#38</a> from jaraco/feature/signed</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/ec615a584e5938420245a58616d6db8dd9c5f2ae"><code>ec615a5</code></a> Add news fragment.</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/016937453ab0e4342c45c9872c07c8d2fa98d97e"><code>0169374</code></a> Add signed, a wrapper to render a value's formatter with an explicit sign</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/0e89d963ab0a2d6d0755df2424e5e3d5b983cf98"><code>0e89d96</code></a> Finalize</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/4df0abd88dc7c36897b4f40abebda9ae7b24d33e"><code>4df0abd</code></a> Merge pull request <a href="https://redirect.github.com/jaraco/jaraco.functools/issues/36">#36</a> from jaraco/copilot/enhance-bypass-decorators-callables</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/e3ad23e72c049950d79d4c1c702a9b7e286d6983"><code>e3ad23e</code></a> 👹 Feed the hobgoblins (delint).</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/9ed118eb092ba639e925578576192d0da823d93f"><code>9ed118e</code></a> Merge branch 'main' into copilot/enhance-bypass-decorators-callables</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/d3cdfdf173d8f073d3c51f7d452e3860d783e283"><code>d3cdfdf</code></a> 👹 Feed the hobgoblins (delint).</li>
<li><a href="https://github.com/jaraco/jaraco.functools/commit/dfc27da53d5b17d1d3b9b04459933f9054a1e3a2"><code>dfc27da</code></a> Merge <a href="https://github.com/jaraco/skeleton">https://github.com/jaraco/skeleton</a></li>
<li>Additional commits viewable in <a href="https://github.com/jaraco/jaraco.functools/compare/v4.4.0...v4.6.0">compare view</a></li>
</ul>
</details>
<br />

Updates `jaraco-context` to 6.1.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/jaraco/jaraco.context/blob/main/NEWS.rst">jaraco-context's changelog</a>.</em></p>
<blockquote>
<h1>v6.1.2</h1>
<p>No significant changes.</p>
<h1>v6.1.1</h1>
<p>No significant changes.</p>
<h1>v6.1.0</h1>
<h2>Features</h2>
<ul>
<li>In tarfile.context, ensure that the default filter honors the data filter to avoid path traversal vulnerabilities.</li>
</ul>
<h1>v6.0.2</h1>
<p>No significant changes.</p>
<h1>v6.0.1</h1>
<h2>Bugfixes</h2>
<ul>
<li>Removed type declarations as suggested by Gemini. (<a href="https://redirect.github.com/jaraco/jaraco.context/issues/13">#13</a>)</li>
</ul>
<h1>v6.0.0</h1>
<h2>Bugfixes</h2>
<ul>
<li>Fixed bug in repo_context where standard output from git would not be hidden (because git emits standard output on the stderr stream).</li>
</ul>
<h2>Deprecations and Removals</h2>
<ul>
<li>Removed deprecated 'tarball_context', 'infer_compression', and 'null' contexts.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/jaraco/jaraco.context/commit/098f39c911d4504b2c718f2ff483ae24f1c4d378"><code>098f39c</code></a> Finalize</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/926a20e42307a2b5d87b058f2df42345fba61ad4"><code>926a20e</code></a> Fix condition for skipping safety test on Python 3.12 (<a href="https://redirect.github.com/jaraco/jaraco.context/issues/20">#20</a>)</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/19f1cbbcf4811fec84c2fee47e51c1a823b7d368"><code>19f1cbb</code></a> Strict type checking and re-enable mypy (<a href="https://redirect.github.com/jaraco/jaraco.context/issues/16">#16</a>)</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/256995fa4d2bcaf5513d7d14204045de94b4957d"><code>256995f</code></a> Suppress coverage errors.</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/0190667b24bd7b7f5f199ec36dc6e974fa31aab2"><code>0190667</code></a> Suppress type errors in test_safety.</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/bc0dc8a641a0ef9539bd7b193c961f8de05344e0"><code>bc0dc8a</code></a> Suppress type errors with new property.</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/8eee4d0bbf99ee75163865b150e638378e5a0b46"><code>8eee4d0</code></a> Modernize with ruff</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/825171649ef9d312b6f9740d235d206c0e927c3e"><code>8251716</code></a> Merge branch 'main' into Strict-type-checking-and-re-enable-mypy</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/7df1443e0d81d0f7a781231ab05e00fc4173672e"><code>7df1443</code></a> Restore expression algebra.</li>
<li><a href="https://github.com/jaraco/jaraco.context/commit/616e2d6153eea558d0acf971adefc4d2c9dd6fc9"><code>616e2d6</code></a> Merge <a href="https://github.com/jaraco/skeleton">https://github.com/jaraco/skeleton</a></li>
<li>Additional commits viewable in <a href="https://github.com/jaraco/jaraco.context/compare/v6.1.1...v6.1.2">compare view</a></li>
</ul>
</details>
<br />

Updates `jaraco-text` to 4.3.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/jaraco/jaraco.text/blob/main/NEWS.rst">jaraco-text's changelog</a>.</em></p>
<blockquote>
<h1>v4.3.0</h1>
<h2>Features</h2>
<ul>
<li>Added <code>strip_ansi</code> for removing ANSI escape sequences (e.g. SGR color codes) from a string.</li>
</ul>
<h1>v4.2.0</h1>
<h2>Features</h2>
<ul>
<li>Replaced <code>autocommand</code> usage with <code>Typer</code> -- by :user:<code>Avasam</code> (<a href="https://redirect.github.com/jaraco/jaraco.text/issues/25">#25</a>)</li>
</ul>
<h2>Bugfixes</h2>
<ul>
<li>Fixed <code>join_continuation</code>'s parameter type annotation -- by :user:<code>Avasam</code> (<a href="https://redirect.github.com/jaraco/jaraco.text/issues/28">#28</a>)</li>
</ul>
<h1>v4.1.0</h1>
<h2>Features</h2>
<ul>
<li>Complete annotations and add <code>py.typed</code> marker -- by :user:<code>Avasam</code> (<a href="https://redirect.github.com/jaraco/jaraco.text/issues/17">#17</a>)</li>
<li>Add support for <code>start</code> and <code>end</code> in <code>jaraco.text.FoldedCase.index</code> -- by :user:<code>Avasam</code> (<a href="https://redirect.github.com/jaraco/jaraco.text/issues/17">#17</a>)</li>
<li>Support <code>None</code> <code>splitter</code> argument in <code>jaraco.text.FoldedCase.split</code> -- by :user:<code>Avasam</code> (<a href="https://redirect.github.com/jaraco/jaraco.text/issues/17">#17</a>)</li>
</ul>
<h1>v4.0.0</h1>
<h2>Deprecations and Removals</h2>
<ul>
<li>Made 'inflect' an optional dependency. The show-newlines script now will crash unless jaraco.text[inflect] is installed.</li>
</ul>
<h1>v3.14.0</h1>
<h2>Features</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/jaraco/jaraco.text/commit/8c5892111b3dac47030bcdc7a34dcef3ce7828ef"><code>8c58921</code></a> Finalize</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/981b230f6027eb03be8124e4b268225b3565a299"><code>981b230</code></a> Satisfy updated ruff and mypy.</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/263edcb940aab5c8a30a09cad16aa8dab240e8c3"><code>263edcb</code></a> Ruff fixes.</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/6ba69221bf7e54cf39f2101c1e6eb15366c70daf"><code>6ba6922</code></a> Add strip_ansi for removing ANSI escape sequences from a string.</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/1683d5ab470d6ed57475a546cdf399ffaf6b6e6b"><code>1683d5a</code></a> Merge <a href="https://github.com/jaraco/skeleton">https://github.com/jaraco/skeleton</a></li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/684a3157eae9988cdd8e95969efa9a79a70f69f6"><code>684a315</code></a> Bump badge for 2026.</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/606a7a5f999e6a43480015460be604a77f16ce68"><code>606a7a5</code></a><code>jaraco/skeleton#194</code></li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/07389c4c4609a49826ea9ed510419c2e32eccee9"><code>07389c4</code></a><code>jaraco/skeleton#193</code></li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/16fb289d38af0d510e39afcbbd43bace2d6d8dd9"><code>16fb289</code></a> Bump <code>pytest-checkdocs</code> to <code>&gt;= 2.14</code> to resolve deprecation warnings (jaraco/...</li>
<li><a href="https://github.com/jaraco/jaraco.text/commit/d9b029be3925b99d3b0d2ef529d79d0a1b9d2c52"><code>d9b029b</code></a> Don't install (nor run) mypy on PyPy (librt build failures) (jaraco/skeleton#...</li>
<li>Additional commits viewable in <a href="https://github.com/jaraco/jaraco.text/compare/v4.2.0...v4.3.0">compare view</a></li>
</ul>
</details>
<br />

Updates `lxml` to 6.1.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/lxml/lxml/blob/master/CHANGES.txt">lxml's changelog</a>.</em></p>
<blockquote>
<h1>6.1.2 (2026-08-18)</h1>
<ul>
<li>
<p>GH#526: Some build files were missing in the sdist.
Patch by Nicola Soranzo.</p>
</li>
<li>
<p>Some minor corrections for error handling cases.</p>
</li>
</ul>
<h2>Other changes</h2>
<ul>
<li>Built with Cython 3.2.9.</li>
</ul>
<h1>6.1.1 (2026-05-18)</h1>
<h2>Bugs fixed</h2>
<ul>
<li>
<p>The known link attributes in <code>lxml.html.defs.link_attrs</code> were missing <code>xlink:href</code>,
which can be used for URL bypass attacks in embedded SVG/MathML/etc. content.
<a href="https://github.com/fedora-python/lxml_html_clean/security/advisories/GHSA-4jhm-jv67-739f">https://github.com/fedora-python/lxml_html_clean/security/advisories/GHSA-4jhm-jv67-739f</a></p>
</li>
<li>
<p>The Linux wheels use a patched libxslt 1.1.43, fixing CVE-2025-7424 and CVE-2025-11731.</p>
</li>
<li>
<p>The Windows wheels use libxslt 1.1.45, fixing CVE-2025-7424 and CVE-2025-11731.</p>
</li>
</ul>
<h1>6.1.0 (2026-04-17)</h1>
<p>This release fixes a possible external entity injection (XXE) vulnerability in
<code>iterparse()</code> and the <code>ETCompatXMLParser</code>.</p>
<h2>Features added</h2>
<ul>
<li>
<p>GH#486: The HTML ARIA accessibility attributes were added to the set of safe attributes
in <code>lxml.html.defs</code>.  This allows <code>lxml_html_clean</code> to pass them through.
Patch by oomsveta.</p>
</li>
<li>
<p>The default chunk size for reading from file-likes in <code>iterparse()</code> is now configurable
with a new <code>chunk_size</code> argument.</p>
</li>
</ul>
<h2>Bugs fixed</h2>
<ul>
<li>LP#2146291: The <code>resolve_entities</code> option was still set to <code>True</code> for
<code>iterparse</code> and <code>ETCompatXMLParser</code>, allowing for external entity injection (XXE)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/lxml/lxml/commit/f2874e9008c83d2d26e0b7292772eb74d2b83ce3"><code>f2874e9</code></a> Update release date.</li>
<li><a href="https://github.com/lxml/lxml/commit/687a295a4c19288b95ec1b74c31a620acaabdf9d"><code>687a295</code></a> Build: Exclude Py3.8 from windows-arm builds.</li>
<li><a href="https://github.com/lxml/lxml/commit/acadc56553ff74e6ea296158e118b08ac6ec9f4b"><code>acadc56</code></a> Build: Remove outdated build target.</li>
<li><a href="https://github.com/lxml/lxml/commit/59f93eb420a988bc61e7c5b8f4d97869c0536be7"><code>59f93eb</code></a> Build: Split old-Linux and other-Py3.8 builds.</li>
<li><a href="https://github.com/lxml/lxml/commit/923df83ed6a40ca5aab267b1c3fe073ff13a00ab"><code>923df83</code></a> Build: Fix manylinux2014 build.</li>
<li><a href="https://github.com/lxml/lxml/commit/975cc83e4626117e36adb6d336ac9a6f6cc0ca42"><code>975cc83</code></a> Build: Fix Px3.8 build setup.</li>
<li><a href="https://github.com/lxml/lxml/commit/09e5d3e968f380d7a790c2b47f59f7937e00942e"><code>09e5d3e</code></a> Build: Fix cibuildwheel version.</li>
<li><a href="https://github.com/lxml/lxml/commit/998cf504a3b0da7f316861c5a552c5c16069d91f"><code>998cf50</code></a> Build: Build Py3.8 wheels only once, not in every build job.</li>
<li><a href="https://github.com/lxml/lxml/commit/55670370cd68117ff2b3b71e0f20a7f275d1baeb"><code>5567037</code></a> Build: Exclude Py3.15 from 32bit builds.</li>
<li><a href="https://github.com/lxml/lxml/commit/904db40b04ef590ae1ca8fc84be863fc0f8196dc"><code>904db40</code></a> Build: Update cibuildwheel to include Py3.15.</li>
<li>Additional commits viewable in <a href="https://github.com/lxml/lxml/compare/lxml-6.1.1...lxml-6.1.2">compare view</a></li>
</ul>
</details>
<br />

Updates `multidict` to 6.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aio-libs/multidict/releases">multidict's releases</a>.</em></p>
<blockquote>
<h2>6.7.1</h2>
<h2>Bug fixes</h2>
<ul>
<li>
<p>Fixed slow memory leak caused by identity by adding <code>Py_DECREF</code> to identity value before leaving <code>md_pop_one</code> on success
-- by :user:<code>Vizonex</code>.</p>
<p><em>Related issues and pull requests on GitHub:</em>
<a href="https://redirect.github.com/aio-libs/multidict/issues/1284">#1284</a>.</p>
</li>
</ul>
<hr />
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/aio-libs/multidict/blob/master/CHANGES.rst">multidict's changelog</a>.</em></p>
<blockquote>
<h1>6.7.1</h1>
<p><em>(2026-01-25)</em></p>
<h2>Bug fixes</h2>
<ul>
<li>
<p>Fixed slow memory leak caused by identity by adding <code>Py_DECREF</code> to identity value before leaving <code>md_pop_one</code> on success
-- by :user:<code>Vizonex</code>.</p>
<p><em>Related issues and pull requests on GitHub:</em>
:issue:<code>1284</code>.</p>
</li>
</ul>
<hr />
<h1>6.7.0</h1>
<p><em>(2025-10-05)</em></p>
<h2>Contributor-facing changes</h2>
<ul>
<li>
<p>Updated tests and added CI for CPython 3.14 -- by :user:<code>kumaraditya303</code>.</p>
<p><em>Related issues and pull requests on GitHub:</em>
:issue:<code>1235</code>.</p>
</li>
</ul>
<hr />
<h1>6.6.4</h1>
<p><em>(2025-08-11)</em></p>
<h2>Bug fixes</h2>
<ul>
<li>
<p>Fixed <code>MutliDict</code> &amp; <code>CIMultiDict</code> memory leak when deleting values or clearing them
-- by :user:<code>Vizonex</code></p>
<p><em>Related issues and pull requests on GitHub:</em></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/aio-libs/multidict/commit/39d3c322f6a9e824beee9b6f178e3166205f0f59"><code>39d3c32</code></a> Release 6.7.1 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1289">#1289</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/77bb95e83c226c3557015d055a1ce4a29889d49e"><code>77bb95e</code></a> Fix memory leak caused by identity when default value is inplace (<a href="https://redirect.github.com/aio-libs/multidict/issues/1284">#1284</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/87dd4a49a5e8d5b01a8d801cac0c92984726f411"><code>87dd4a4</code></a> Bump dependabot/fetch-metadata from 2.4.0 to 2.5.0 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1287">#1287</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/6c764124a79da8f700faa1e3638311c58828947e"><code>6c76412</code></a> Bump actions/cache from 4 to 5 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1275">#1275</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/b91a033a29f360e76a8a24b92d50120d9cd08065"><code>b91a033</code></a> Bump actions/upload-artifact from 4 to 6 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1277">#1277</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/84bf82c0e2ec68919e7f3b7c5c7388a82f4737ee"><code>84bf82c</code></a> Bump psutil from 7.1.3 to 7.2.1 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1279">#1279</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/3f7b3cec6a5c23a100d972a667e7f67b84809bb3"><code>3f7b3ce</code></a> Bump pypa/cibuildwheel from 3.3.0 to 3.3.1 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1280">#1280</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/bbae9027cc99e23fc1ab98d97ed0adcd644c32c8"><code>bbae902</code></a> Bump sigstore/gh-action-sigstore-python from 3.1.0 to 3.2.0 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1274">#1274</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/000b5b0d25b3fc672c4226615f52a7d0cd6c2c96"><code>000b5b0</code></a> Remove follow_untyped_imports for mypy-sphinx (<a href="https://redirect.github.com/aio-libs/multidict/issues/1286">#1286</a>)</li>
<li><a href="https://github.com/aio-libs/multidict/commit/3d2d63044c98c8ede9204e8a9685921763cc0d4e"><code>3d2d630</code></a> Bump actions/download-artifact from 6 to 7 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1276">#1276</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/aio-libs/multidict/compare/v6.6.0...v6.7.1">compare view</a></li>
</ul>
</details>
<br />

Updates `msgpack` to 1.2.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/msgpack/msgpack-python/releases">msgpack's releases</a>.</em></p>
<blockquote>
<h2>v1.2.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump pypa/cibuildwheel from 4.0.0 to 4.1.0 in the all-dependencies group by <a href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot] in <a href="https://redirect.github.com/msgpack/msgpack-python/pull/694">msgpack/msgpack-python#694</a></li>
<li>release v1.2.1 by <a href="https://github.com/methane"><code>@​methane</code></a> in <a href="https://redirect.github.com/msgpack/msgpack-python/pull/698">msgpack/msgpack-python#698</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/msgpack/msgpack-python/compare/v1.2.0...v1.2.1">https://github.com/msgpack/msgpack-python/compare/v1.2.0...v1.2.1</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/msgpack/msgpack-python/blob/main/CHANGELOG.md">msgpack's changelog</a>.</em></p>
<blockquote>
<h1>1.2.1</h1>
<p>Release Date: 2026-06-19</p>
<p>Fix a segfault when calling <code>Unpacker.unpack()</code> or <code>Unpacker.skip()</code> after an unpacking failure.
But note that reusing the same <code>Unpacker</code> instance after an unpacking failure is not supported.
Please create a new <code>Unpacker</code> instance instead. GHSA-6v7p-g79w-8964</p>
<h1>1.2.0</h1>
<p>Release Date: 2026-06-11</p>
<ul>
<li>Support free threaded Python. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/654">#654</a>, <a href="https://redirect.github.com/msgpack/msgpack-python/issues/686">#686</a></li>
<li>Dropped support for Python 3.9. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/656">#656</a></li>
<li>Fix missing error checks in C code. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/665">#665</a>, <a href="https://redirect.github.com/msgpack/msgpack-python/issues/666">#666</a>, <a href="https://redirect.github.com/msgpack/msgpack-python/issues/667">#667</a>, <a href="https://redirect.github.com/msgpack/msgpack-python/issues/672">#672</a></li>
<li>Fix <code>strict_map_key</code> option didn't work for <code>object_pairs_hook</code>. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/673">#673</a></li>
<li>Increase DEFAULT_RECURSE_LIMIT of Unpacker to 1024. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/676">#676</a></li>
<li>Fix memory leak when Unpacker returns error for invalid input. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/671">#671</a></li>
<li>Fix <code>Packer.pack_ext_type()</code> ignored <code>autoreset</code> option. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/663">#663</a></li>
<li>Fix <code>Timestamp.from_datetime()</code> returning wrong value for pre-epoch datetimes. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/662">#662</a></li>
<li>Fix use-after-free in <code>unpackb()</code> and <code>Unpacker.unpack()</code> for non-contiguous input. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/677">#677</a></li>
<li>Fix possible memory leak when calling <code>Unpacker.__init__()</code> several times. <a href="https://redirect.github.com/msgpack/msgpack-python/issues/687">#687</a></li>
</ul>
<h1>1.1.2</h1>
<p>Release Date: 2025-10-08</p>
<p>This release does not change source code. It updates only building
wheels:</p>
<ul>
<li>Update Cython to v3.1.4</li>
<li>Update cibuildwheel to v3.2.0</li>
<li>Drop Python 3.8</li>
<li>Add Python 3.14</li>
<li>Add windows-arm</li>
</ul>
<h1>1.1.1</h1>
<p>Release Date: 2025-06-13</p>
<ul>
<li>No change from 1.1.1rc1.</li>
</ul>
<h1>1.1.1rc1</h1>
<p>Release Date: 2025-06-06</p>
<ul>
<li>Update Cython to 3.1.1 and cibuildwheel to 2.23.3.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/msgpack/msgpack-python/commit/448d43f5dcca7b3a2b0810e161af0a6431d90071"><code>448d43f</code></a> release v1.2.1 (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/698">#698</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/2c56ddb5d0025ed481d962c0f5d62d19dec7476d"><code>2c56ddb</code></a> Merge commit from fork</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/0f4f350b6f3e80f24750422673424cce5d96e15d"><code>0f4f350</code></a> Bump pypa/cibuildwheel from 4.0.0 to 4.1.0 in the all-dependencies group (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/694">#694</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/11ed0a5110c1920b85b7d24d9414f480983e0f16"><code>11ed0a5</code></a> release v1.2.0 (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/692">#692</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/c410a388c58d55091736e510cad064977a12cb8b"><code>c410a38</code></a> Bump pypa/cibuildwheel from 3.4.1 to 4.0.0 (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/691">#691</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/97ba6ca0d29c1e8a5b30112f13f37a4d6b3c4492"><code>97ba6ca</code></a> skip ci: remove unneeded CIBW_SKIP option</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/cdde1b0d6336caff4e82310c3c7d2b4c73f22d59"><code>cdde1b0</code></a> Wheels CI hangs for MacOS Intel (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/689">#689</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/5eb57e15455f5dd25001e97a7ef1170911dee104"><code>5eb57e1</code></a> release v1.2.0rc1 (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/681">#681</a>)</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/77395c19a50061238306df5ea10e67c5312ceff0"><code>77395c1</code></a> Harden <code>Unpacker.__init__</code> re-entry cleanup to prevent buffer/context leaks (...</li>
<li><a href="https://github.com/msgpack/msgpack-python/commit/7df7136e20933fd3a498bd58bff7975a24790516"><code>7df7136</code></a> Guard <code>Packer</code> buffer protocol hooks with Cython critical sections (<a href="https://redirect.github.com/msgpack/msgpack-python/issues/686">#686</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/msgpack/msgpack-python/compare/v1.1.2...v1.2.1">compare view</a></li>
</ul>
</details>
<br />

Updates `packaging` from 24.0 to 26.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/pypa/packaging/releases">packaging's releases</a>.</em></p>
<blockquote>
<h2>26.3</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<h3>Features</h3>
<ul>
<li>Add a public <code>VersionRange</code> API and <code>SpecifierSet.to_range()</code>, representing the versions a specifier set accepts as an interval set that supports intersection, union, difference, complement, set relations, membership tests, and filtering. <code>VersionRange.to_specifier_set()</code> converts a range back to a <code>SpecifierSet</code> where a PEP 440 form exists. (<a href="https://redirect.github.com/pypa/packaging/pull/1267">#1267</a>, <a href="https://redirect.github.com/pypa/packaging/pull/1270">#1270</a>, <a href="https://redirect.github.com/pypa/packaging/pull/1298">#1298</a>)</li>
<li>PEP 808: accept <code>Metadata-Version: 2.6</code>. (<a href="https://redirect.github.com/pypa/packaging/pull/1194">#1194</a>)</li>
<li>Add a <code>limit</code> argument to <code>parse_tag()</code> for compressed tag sets. (<a href="https://redirect.github.com/pypa/packaging/issues/1220">#1220</a>)</li>
<li>Add a <code>prefer_sdist_predicate</code> argument to <code>Pylock.select()</code> to prefer source distributions over wheels for selected packages. (<a href="https://redirect.github.com/pypa/packaging/pull/1334">#1334</a>)</li>
<li>Add <code>pure_python_tags()</code> to generate the pure-Python tags for a Python version without touching the running platform. (<a href="https://redirect.github.com/pypa/packaging/pull/1346">#1346</a>)</li>
<li>Add <code>SpecifierSet.is_subset()</code>, <code>SpecifierSet.is_superset()</code>, and <code>SpecifierSet.is_disjoint()</code>, which compare the versions two specifier sets accept. (<a href="https://redirect.github.com/pypa/packaging/pull/1313">#1313</a>)</li>
</ul>
<h3>Behavior adaptations</h3>
<ul>
<li>Drop support for Python 3.8; packaging now requires Python 3.9 or later. (<a href="https://redirect.github.com/pypa/packaging/pull/1157">#1157</a>)</li>
<li>Prefer native <code>linux_*</code> platform tags over <code>manylinux</code> and <code>musllinux</code> tags on Linux. (<a href="https://redirect.github.com/pypa/packaging/issues/160">#160</a>)</li>
</ul>
<h3>Fixes for versions and specifiers</h3>
<ul>
<li>Raise <code>InvalidVersion</code> instead of <code>TypeError</code> when <code>Version</code> is given a non-string. (<a href="https://redirect.github.com/pypa/packaging/pull/1319">#1319</a>)</li>
<li>Raise <code>InvalidVersion</code> for non-string pre-release letters passed to <code>Version.from_parts</code>. (<a href="https://redirect.github.com/pypa/packaging/pull/1241">#1241</a>)</li>
<li>Fix an <code>AttributeError</code> when hashing internally trimmed versions. (<a href="https://redirect.github.com/pypa/packaging/pull/1242">#1242</a>)</li>
<li>Fix <code>SpecifierSet.is_unsatisfiable</code> for post-release boundary intersections. (<a href="https://redirect.github.com/pypa/packaging/pull/1257">#1257</a>)</li>
</ul>
<h3>Fixes for requirements and markers</h3>
<ul>
<li>Make <code>Requirement.__hash__</code> consistent with <code>__eq__</code> for trailing-zero-equivalent specifiers (e.g. <code>foo==1.0.0</code> and <code>foo==1.0.0.0</code>), so equal requirements hash equal and deduplicate in sets and dicts. (<a href="https://redirect.github.com/pypa/packaging/pull/1232">#1232</a>)</li>
<li>Normalize requested extra names before comparing or hashing requirements. (<a href="https://redirect.github.com/pypa/packaging/issues/644">#644</a>)</li>
<li>Preserve a <code>Requirement</code>'s specifier <code>prereleases</code> override across a pickle round trip. (<a href="https://redirect.github.com/pypa/packaging/issues/1204">#1204</a>)</li>
<li>Raise <code>InvalidRequirement</code> instead of <code>InvalidSpecifier</code> when a requirement contains an invalid specifier. (<a href="https://redirect.github.com/pypa/packaging/pull/1332">#1332</a>)</li>
<li>Clarify the error for post-release prefix wildcards like <code>==1.0.post1.*</code>. (<a href="https://redirect.github.com/pypa/packaging/pull/1299">#1299</a>)</li>
<li>Preserve quoting semantics when serializing marker values, so round-tripped markers parse back to the same marker. (<a href="https://redirect.github.com/pypa/packaging/pull/1213">#1213</a>)</li>
<li>Keep the parentheses of a nested group when serializing markers. (<a href="https://redirect.github.com/pypa/packaging/pull/1316">#1316</a>)</li>
<li>Normalize <code>extra</code> and <code>dependency_groups</code> values in nested markers at parse time. (<a href="https://redirect.github.com/pypa/packaging/pull/1246">#1246</a>, <a href="https://redirect.github.com/pypa/packaging/pull/1310">#1310</a>)</li>
<li>Raise <code>UndefinedComparison</code> when a set-valued variable like <code>extras</code> is used outside the membership form. (<a href="https://redirect.github.com/pypa/packaging/pull/1265">#1265</a>)</li>
<li>Raise <code>UndefinedEnvironmentName</code> (a <code>KeyError</code> subclass) for missing environment keys during marker evaluation. (<a href="https://redirect.github.com/pypa/packaging/pull/1276">#1276</a>)</li>
<li>Wrap malformed string literal errors in <code>InvalidMarker</code> / <code>InvalidRequirement</code> instead of leaking a low-level error. (<a href="https://redirect.github.com/pypa/packaging/pull/1249">#1249</a>)</li>
<li>Reject requirements and markers with a trailing line break. (<a href="https://redirect.github.com/pypa/packaging/pull/1345">#1345</a>)</li>
</ul>
<h3>Fixes for metadata and licenses</h3>
<ul>
<li>Collect all <code>from_email</code> validation errors into one <code>ExceptionGroup</code> instead of raising the first. (<a href="https://redirect.github.com/pypa/packaging/pull/1268">#1268</a>)</li>
<li>Accept the UTF-8 charset case-insensitively in email payloads. (<a href="https://redirect.github.com/pypa/packaging/pull/1330">#1330</a>)</li>
<li>Reject malformed <code>Description-Content-Type</code> values. (<a href="https://redirect.github.com/pypa/packaging/pull/1329">#1329</a>)</li>
<li>Don't rewrite user values that contain <code>{field}</code> placeholders in error messages. (<a href="https://redirect.github.com/pypa/packaging/pull/1327">#1327</a>)</li>
<li>Route multipart email payloads to <code>unparsed</code> instead of asserting. (<a href="https://redirect.github.com/pypa/packaging/pull/1247">#1247</a>)</li>
<li>Make <code>InvalidMetadata</code> and <code>CyclicDependencyGroup</code> picklable. (<a href="https://redirect.github.com/pypa/packaging/pull/1328">#1328</a>)</li>
<li>Fold every line boundary <code>str.splitlines</code> recognizes when writing a header with <code>RFC822Message</code>. (<a href="https://redirect.github.com/pypa/packaging/pull/1356">#1356</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pypa/packaging/blob/main/CHANGELOG.rst">packaging's changelog</a>.</em></p>
<blockquote>
<p>26.3 - 2026-08-03</p>
<pre><code>
Features:
<ul>
<li>Add a public :class:<code>~packaging.ranges.VersionRange</code> API and<br />
:meth:<code>SpecifierSet.to_range() &amp;lt;packaging.specifiers.SpecifierSet.to_range&amp;gt;</code>,<br />
representing the versions a specifier set accepts as an interval set that<br />
supports intersection, union, difference, complement, set relations,<br />
membership tests, and filtering.<br />
:meth:<code>~packaging.ranges.VersionRange.to_specifier_set</code> converts a range back<br />
to a :class:<code>~packaging.specifiers.SpecifierSet</code> where a PEP 440 form exists.<br />
(:pull:<code>1267</code>, :pull:<code>1270</code>, :pull:<code>1298</code>)</li>
<li>PEP 808: accept <code>Metadata-Version: 2.6</code>. (:pull:<code>1194</code>)</li>
<li>Add a <code>limit</code> argument to <code>parse_tag()</code> for compressed tag sets.<br />
(:issue:<code>1220</code>)</li>
<li>Add a <code>prefer_sdist_predicate</code> argument to <code>Pylock.select()</code> to prefer<br />
source distributions over wheels for selected packages. (:pull:<code>1334</code>)</li>
<li>Add :func:<code>~packaging.tags.pure_python_tags</code> to generate the pure-Python<br />
tags for a Python version without touching the running platform.<br />
(:pull:<code>1346</code>)</li>
<li>Add :meth:<code>SpecifierSet.is_subset() &amp;lt;packaging.specifiers.SpecifierSet.is_subset&amp;gt;</code>, :meth:<code>~packaging.specifiers.SpecifierSet.is_superset</code>,<br />
and :meth:<code>~packaging.specifiers.SpecifierSet.is_disjoint</code>, which compare the<br />
versions two specifier sets accept. (:pull:<code>1313</code>)</li>
</ul>
<p>Behavior adaptations:</p>
<ul>
<li>Drop support for Python 3.8; packaging now requires Python 3.9 or later.<br />
(:pull:<code>1157</code>)</li>
<li>Prefer native <code>linux_*</code> platform tags over <code>manylinux</code> and <code>musllinux</code><br />
tags on Linux. (:issue:<code>160</code>)</li>
</ul>
<p>Fixes for versions and specifiers:</p>
<ul>
<li>Raise <code>InvalidVersion</code> instead of <code>TypeError</code> when <code>Version</code> is given a<br />
non-string. (:pull:<code>1319</code>)</li>
<li>Raise <code>InvalidVersion</code> for non-string pre-release letters passed to<br />
<code>Version.from_parts</code>. (:pull:<code>1241</code>)</li>
<li>Fix an <code>AttributeError</code> when hashing internally trimmed versions.<br />
(:pull:<code>1242</code>)</li>
<li>Fix <code>SpecifierSet.is_unsatisfiable</code> for post-release boundary<br />
intersections. (:pull:<code>1257</code>)</li>
</ul>
<p>Fixes for requirements and markers:</p>
<ul>
<li>Make <code>Requirement.__hash__</code> consistent with <code>__eq__</code> for<br />
trailing-zero-equivalent specifiers (e.g. <code>foo==1.0.0</code> and<br />
<code>foo==1.0.0.0</code>), so equal requirements hash equal and deduplicate in<br />
sets and dicts. (:pull:<code>1232</code>)<br />
&lt;/tr&gt;&lt;/table&gt;<br />
</code></pre></li>
</ul>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pypa/packaging/commit/929fd4b1410ac7ef61ef3f45b2f5d7e87711a9b5"><code>929fd4b</code></a> Bump for release</li>
<li><a href="https://github.com/pypa/packaging/commit/f300ebf0c155e1f7ea6d62fba11dba4bac3d1944"><code>f300ebf</code></a> chore(deps): bump the pre-commit group with 5 updates (<a href="https://redirect.github.com/pypa/packaging/issues/1357">#1357</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/f91d97566a966177ad7ea5a7c703b12a7273e3b1"><code>f91d975</code></a> ci(downstream): bump hatchling to 1.31.0 and fix its pytest rootdir (<a href="https://redirect.github.com/pypa/packaging/issues/1361">#1361</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/b1a7124fe3d40c3302c029e9eb01ac3fc3496a54"><code>b1a7124</code></a> chore(deps): bump the github-actions group with 7 updates (<a href="https://redirect.github.com/pypa/packaging/issues/1358">#1358</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/2d873eb6002021a8c007c933fbdab58b37a5079b"><code>2d873eb</code></a> fix(metadata): fold every line boundary when writing headers (<a href="https://redirect.github.com/pypa/packaging/issues/1356">#1356</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/413d006fadf5b9b14d78ad444201d8189bff8c64"><code>413d006</code></a> docs: changelog for 26.3 (<a href="https://redirect.github.com/pypa/packaging/issues/1343">#1343</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/4eb0753dba8fcaaac8eb75463374e448f0931558"><code>4eb0753</code></a> docs(metadata): explain selective field validation (<a href="https://redirect.github.com/pypa/packaging/issues/1342">#1342</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/77e9ed42b6db9c5c011a5148047a356ebe42692a"><code>77e9ed4</code></a> feat(tags): add pure Python tag generator (<a href="https://redirect.github.com/pypa/packaging/issues/1346">#1346</a>)</li>
<li><a href="https://github.com/pypa/packaging/commit/7cea5e88671ed14016e9ab3dd08eab064f596564"><code>7cea5e8</code></a> ci: drop 3.13t on Windows (3.13.14t may fail to build, run takes 9 minutes) (...</li>
<li><a href="https://github.com/pypa/packaging/commit/45a8b3402db5ff82158f2d0eabaf8447aa7a50bf"><code>45a8b34</code></a> docs: add missing versionadded/versionchanged directives (<a href="https://redirect.github.com/pypa/packaging/issues/1344">#1344</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/pypa/packaging/compare/24.0...26.3">compare view</a></li>
</ul>
</details>
<br />

Updates `psutil` to 7.2.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/giampaolo/psutil/blob/master/docs/changelog.rst">psutil's changelog</a>.</em></p>
<blockquote>
<p>7.2.2 — 2026-01-28
^^^^^^^^^^^^^^^^^^</p>
<p><strong>Performance</strong></p>
<ul>
<li>:gh:<code>2705</code>, [Linux], [macOS], [BSD]: :meth:<code>Process.wait</code> no longer uses a
busy loop. It now uses <code>pidfd_open()</code> + <code>poll()</code> on Linux (requires Linux
<blockquote>
<p>= 5.3 and Python &gt;= 3.9), and <code>kqueue()</code> on macOS and BSD.</p>
</blockquote>
</li>
</ul>
<p><strong>Bug fixes</strong></p>
<ul>
<li>:gh:<code>2701</code>, [macOS], :label:<code>build-fail</code>: fix compilation error on macOS &lt;
10.7. (patch by :user:<code>Sergey Fedorov &lt;barracuda156&gt;</code>)</li>
<li>:gh:<code>2707</code>, [macOS], :label:<code>memleak</code>: fix potential memory leaks in error
paths of :meth:<code>Process.memory_full_info</code> and :meth:<code>Process.threads</code>.</li>
<li>:gh:<code>2708</code>, [macOS]: :meth:<code>Process.cmdline</code> and :meth:<code>Process.environ</code> may
fail with <code>OSError: [Errno 0] Undefined error</code> (from
<code>sysctl(KERN_PROCARGS2)</code>). They now raise :exc:<code>AccessDenied</code> instead.</li>
</ul>
<p>7.2.1 — 2025-12-29
^^^^^^^^^^^^^^^^^^</p>
<p><strong>Bug fixes</strong></p>
<ul>
<li>:gh:<code>2699</code>, [FreeBSD], [NetBSD]: :func:<code>heap_info</code> does not detect small
allocations (&lt;= 1K). In order to fix that, we now flush internal jemalloc
cache before fetching the metrics.</li>
</ul>
<p>7.2.0 — 2025-12-23
^^^^^^^^^^^^^^^^^^</p>
<p><strong>New APIs</strong></p>
<ul>
<li>:gh:<code>1275</code>: new :func:<code>heap_info</code> and :func:<code>heap_trim</code> functions, providing
direct access to the platform's native C :term:<code>heap</code> allocator (glibc,
mimalloc, libmalloc). Useful to create tools to detect memory leaks.</li>
</ul>
<p><strong>Build and packaging</strong></p>
<ul>
<li>:gh:<code>2680</code>, :label:<code>breaking</code>: unit tests are no longer installed / part of
the distribution. They now live under <code>tests/</code> instead of <code>psutil/tests</code>,
so <code>import psutil.tests</code> no longer works (it was never documented to begin
with).</li>
<li>:gh:<code>2403</code>, [Linux]: publish wheels for Linux musl.</li>
</ul>
<p><strong>Bug fixes</strong></p>
<ul>
<li>:gh:<code>2684</code>, [FreeBSD], :label:<code>build-fail</code>: compilation fails on FreeBSD 14
due to missing include.</li>
<li>:gh:<code>2691</code>, [Windows], :label:<code>memleak</code>: fix memory leak in</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/giampaolo/psutil/commit/9eea97dd6f1d16ea33f5144c8925f1ce7a0688e1"><code>9eea97d</code></a> Pre-release</li>
<li><a href="https://github.com/giampaolo/psutil/commit/938ac647418f09e4e610b2c755741316713c5592"><code>938ac64</code></a> Rm sphinxcontrib.googleanalytics; override layout.html</li>
<li><a href="https://github.com/giampaolo/psutil/commit/9dcbb7e60e650f0ab0cb52154b0a12c70f6a1e4c"><code>9dcbb7e</code></a> Add sphinxcontrib-googleanalytics to requirements.txt</li>
<li><a href="https://github.com/giampaolo/psutil/commit/76eaf9ae0f2868569c14b46f4165310885a40a15"><code>76eaf9a</code></a> Try to add google analytics to doc</li>
<li><a href="https://github.com/giampaolo/psutil/commit/de1cafa56f54e97ca557993155e76dd98877e136"><code>de1cafa</code></a> Update doc mentioning Process.wait() internal details</li>
<li><a href="https://github.com/giampaolo/psutil/commit/bb30943b0336a16f28437ec549c15a8ad2830cca"><code>bb30943</code></a> Refact can_use_pidfd_open() and can_use_kqueue()</li>
<li><a href="https://github.com/giampaolo/psutil/commit/a571717d6520d436273c8cb34ca871db4bfa508a"><code>a571717</code></a> <a href="https://redirect.github.com/giampaolo/psutil/issues/2708">#2708</a>, macos / cmdline / environ; raise AD instead of OSError(0) (<a href="https://redirect.github.com/giampaolo/psutil/issues/2709">#2709</a>)</li>
<li><a href="https://github.com/giampaolo/psutil/commit/8b98c3effc20dcc4ed08c8f3d33e11ec0f5445b1"><code>...

_Description has been truncated_

… 42 updates

Updates the requirements on [aiohttp](https://github.com/aio-libs/aiohttp), [certifi](https://github.com/certifi/python-certifi), [cffi](https://github.com/python-cffi/cffi), [croniter](https://github.com/pallets-eco/croniter), [cryptography](https://github.com/pyca/cryptography), [jaraco-functools](https://github.com/jaraco/jaraco.functools), [jaraco-context](https://github.com/jaraco/jaraco.context), [jaraco-text](https://github.com/jaraco/jaraco.text), [lxml](https://github.com/lxml/lxml), [multidict](https://github.com/aio-libs/multidict), [msgpack](https://github.com/msgpack/msgpack-python), [packaging](https://github.com/pypa/packaging), [psutil](https://github.com/giampaolo/psutil), [pymssql](https://github.com/pymssql/pymssql), [pyopenssl](https://github.com/pyca/pyopenssl), [requests](https://github.com/psf/requests), [tornado](https://github.com/tornadoweb/tornado), [virtualenv](https://github.com/pypa/virtualenv), [filelock](https://github.com/tox-dev/py-filelock), [zipp](https://github.com/jaraco/zipp), [idna](https://github.com/kjd/idna), [more-itertools](https://github.com/more-itertools/more-itertools), [pycparser](https://github.com/eliben/pycparser), [docker](https://github.com/docker/docker-py), [pytest](https://github.com/pytest-dev/pytest), [build](https://github.com/pypa/build), [wheel](https://github.com/pypa/wheel), [pip](https://github.com/pypa/pip), [gitpython](https://github.com/gitpython-developers/GitPython), [boto3](https://github.com/boto/boto3), [kubernetes](https://github.com/kubernetes-client/python), [pynacl](https://github.com/pyca/pynacl), [sqlparse](https://github.com/andialbrecht/sqlparse), [vcert](https://github.com/Venafi/vcert-python), [xmldiff](https://github.com/Shoobx/xmldiff), [pylint](https://github.com/pylint-dev/pylint), m2crypto, [pygit2](https://github.com/libgit2/pygit2), mercurial, [ansible](https://github.com/ansible-community/ansible-build-data), [twilio](https://github.com/twilio/twilio-python) and [python-telegram-bot](https://github.com/python-telegram-bot/python-telegram-bot) to permit the latest version.

Updates `aiohttp` to 3.14.3
- [Changelog](https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst)
- [Commits](aio-libs/aiohttp@v3.14.2...v3.14.3)

Updates `certifi` to 2026.7.22
- [Commits](certifi/python-certifi@2026.05.20...2026.07.22)

Updates `cffi` to 2.1.1
- [Release notes](https://github.com/python-cffi/cffi/releases)
- [Commits](python-cffi/cffi@v2.0.0...v2.1.1)

Updates `croniter` to 6.2.4
- [Release notes](https://github.com/pallets-eco/croniter/releases)
- [Changelog](https://github.com/pallets-eco/croniter/blob/main/CHANGELOG.rst)
- [Commits](pallets-eco/croniter@6.2.2...6.2.4)

Updates `cryptography` to 50.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@46.0.7...50.0.0)

Updates `jaraco-functools` to 4.6.0
- [Release notes](https://github.com/jaraco/jaraco.functools/releases)
- [Changelog](https://github.com/jaraco/jaraco.functools/blob/main/NEWS.rst)
- [Commits](jaraco/jaraco.functools@v4.4.0...v4.6.0)

Updates `jaraco-context` to 6.1.2
- [Release notes](https://github.com/jaraco/jaraco.context/releases)
- [Changelog](https://github.com/jaraco/jaraco.context/blob/main/NEWS.rst)
- [Commits](jaraco/jaraco.context@v6.1.1...v6.1.2)

Updates `jaraco-text` to 4.3.0
- [Release notes](https://github.com/jaraco/jaraco.text/releases)
- [Changelog](https://github.com/jaraco/jaraco.text/blob/main/NEWS.rst)
- [Commits](jaraco/jaraco.text@v4.2.0...v4.3.0)

Updates `lxml` to 6.1.2
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](lxml/lxml@lxml-6.1.1...lxml-6.1.2)

Updates `multidict` to 6.7.1
- [Release notes](https://github.com/aio-libs/multidict/releases)
- [Changelog](https://github.com/aio-libs/multidict/blob/master/CHANGES.rst)
- [Commits](aio-libs/multidict@v6.6.0...v6.7.1)

Updates `msgpack` to 1.2.1
- [Release notes](https://github.com/msgpack/msgpack-python/releases)
- [Changelog](https://github.com/msgpack/msgpack-python/blob/main/CHANGELOG.md)
- [Commits](msgpack/msgpack-python@v1.1.2...v1.2.1)

Updates `packaging` from 24.0 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@24.0...26.3)

Updates `psutil` to 7.2.2
- [Changelog](https://github.com/giampaolo/psutil/blob/master/docs/changelog.rst)
- [Commits](giampaolo/psutil@v5.0.0...v7.2.2)

Updates `pymssql` from 2.3.11 to 2.3.13
- [Release notes](https://github.com/pymssql/pymssql/releases)
- [Changelog](https://github.com/pymssql/pymssql/blob/master/ChangeLog.rst)
- [Commits](pymssql/pymssql@v2.3.11...v2.3.13)

Updates `pyopenssl` to 26.4.0
- [Changelog](https://github.com/pyca/pyopenssl/blob/main/CHANGELOG.rst)
- [Commits](pyca/pyopenssl@26.0.0...26.4.0)

Updates `requests` to 2.34.2
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](psf/requests@v2.33.1...v2.34.2)

Updates `tornado` to 6.5.8
- [Changelog](https://github.com/tornadoweb/tornado/blob/master/docs/releases.rst)
- [Commits](tornadoweb/tornado@v6.5.5...v6.5.8)

Updates `virtualenv` to 21.7.4
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](pypa/virtualenv@21.4.2...21.7.4)

Updates `filelock` to 3.32.3
- [Release notes](https://github.com/tox-dev/py-filelock/releases)
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst)
- [Commits](tox-dev/filelock@3.29.1...3.32.3)

Updates `zipp` to 4.1.0
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](jaraco/zipp@v3.23.1...v4.1.0)

Updates `idna` to 3.19
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.md)
- [Commits](kjd/idna@v3.18...v3.19)

Updates `more-itertools` to 11.1.0
- [Release notes](https://github.com/more-itertools/more-itertools/releases)
- [Commits](more-itertools/more-itertools@v10.8.0...v11.1.0)

Updates `pycparser` to 3.0
- [Release notes](https://github.com/eliben/pycparser/releases)
- [Commits](eliben/pycparser@release_v2.23...release_v3.00)

Updates `docker` to 7.2.0
- [Release notes](https://github.com/docker/docker-py/releases)
- [Commits](docker/docker-py@7.1.0...7.2.0)

Updates `pytest` to 9.1.1
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest@8.4.2...9.1.1)

Updates `build` to 1.5.0
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](pypa/build@1.4.4...1.5.0)

Updates `wheel` to 0.48.0
- [Release notes](https://github.com/pypa/wheel/releases)
- [Changelog](https://github.com/pypa/wheel/blob/main/docs/news.rst)
- [Commits](pypa/wheel@0.47.0...0.48.0)

Updates `pip` from 26.0.1 to 26.2.1
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](pypa/pip@26.0.1...26.2.1)

Updates `packaging` from 24.0 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@24.0...26.3)

Updates `aiohttp` to 3.14.3
- [Changelog](https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst)
- [Commits](aio-libs/aiohttp@v3.14.2...v3.14.3)

Updates `cffi` to 2.1.1
- [Release notes](https://github.com/python-cffi/cffi/releases)
- [Commits](python-cffi/cffi@v2.0.0...v2.1.1)

Updates `cryptography` to 50.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@46.0.7...50.0.0)

Updates `gitpython` to 3.1.59
- [Release notes](https://github.com/gitpython-developers/GitPython/releases)
- [Changelog](https://github.com/gitpython-developers/GitPython/blob/main/CHANGES)
- [Commits](gitpython-developers/GitPython@3.1.50...3.1.59)

Updates `packaging` from 26.2 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@24.0...26.3)

Updates `virtualenv` to 21.7.4
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](pypa/virtualenv@21.4.2...21.7.4)

Updates `filelock` to 3.32.3
- [Release notes](https://github.com/tox-dev/py-filelock/releases)
- [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst)
- [Commits](tox-dev/filelock@3.29.1...3.32.3)

Updates `docker` to 7.2.0
- [Release notes](https://github.com/docker/docker-py/releases)
- [Commits](docker/docker-py@7.1.0...7.2.0)

Updates `boto3` to 1.43.75
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](boto/boto3@1.43.24...1.43.75)

Updates `kubernetes` to 36.0.3
- [Release notes](https://github.com/kubernetes-client/python/releases)
- [Changelog](https://github.com/kubernetes-client/python/blob/master/CHANGELOG.md)
- [Commits](kubernetes-client/python@v36.0.2...v36.0.3)

Updates `pynacl` to 1.6.2
- [Changelog](https://github.com/pyca/pynacl/blob/main/CHANGELOG.rst)
- [Commits](pyca/pynacl@1.5.0...1.6.2)

Updates `sqlparse` to 0.6.0
- [Changelog](https://github.com/andialbrecht/sqlparse/blob/master/CHANGELOG)
- [Commits](andialbrecht/sqlparse@0.5.5...0.6.0)

Updates `vcert` to 0.9.1
- [Release notes](https://github.com/Venafi/vcert-python/releases)
- [Commits](Venafi/vcert-python@v0.9.0...v0.9.1)

Updates `xmldiff` to 3.0
- [Release notes](https://github.com/Shoobx/xmldiff/releases)
- [Changelog](https://github.com/Shoobx/xmldiff/blob/master/CHANGES.rst)
- [Commits](Shoobx/xmldiff@2.7.0...3.0)

Updates `pylint` to 3.3.9
- [Release notes](https://github.com/pylint-dev/pylint/releases)
- [Commits](pylint-dev/pylint@v3.1.0...v3.3.9)

Updates `m2crypto` from 0.48.0 to 0.49.0

Updates `pygit2` to 1.20.0
- [Release notes](https://github.com/libgit2/pygit2/releases)
- [Changelog](https://github.com/libgit2/pygit2/blob/master/CHANGELOG.md)
- [Commits](libgit2/pygit2@v1.19.2...v1.20.0)

Updates `mercurial` to 7.2.4

Updates `packaging` from 26.2 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@24.0...26.3)

Updates `ansible` to 14.3.1
- [Changelog](https://github.com/ansible-community/ansible-build-data/blob/main/docs/release-process.md)
- [Commits](ansible-community/ansible-build-data@14.0.0...14.3.1)

Updates `twilio` to 9.11.0
- [Release notes](https://github.com/twilio/twilio-python/releases)
- [Changelog](https://github.com/twilio/twilio-python/blob/main/CHANGES.md)
- [Commits](twilio/twilio-python@9.10.9...9.11.0)

Updates `python-telegram-bot` to 22.8
- [Release notes](https://github.com/python-telegram-bot/python-telegram-bot/releases)
- [Commits](python-telegram-bot/python-telegram-bot@v22.7...v22.8)

Updates `cryptography` to 50.0.0
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@46.0.7...50.0.0)

Updates `pyopenssl` to 26.4.0
- [Changelog](https://github.com/pyca/pyopenssl/blob/main/CHANGELOG.rst)
- [Commits](pyca/pyopenssl@26.0.0...26.4.0)

---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.14.3
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: certifi
  dependency-version: 2026.7.22
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: cffi
  dependency-version: 2.1.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: croniter
  dependency-version: 6.2.4
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: cryptography
  dependency-version: 50.0.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: jaraco-functools
  dependency-version: 4.6.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: jaraco-context
  dependency-version: 6.1.2
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: jaraco-text
  dependency-version: 4.3.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: lxml
  dependency-version: 6.1.2
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: multidict
  dependency-version: 6.7.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: msgpack
  dependency-version: 1.2.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-pip-updates
- dependency-name: psutil
  dependency-version: 7.2.2
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pymssql
  dependency-version: 2.3.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-pip-updates
- dependency-name: pyopenssl
  dependency-version: 26.4.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: requests
  dependency-version: 2.34.2
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: tornado
  dependency-version: 6.5.8
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: virtualenv
  dependency-version: 21.7.4
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: filelock
  dependency-version: 3.32.3
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: zipp
  dependency-version: 4.1.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: idna
  dependency-version: '3.19'
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: more-itertools
  dependency-version: 11.1.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pycparser
  dependency-version: '3.0'
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: docker
  dependency-version: 7.2.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pytest
  dependency-version: 9.1.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: build
  dependency-version: 1.5.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: wheel
  dependency-version: 0.48.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pip
  dependency-version: 26.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-pip-updates
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-pip-updates
- dependency-name: aiohttp
  dependency-version: 3.14.3
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: cffi
  dependency-version: 2.1.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: cryptography
  dependency-version: 50.0.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: gitpython
  dependency-version: 3.1.59
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-pip-updates
- dependency-name: virtualenv
  dependency-version: 21.7.4
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: filelock
  dependency-version: 3.32.3
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: docker
  dependency-version: 7.2.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: boto3
  dependency-version: 1.43.75
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: kubernetes
  dependency-version: 36.0.3
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pynacl
  dependency-version: 1.6.2
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: sqlparse
  dependency-version: 0.6.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: vcert
  dependency-version: 0.9.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: xmldiff
  dependency-version: '3.0'
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pylint
  dependency-version: 3.3.9
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: m2crypto
  dependency-version: 0.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-pip-updates
- dependency-name: pygit2
  dependency-version: 1.20.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: mercurial
  dependency-version: 7.2.4
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-pip-updates
- dependency-name: ansible
  dependency-version: 14.3.1
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: twilio
  dependency-version: 9.11.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: python-telegram-bot
  dependency-version: '22.8'
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: cryptography
  dependency-version: 50.0.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
- dependency-name: pyopenssl
  dependency-version: 26.4.0
  dependency-type: direct:production
  dependency-group: all-pip-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the test:full Run the full test suite label Aug 22, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner August 22, 2026 21:17
@dependabot dependabot Bot added the test:full Run the full test suite label Aug 22, 2026
@dependabot
dependabot Bot deployed to workflow-restart August 22, 2026 21:17 Active
@salt-pr-bot
salt-pr-bot Bot deployed to workflow-restart August 22, 2026 21:18 Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:full Run the full test suite

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants