[pull] master from aio-libs:master#532
Merged
pull[bot] merged 4 commits intotj-python:masterfrom Apr 15, 2026
Merged
Conversation
Bumps [virtualenv](https://github.com/pypa/virtualenv) from 21.2.0 to 21.2.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pypa/virtualenv/releases">virtualenv's releases</a>.</em></p> <blockquote> <h2>21.2.4</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>🐛 fix(periodic-update): refuse unverified HTTPS to PyPI by default by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3122">pypa/virtualenv#3122</a></li> <li>🐛 fix(zipapp): enforce ROOT containment with Path.relative_to by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3121">pypa/virtualenv#3121</a></li> <li>🐛 fix(seed): validate distribution and version before pip download by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3120">pypa/virtualenv#3120</a></li> <li>🐛 fix(seed): verify sha256 of bundled wheels on load by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3119">pypa/virtualenv#3119</a></li> <li>🐛 fix(seed): validate wheel zip entries before extraction by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3118">pypa/virtualenv#3118</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pypa/virtualenv/compare/21.2.3...21.2.4">https://github.com/pypa/virtualenv/compare/21.2.3...21.2.4</a></p> <h2>21.2.3</h2> <!-- raw HTML omitted --> <p><strong>Full Changelog</strong>: <a href="https://github.com/pypa/virtualenv/compare/21.2.2...21.2.3">https://github.com/pypa/virtualenv/compare/21.2.2...21.2.3</a></p> <h2>21.2.2</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>bump python-discovery minimum to 1.2.2 by <a href="https://github.com/rahuldevikar"><code>@rahuldevikar</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3117">pypa/virtualenv#3117</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pypa/virtualenv/compare/21.2.1...21.2.2">https://github.com/pypa/virtualenv/compare/21.2.1...21.2.2</a></p> <h2>21.2.1</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>Upgrade embedded pip/setuptools/wheel by <a href="https://github.com/github-actions"><code>@github-actions</code></a>[bot] in <a href="https://redirect.github.com/pypa/virtualenv/pull/3093">pypa/virtualenv#3093</a></li> <li>Enhance upgrade workflow: age check, dedup, issue tracking by <a href="https://github.com/rahuldevikar"><code>@rahuldevikar</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3094">pypa/virtualenv#3094</a></li> <li>🐛 fix(create): use commonpath for correct path validation by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3097">pypa/virtualenv#3097</a></li> <li>🔒 ci(workflows): add zizmor security auditing by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3099">pypa/virtualenv#3099</a></li> <li>Add current and previous maintainers by <a href="https://github.com/rahuldevikar"><code>@rahuldevikar</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3101">pypa/virtualenv#3101</a></li> <li>🔧 fix(ci): restore git credentials for release and upgrade jobs by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3102">pypa/virtualenv#3102</a></li> <li>Fix broken Installation link in README by <a href="https://github.com/Bahtya"><code>@Bahtya</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3106">pypa/virtualenv#3106</a></li> <li>fix: use terminal width for help formatting instead of hardcoded 240 by <a href="https://github.com/Bahtya"><code>@Bahtya</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3110">pypa/virtualenv#3110</a></li> <li>🐛 fix(nushell): surface actionable hint in deactivate error output by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3112">pypa/virtualenv#3112</a></li> <li>👷 ci: fix setup-uv warnings and drop brew@3.9 by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3113">pypa/virtualenv#3113</a></li> <li>fix(ci): fix pre-release push and release note generation by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3114">pypa/virtualenv#3114</a></li> <li>fix(ci): check out repo in publish job for gh release notes by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/virtualenv/pull/3115">pypa/virtualenv#3115</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/github-actions"><code>@github-actions</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/pypa/virtualenv/pull/3093">pypa/virtualenv#3093</a></li> <li><a href="https://github.com/Bahtya"><code>@Bahtya</code></a> made their first contribution in <a href="https://redirect.github.com/pypa/virtualenv/pull/3106">pypa/virtualenv#3106</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/virtualenv/blob/main/docs/changelog.rst">virtualenv's changelog</a>.</em></p> <blockquote> <h1>Bugfixes - 21.2.4</h1> <ul> <li>Security hardening: validate each entry of a seed wheel archive before extracting it so a tampered wheel cannot escape the app-data image directory via an absolute path or <code>..</code> traversal. (:issue:<code>3118</code>)</li> <li>Security hardening: verify the SHA-256 of every bundled seed wheel when it is loaded so a corrupted or tampered file on disk fails loud instead of being handed to pip. The hash table is generated alongside <code>BUNDLE_SUPPORT</code> by <code>tasks/upgrade_wheels.py</code>. (:issue:<code>3119</code>)</li> <li>Security hardening: validate the distribution name and version specifier passed to <code>pip download</code> when acquiring a seed wheel so extras, pip flags, or shell metacharacters cannot be smuggled into the subprocess command line. (:issue:<code>3120</code>)</li> <li>Security hardening: replace the string-prefix containment check in <code>virtualenv.util.zipapp</code> with <code>Path.relative_to</code> so the zipapp extraction helpers refuse any path that does not resolve under the archive root. (:issue:<code>3121</code>)</li> <li>Security hardening: do not silently fall back to an unverified HTTPS context when the periodic update request to PyPI fails TLS verification. The returned metadata drives which wheel version virtualenv considers "up to date", so accepting an unverified response lets a network-level attacker suppress security updates. Set <code>VIRTUALENV_PERIODIC_UPDATE_INSECURE=1</code> to restore the previous behavior on hosts with broken trust stores. (:issue:<code>3122</code>)</li> </ul> <hr /> <p>v21.2.3 (2026-04-14)</p> <hr /> <p>No significant changes.</p> <hr /> <p>v21.2.2 (2026-04-13)</p> <hr /> <h1>Bugfixes - 21.2.2</h1> <ul> <li>Bump <code>python-discovery</code> minimum to <code>>=1.2.2</code> to include <code>normalize_isa</code> support - by :user:<code>rahuldevikar</code>. (:issue:<code>3117</code>)</li> </ul> <hr /> <p>v21.2.1 (2026-04-09)</p> <hr /> <h1>Bugfixes - 21.2.1</h1> <ul> <li> <p>Upgrade embedded wheels:</p> <ul> <li>setuptools to <code>82.0.1</code> from <code>82.0.0</code> (:issue:<code>3093</code>)</li> </ul> </li> <li> <p>Use terminal width for help formatting instead of hardcoded 240. (:issue:<code>3110</code>)</p> </li> </ul> <hr /> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/virtualenv/commit/15063c10b3afae1d3fa3234e99f956434051f7b5"><code>15063c1</code></a> release 21.2.4</li> <li><a href="https://github.com/pypa/virtualenv/commit/754602d6f07d262f4f352cc590bd3f9ef3b157fe"><code>754602d</code></a> 🐛 fix(seed): validate wheel zip entries before extraction (<a href="https://redirect.github.com/pypa/virtualenv/issues/3118">#3118</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/43deabf249c10896d09a282aa254a837fdcef9b5"><code>43deabf</code></a> 🐛 fix(seed): verify sha256 of bundled wheels on load (<a href="https://redirect.github.com/pypa/virtualenv/issues/3119">#3119</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/4e412b0ba38284487267f481026ea218689fa9bd"><code>4e412b0</code></a> 🐛 fix(seed): validate distribution and version before pip download (<a href="https://redirect.github.com/pypa/virtualenv/issues/3120">#3120</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/130981834946a828174e37ecdd250f530f09832f"><code>1309818</code></a> 🐛 fix(zipapp): enforce ROOT containment with Path.relative_to (<a href="https://redirect.github.com/pypa/virtualenv/issues/3121">#3121</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/48f6fdcc14b8654236f9081adbff10a32f536940"><code>48f6fdc</code></a> 🐛 fix(periodic-update): refuse unverified HTTPS to PyPI by default (<a href="https://redirect.github.com/pypa/virtualenv/issues/3122">#3122</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/a5fb4a290d60776e2b3f81696bd7291913aa25d4"><code>a5fb4a2</code></a> release 21.2.3</li> <li><a href="https://github.com/pypa/virtualenv/commit/7f91a9a0bfbc549fc10274164135cf02c8ca8167"><code>7f91a9a</code></a> release 21.2.2</li> <li><a href="https://github.com/pypa/virtualenv/commit/33348d69426ef49ea26dcab7f12b474706968813"><code>33348d6</code></a> bump python-discovery minimum to 1.2.2 (<a href="https://redirect.github.com/pypa/virtualenv/issues/3117">#3117</a>)</li> <li><a href="https://github.com/pypa/virtualenv/commit/d73ff7c2dccd6a60223b5c4ed673d7f3e7df9a43"><code>d73ff7c</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pypa/virtualenv/issues/3116">#3116</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pypa/virtualenv/compare/21.2.0...21.2.4">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [build](https://github.com/pypa/build) from 1.4.2 to 1.4.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pypa/build/releases">build's releases</a>.</em></p> <blockquote> <h2>1.4.3</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>🐛 fix(api): resolve thread-safety races in build API by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1015">pypa/build#1015</a></li> <li>🐛 fix(builder): validate backend-path entries exist on disk by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1016">pypa/build#1016</a></li> <li>test: cover config settings build paths by <a href="https://github.com/terminalchai"><code>@terminalchai</code></a> in <a href="https://redirect.github.com/pypa/build/pull/992">pypa/build#992</a></li> <li>Add kind=(step, ) for root messages with * by <a href="https://github.com/abitrolly"><code>@abitrolly</code></a> in <a href="https://redirect.github.com/pypa/build/pull/973">pypa/build#973</a></li> <li>fix: correct changelog category ordering by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1017">pypa/build#1017</a></li> <li>🐛 fix(cli): show full dependency chain in missing deps error by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1019">pypa/build#1019</a></li> <li>tests: fully annotate by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1020">pypa/build#1020</a></li> <li>chore: lazy imports by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1021">pypa/build#1021</a></li> <li>chore: adding more ruff codes by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1022">pypa/build#1022</a></li> <li>tests: improve annotations by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1023">pypa/build#1023</a></li> <li>🧪 test(coverage): achieve 100% test coverage by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1018">pypa/build#1018</a></li> <li>chore: add ruff PT by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1025">pypa/build#1025</a></li> <li>chore: add ruff PYI by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1026">pypa/build#1026</a></li> <li>chore: add ruff SIM/RET by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1028">pypa/build#1028</a></li> <li>🐛 fix(env): strip PYTHONPATH from isolated builds by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1024">pypa/build#1024</a></li> <li>chore: use ruff ALL by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1029">pypa/build#1029</a></li> <li>🐛 fix(env): prevent pip credential hang with private indexes by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1030">pypa/build#1030</a></li> <li>🐛 fix(check_dependency): verify URL reqs via PEP 610 by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/pypa/build/pull/1027">pypa/build#1027</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/terminalchai"><code>@terminalchai</code></a> made their first contribution in <a href="https://redirect.github.com/pypa/build/pull/992">pypa/build#992</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pypa/build/compare/1.4.2...1.4.3">https://github.com/pypa/build/compare/1.4.2...1.4.3</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pypa/build/blob/main/CHANGELOG.rst">build's changelog</a>.</em></p> <blockquote> <p>#################### 1.4.3 (2026-04-10) ####################</p> <hr /> <p>Features</p> <hr /> <ul> <li>Add <code>kind</code> parameter to log messages to separate semantic and representation - by :user:<code>abitrolly</code> (:issue:<code>973</code>)</li> </ul> <hr /> <p>Bugfixes</p> <hr /> <ul> <li>Strip <code>PYTHONPATH</code> from the environment during isolated builds to prevent host packages from leaking into the build <ul> <li>by :user:<code>gaborbernat</code> (:issue:<code>405</code>)</li> </ul> </li> <li>Pass <code>--no-input</code> to pip to prevent hidden credential prompts that cause hangs, and automatically set <code>PIP_KEYRING_PROVIDER=subprocess</code> (or <code>UV_KEYRING_PROVIDER=subprocess</code> for the uv installer) when the <code>keyring</code> CLI is on <code>PATH</code> -- by :user:<code>gaborbernat</code> (:issue:<code>409</code>)</li> <li><code>check_dependency</code> now reports URL requirements as unmet instead of silently accepting them when a package with the same name is installed - by :user:<code>gaborbernat</code> (:issue:<code>860</code>)</li> <li>Fix misleading missing dependency error display where transitive dependency chains showed the top-level package on a separate line, making it appear as if the top-level package itself was missing - by :user:<code>gaborbernat</code> (:issue:<code>875</code>)</li> <li>Fix towncrier template to generate changelog categories in definition order - by :user:<code>gaborbernat</code> (:issue:<code>1007</code>)</li> <li>Resolve thread-safety races in the build API - by :user:<code>gaborbernat</code> (:issue:<code>1015</code>)</li> <li>Validate <code>backend-path</code> entries exist on disk with a clear error - by :user:<code>gaborbernat</code> (:issue:<code>1016</code>)</li> </ul> <hr /> <p>Miscellaneous</p> <hr /> <ul> <li>:issue:<code>1020</code>, :issue:<code>1021</code></li> </ul> <p>#################### 1.4.2 (2026-03-25) ####################</p> <hr /> <p>Bugfixes</p> <hr /> <ul> <li>Ensure the <code>uv</code> installer uses the current version of Python, avoiding an issue if <code>UV_PYTHON</code> is set, for example. (:issue:<code>977</code>)</li> <li>Fix <code>_has_valid_outer_pip</code> returning <code>True</code> when pip is missing, causing build to try using a non-existent pip instead of falling back to virtualenv. (:issue:<code>1003</code>)</li> </ul> <p>#################### 1.4.1 (2026-03-24) ####################</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/build/commit/130b043d1a1c1a12a0558f2598430b769f074690"><code>130b043</code></a> chore: prepare for 1.4.3</li> <li><a href="https://github.com/pypa/build/commit/7642efe3f3c5163aa5839d23dda606f3a07eaf21"><code>7642efe</code></a> 🐛 fix(check_dependency): verify URL reqs via PEP 610 (<a href="https://redirect.github.com/pypa/build/issues/1027">#1027</a>)</li> <li><a href="https://github.com/pypa/build/commit/d407530dffe9e7c6141ec533f3271ced2aef9220"><code>d407530</code></a> 🐛 fix(env): prevent pip credential hang with private indexes (<a href="https://redirect.github.com/pypa/build/issues/1030">#1030</a>)</li> <li><a href="https://github.com/pypa/build/commit/b3dc114be71c6823f6892d933b7ddee7c391ce45"><code>b3dc114</code></a> chore: use ruff ALL (<a href="https://redirect.github.com/pypa/build/issues/1029">#1029</a>)</li> <li><a href="https://github.com/pypa/build/commit/27b67b2db1807f2547af670e4d14401a6605bf3b"><code>27b67b2</code></a> 🐛 fix(env): strip PYTHONPATH from isolated builds (<a href="https://redirect.github.com/pypa/build/issues/1024">#1024</a>)</li> <li><a href="https://github.com/pypa/build/commit/c1454fd30db0e733a65cdc1a927a99525e8e027e"><code>c1454fd</code></a> chore: add ruff SIM/RET (<a href="https://redirect.github.com/pypa/build/issues/1028">#1028</a>)</li> <li><a href="https://github.com/pypa/build/commit/0b1ca1cf1a0ec451fec3a2836b622c91effefaf6"><code>0b1ca1c</code></a> chore: add ruff PYI (<a href="https://redirect.github.com/pypa/build/issues/1026">#1026</a>)</li> <li><a href="https://github.com/pypa/build/commit/f1dfe82156c43b0808d283e818e4490b1362eae8"><code>f1dfe82</code></a> chore: add ruff PT (<a href="https://redirect.github.com/pypa/build/issues/1025">#1025</a>)</li> <li><a href="https://github.com/pypa/build/commit/4348292f7a8d010be2f1b689696bf9608ddf7885"><code>4348292</code></a> 🧪 test(coverage): achieve 100% test coverage (<a href="https://redirect.github.com/pypa/build/issues/1018">#1018</a>)</li> <li><a href="https://github.com/pypa/build/commit/5d3390b31abfedfb6f8698f9d68a88eb37396eba"><code>5d3390b</code></a> tests: improve annotations (<a href="https://redirect.github.com/pypa/build/issues/1023">#1023</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pypa/build/compare/1.4.2...1.4.3">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.25.2 to 3.28.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tox-dev/py-filelock/releases">filelock's releases</a>.</em></p> <blockquote> <h2>3.28.0</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>🐛 fix(ci): unbreak release workflow, publish to PyPI again by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/529">tox-dev/filelock#529</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tox-dev/filelock/compare/3.27.0...3.28.0">https://github.com/tox-dev/filelock/compare/3.27.0...3.28.0</a></p> <h2>3.27.0</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>✨ feat(rw): add SoftReadWriteLock for NFS and HPC clusters by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/528">tox-dev/filelock#528</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tox-dev/filelock/compare/3.26.1...3.27.0">https://github.com/tox-dev/filelock/compare/3.26.1...3.27.0</a></p> <h2>3.26.1</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>🐛 fix(asyncio): add <strong>exit</strong> to BaseAsyncFileLock and fix <strong>del</strong> loop handling by <a href="https://github.com/naarob"><code>@naarob</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/518">tox-dev/filelock#518</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/naarob"><code>@naarob</code></a> made their first contribution in <a href="https://redirect.github.com/tox-dev/filelock/pull/518">tox-dev/filelock#518</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tox-dev/filelock/compare/3.26.0...3.26.1">https://github.com/tox-dev/filelock/compare/3.26.0...3.26.1</a></p> <h2>3.26.0</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>🔒 ci(workflows): add zizmor security auditing by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/517">tox-dev/filelock#517</a></li> <li>🔧 fix(ci): restore git credentials for release job by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/520">tox-dev/filelock#520</a></li> <li>✨ feat(soft): add PID inspection and lock breaking by <a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in <a href="https://redirect.github.com/tox-dev/filelock/pull/524">tox-dev/filelock#524</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/tox-dev/filelock/compare/3.25.2...3.26.0">https://github.com/tox-dev/filelock/compare/3.25.2...3.26.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst">filelock's changelog</a>.</em></p> <blockquote> <p>########### Changelog ###########</p> <hr /> <p>3.28.0 (2026-04-14)</p> <hr /> <ul> <li>🐛 fix(ci): unbreak release workflow, publish to PyPI again :pr:<code>529</code></li> </ul> <hr /> <p>3.26.1 (2026-04-09)</p> <hr /> <ul> <li>🐛 fix(asyncio): add <strong>exit</strong> to BaseAsyncFileLock and fix <strong>del</strong> loop handling :pr:<code>518</code> - by :user:<code>naarob</code></li> <li>build(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0 :pr:<code>525</code> - by :user:<code>dependabot[bot]</code></li> </ul> <hr /> <p>3.26.0 (2026-04-06)</p> <hr /> <ul> <li>✨ feat(soft): add PID inspection and lock breaking :pr:<code>524</code></li> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>523</code> - by :user:<code>pre-commit-ci[bot]</code></li> <li>build(deps): bump astral-sh/setup-uv from 7.6.0 to 8.0.0 :pr:<code>522</code> - by :user:<code>dependabot[bot]</code></li> <li>Remove persist-credentials: false from release job :pr:<code>520</code></li> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>519</code> - by :user:<code>pre-commit-ci[bot]</code></li> <li>🔒 ci(workflows): add zizmor security auditing :pr:<code>517</code></li> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>516</code> - by :user:<code>pre-commit-ci[bot]</code></li> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>514</code> - by :user:<code>pre-commit-ci[bot]</code></li> </ul> <hr /> <p>3.25.2 (2026-03-11)</p> <hr /> <ul> <li>🐛 fix(unix): suppress EIO on close in Docker bind mounts :pr:<code>513</code></li> </ul> <hr /> <p>3.25.1 (2026-03-09)</p> <hr /> <ul> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>510</code> - by :user:<code>pre-commit-ci[bot]</code></li> <li>🐛 fix(win): restore best-effort lock file cleanup on release :pr:<code>511</code></li> <li>[pre-commit.ci] pre-commit autoupdate :pr:<code>508</code> - by :user:<code>pre-commit-ci[bot]</code></li> <li>📝 docs(logo): add branded project logo :pr:<code>507</code></li> </ul> <hr /> <p>3.25.0 (2026-03-01)</p> <hr /> <ul> <li>✨ feat(async): add AsyncReadWriteLock :pr:<code>506</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tox-dev/filelock/commit/55de20c0819652362881906fa289feff5a323c19"><code>55de20c</code></a> Release 3.28.0</li> <li><a href="https://github.com/tox-dev/filelock/commit/476b0e4a92776fe530b5d993247342f039004174"><code>476b0e4</code></a> 🐛 fix(ci): unbreak release workflow, publish to PyPI again (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/529">#529</a>)</li> <li><a href="https://github.com/tox-dev/filelock/commit/824713edc32b54efd66566907f97c1238502810e"><code>824713e</code></a> ✨ feat(rw): add SoftReadWriteLock for NFS and HPC clusters (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/528">#528</a>)</li> <li><a href="https://github.com/tox-dev/filelock/commit/9879de9298db93ffba0a9f58d9de75e9e2a00fc1"><code>9879de9</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/527">#527</a>)</li> <li><a href="https://github.com/tox-dev/filelock/commit/4cfab498b6916f89be46152efa4a72e9731be98f"><code>4cfab49</code></a> Release 3.26.1</li> <li><a href="https://github.com/tox-dev/filelock/commit/734c9f26e8107ad24886129fc68865f0b46cf71f"><code>734c9f2</code></a> 🐛 fix(asyncio): add <strong>exit</strong> to BaseAsyncFileLock and fix <strong>del</strong> loop handli...</li> <li><a href="https://github.com/tox-dev/filelock/commit/c9f9cb4c63b69d1bcfbcf98fe7c8dc439f51d473"><code>c9f9cb4</code></a> build(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0 (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/525">#525</a>)</li> <li><a href="https://github.com/tox-dev/filelock/commit/ad728d72a3e492297208c16b7c0787f4bfb6ccd0"><code>ad728d7</code></a> Release 3.26.0</li> <li><a href="https://github.com/tox-dev/filelock/commit/f8a9849d63f256229d7c6481081c5df58f63e2ba"><code>f8a9849</code></a> ✨ feat(soft): add PID inspection and lock breaking (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/524">#524</a>)</li> <li><a href="https://github.com/tox-dev/filelock/commit/fc53a83fa16c748b687e598f12540b876c642fce"><code>fc53a83</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/tox-dev/py-filelock/issues/523">#523</a>)</li> <li>Additional commits viewable in <a href="https://github.com/tox-dev/py-filelock/compare/3.25.2...3.28.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [packaging](https://github.com/pypa/packaging) from 26.0 to 26.1. <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.1</h2> <p>Features:</p> <ul> <li><del>PEP 783: add handling for Emscripten wheel tags by <a href="https://github.com/hoodmane"><code>@hoodmane</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/804">pypa/packaging#804</a></del> (old name used in implementation, will be fixed in next release)</li> <li>PEP 803: add handling for the <code>abi3.abi3t</code> free-threading tag by <a href="https://github.com/ngoldbaum"><code>@ngoldbaum</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1099">pypa/packaging#1099</a></li> <li>PEP 723: add <code>packaging.dependency_groups</code> module, based on the <code>dependency-groups</code> package by <a href="https://github.com/sirosen"><code>@sirosen</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1065">pypa/packaging#1065</a></li> <li>Add the <code>packaging.direct_url</code> module by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/944">pypa/packaging#944</a></li> <li>Add the <code>packaging.errors</code> module by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1071">pypa/packaging#1071</a></li> <li>Add <code>SpecifierSet.is_unsatisfiable</code> using ranges (new internals that will be expanded in future versions) by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1119">pypa/packaging#1119</a></li> <li>Add <code>create_compatible_tags_selector</code> to select compatible tags by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1110">pypa/packaging#1110</a></li> <li>Add a <code>key</code> argument to <code>SpecifierSet.filter()</code> by <a href="https://github.com/frostming"><code>@frostming</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1068">pypa/packaging#1068</a></li> <li>Support <code>&</code> and <code>|</code> for <code>Marker</code>'s by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1146">pypa/packaging#1146</a></li> <li>Normalize <code>Version.__replace__</code> and add <code>Version.from_parts</code> by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1078">pypa/packaging#1078</a></li> <li>Add an option to validate compressed tag set sort order in <code>parse_wheel_filename</code> by <a href="https://github.com/r266-tech"><code>@r266-tech</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1150">pypa/packaging#1150</a></li> </ul> <p>Behavior adaptations:</p> <ul> <li>Narrow exclusion of pre-releases for <code><V.postN</code> to match spec by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1140">pypa/packaging#1140</a></li> <li>Narrow exclusion of post-releases for <code>>V</code> to match spec by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1141">pypa/packaging#1141</a></li> <li>Rename <code>format_full_version</code> to <code>_format_full_version</code> to make it visibly private by <a href="https://github.com/r266-tech"><code>@r266-tech</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1125">pypa/packaging#1125</a></li> <li>Restrict local version to ASCII by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1102">pypa/packaging#1102</a></li> </ul> <p>Pylock (PEP 751) updates:</p> <ul> <li>Add pylock <code>select</code> function by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1092">pypa/packaging#1092</a></li> <li>Document pylock <code>select()</code> method and <code>PylockSelectError</code> by <a href="https://github.com/r266-tech"><code>@r266-tech</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1153">pypa/packaging#1153</a></li> <li>Add <code>filename</code> property to <code>PackageSdist</code> and <code>PackageWheel</code>, more validation by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1095">pypa/packaging#1095</a></li> <li>Give preference to path over url by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1128">pypa/packaging#1128</a></li> <li>Validate name/version consistency in file names by <a href="https://github.com/sbidoul"><code>@sbidoul</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1114">pypa/packaging#1114</a></li> </ul> <p>Fixes:</p> <ul> <li>Fix <code>></code> comparison for versions with dev+local segments by <a href="https://github.com/veeceey"><code>@veeceey</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1097">pypa/packaging#1097</a></li> <li>Fix incorrect self-comparison for <code>InfinityType</code> and <code>NegativeInfinityType</code> by <a href="https://github.com/bysiber"><code>@bysiber</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1093">pypa/packaging#1093</a></li> <li>Canonicalize when deduplicating specifiers in <code>SpecifierSet</code> by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1109">pypa/packaging#1109</a></li> <li>Fix charset error message formatting by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1121">pypa/packaging#1121</a></li> <li>Handle the <code>key</code> parameter in <code>SpecifierSet.filter</code> when specifiers are empty and prerelease is <code>False</code> by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1096">pypa/packaging#1096</a></li> <li>Standardize inner components of <code>repr</code> output by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1090">pypa/packaging#1090</a></li> <li><code>Specifier</code>'s <code>===</code> uses original string, not normalized, when available by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1124">pypa/packaging#1124</a></li> <li>Propagate int-max-str-digits <code>ValueError</code> by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1155">pypa/packaging#1155</a></li> </ul> <p>Performance:</p> <ul> <li>Add fast path for parsing simple versions (digits and dots only) by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1082">pypa/packaging#1082</a></li> <li>Add fast path for <code>Version</code> to <code>Version</code> comparison by skipping <code>_key</code> property by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1083">pypa/packaging#1083</a></li> <li>Cache <code>Version</code> hash value in dedicated slot by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1118">pypa/packaging#1118</a></li> <li>Overhaul <code>_cmpkey</code> to remove use of custom objects by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1116">pypa/packaging#1116</a></li> <li>Skip <code>__replace__</code> in Specifier comparison if not needed by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1081">pypa/packaging#1081</a></li> <li><code>SpecifierSet</code> use <code>tuple</code> instead of <code>frozenset</code> for <code>_specs</code> by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1108">pypa/packaging#1108</a></li> <li>Speed up complex <code>SpecifierSet</code> filtering by implementing cost-based ordering by <a href="https://github.com/notatallshaw"><code>@notatallshaw</code></a> in <a href="https://redirect.github.com/pypa/packaging/pull/1105">pypa/packaging#1105</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.1 - 2026-04-14</p> <pre><code> Features: <ul> <li>PEP 783: add handling for Emscripten wheel tags in (:pull:<code>804</code>)</li> <li>PEP 803: add handling for the <code>abi3.abi3t</code> free-threading tag in (:pull:<code>1099</code>)</li> <li>PEP 723: add <code>packaging.dependency_groups</code> module, based on the <code>dependency-groups</code> package in (:pull:<code>1065</code>)</li> <li>Add the <code>packaging.direct_url</code> module in (:pull:<code>944</code>)</li> <li>Add the <code>packaging.errors</code> module in (:pull:<code>1071</code>)</li> <li>Add <code>SpecifierSet.is_unsatisfiable</code> using ranges (new internals that will be expanded in future versions) in (:pull:<code>1119</code>)</li> <li>Add <code>create_compatible_tags_selector</code> to select compatible tags in (:pull:<code>1110</code>)</li> <li>Add a <code>key</code> argument to <code>SpecifierSet.filter()</code> in (:pull:<code>1068</code>)</li> <li>Support <code>&amp;</code> and <code>|</code> for <code>Marker</code>'s in (:pull:<code>1146</code>)</li> <li>Normalize <code>Version.__replace__</code> and add <code>Version.from_parts</code> in (:pull:<code>1078</code>)</li> <li>Add an option to validate compressed tag set sort order in <code>parse_wheel_filename</code> in (:pull:<code>1150</code>)</li> </ul> <p>Behavior adaptations:</p> <ul> <li>Narrow exclusion of pre-releases for <code>&lt;V.postN</code> to match spec in (:pull:<code>1140</code>)</li> <li>Narrow exclusion of post-releases for <code>&gt;V</code> to match spec in (:pull:<code>1141</code>)</li> <li>Rename <code>format_full_version</code> to <code>_format_full_version</code> to make it visibly private in (:pull:<code>1125</code>)</li> <li>Restrict local version to ASCII in (:pull:<code>1102</code>)</li> </ul> <p>Pylock (PEP 751) updates:</p> <ul> <li>Add pylock <code>select</code> function in (:pull:<code>1092</code>)</li> <li>Document pylock <code>select()</code> method and <code>PylockSelectError</code> in (:pull:<code>1153</code>)</li> <li>Add <code>filename</code> property to <code>PackageSdist</code> and <code>PackageWheel</code>, more validation in (:pull:<code>1095</code>)</li> <li>Give preference to path over url in (:pull:<code>1128</code>)</li> <li>Validate name/version consistency in file names in (:pull:<code>1114</code>)</li> </ul> <p>Fixes:</p> <ul> <li>Fix <code>&gt;</code> comparison for versions with dev+local segments in (:pull:<code>1097</code>)</li> <li>Fix incorrect self-comparison for <code>InfinityType</code> and <code>NegativeInfinityType</code> in (:pull:<code>1093</code>)</li> <li>Canonicalize when deduplicating specifiers in <code>SpecifierSet</code> in (:pull:<code>1109</code>)</li> <li>Fix charset error message formatting in (:pull:<code>1121</code>)</li> <li>Handle the <code>key</code> parameter in <code>SpecifierSet.filter</code> when specifiers are empty and prerelease is <code>False</code> in (:pull:<code>1096</code>)</li> <li>Standardize inner components of <code>repr</code> output in (:pull:<code>1090</code>)</li> <li><code>Specifier</code>'s <code>===</code> uses original string, not normalized, when available in (:pull:<code>1124</code>)</li> <li>Propagate int-max-str-digits <code>ValueError</code> in (:pull:<code>1155</code>)</li> </ul> <p>Performance:</p> <ul> <li>Add fast path for parsing simple versions (digits and dots only) in (:pull:<code>1082</code>)</li> <li>Add fast path for <code>Version</code> to <code>Version</code> comparison by skipping <code>_key</code> property in (:pull:<code>1083</code>)</li> <li>Cache <code>Version</code> hash value in dedicated slot in (:pull:<code>1118</code>)</li> <li>Overhaul <code>_cmpkey</code> to remove use of custom objects in (:pull:<code>1116</code>)</li> <li>Skip <code>__replace__</code> in Specifier comparison if not needed in (:pull:<code>1081</code>)<br /> </tr></table><br /> </code></pre></li> </ul> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/packaging/commit/c1a88a3e035e8bfe47dbc957f4a2493e8a7b4f3c"><code>c1a88a3</code></a> Bump for release</li> <li><a href="https://github.com/pypa/packaging/commit/702c25ecc297054f9597acda987a75dd6833acf5"><code>702c25e</code></a> docs: update changelog for 26.1 (<a href="https://redirect.github.com/pypa/packaging/issues/1156">#1156</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/3f4f5d46808f51709aba8341d4121f20752b3235"><code>3f4f5d4</code></a> Implement <code>is_unsatisfiable</code> on <code>SpecifierSet</code> using ranges (<a href="https://redirect.github.com/pypa/packaging/issues/1119">#1119</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/06c6555f44f0f7b84459c876375c5b1d52ee7fef"><code>06c6555</code></a> Propagate int-max-str-digits ValueError (<a href="https://redirect.github.com/pypa/packaging/issues/1155">#1155</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/905c90c1eb8c77dede11899194ca4b0f5eaf188d"><code>905c90c</code></a> feat: option to validate compressed tag set sort order in `parse_wheel_filena...</li> <li><a href="https://github.com/pypa/packaging/commit/af0026cff97a8f28d165d6ac4afb58b2cdc8ffc5"><code>af0026c</code></a> docs(pylock): document select() method and PylockSelectError (<a href="https://redirect.github.com/pypa/packaging/issues/1153">#1153</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/668da8662a112036e4850b68980790cb2d10dae9"><code>668da86</code></a> Rename format_full_version to _format_full_version to make it visibly private...</li> <li><a href="https://github.com/pypa/packaging/commit/f294d529e2634798a98fd9cee6708307a5c1792c"><code>f294d52</code></a> tests: do not reload the tags module (<a href="https://redirect.github.com/pypa/packaging/issues/1152">#1152</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/2c6c7dfa2d406e44b91f3f8d26eeed72437c9435"><code>2c6c7df</code></a> feat: add handling for Emscripten wheels tags per PEP 783 (<a href="https://redirect.github.com/pypa/packaging/issues/804">#804</a>)</li> <li><a href="https://github.com/pypa/packaging/commit/6762eea4de40da02c119d02cc77c907c6b446b86"><code>6762eea</code></a> docs(markers): document & and | operators for combining Marker objects (<a href="https://redirect.github.com/pypa/packaging/issues/1151">#1151</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pypa/packaging/compare/26.0...26.1">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )