Latest Results
Bump filelock from 3.30.2 to 3.31.0 (#13210)
Bumps [filelock](https://github.com/tox-dev/py-filelock) from 3.30.2 to
3.31.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.31.0</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<ul>
<li>✨ feat(platform): support Termux/Android by <a
href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in
<a
href="https://redirect.github.com/tox-dev/filelock/pull/678">tox-dev/filelock#678</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tox-dev/filelock/compare/3.30.3...3.31.0">https://github.com/tox-dev/filelock/compare/3.30.3...3.31.0</a></p>
<h2>3.30.3</h2>
<!-- raw HTML omitted -->
<h2>What's Changed</h2>
<ul>
<li>Keep both tables of contents on screen at any browser font size by
<a href="https://github.com/gaborbernat"><code>@gaborbernat</code></a>
in <a
href="https://redirect.github.com/tox-dev/filelock/pull/673">tox-dev/filelock#673</a></li>
<li>📝 docs(mermaid): follow the light and dark theme toggle by <a
href="https://github.com/gaborbernat"><code>@gaborbernat</code></a> in
<a
href="https://redirect.github.com/tox-dev/filelock/pull/674">tox-dev/filelock#674</a></li>
<li>asyncio: scope the reentrant-deadlock registry to the owning task by
<a href="https://github.com/xt-yin"><code>@xt-yin</code></a> in <a
href="https://redirect.github.com/tox-dev/filelock/pull/676">tox-dev/filelock#676</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/xt-yin"><code>@xt-yin</code></a> made
their first contribution in <a
href="https://redirect.github.com/tox-dev/filelock/pull/676">tox-dev/filelock#676</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tox-dev/filelock/compare/3.30.2...3.30.3">https://github.com/tox-dev/filelock/compare/3.30.2...3.30.3</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>
<p>.. towncrier-draft-entries:: Unreleased</p>
<p>.. towncrier release notes start</p>
<hr />
<p>3.31.2 (2026-07-21)</p>
<hr />
<ul>
<li><code>filelock</code> imports again on runtimes whose
<code>errno</code> omits <code>ENOTSUP</code>, such as GraalPy, where
importing the package
raised <code>ImportError</code>. It probes the code instead, preferring
<code>ENOTSUP</code>, falling back to <code>EOPNOTSUPP</code> where that
name is absent, and dropping to <code>ENOSYS</code>/<code>EXDEV</code>
where neither exists. Platforms defining <code>ENOTSUP</code> keep their
behavior. :pr:<code>681</code></li>
</ul>
<hr />
<p>3.31.1 (2026-07-20)</p>
<hr />
<ul>
<li>A <code>SoftFileLease</code> acquired on one thread keeps its claim
when another thread fails to acquire the same lease object,
so its heartbeat carries on refreshing the marker instead of being torn
down and letting a peer take the live claim. :pr:<code>680</code></li>
</ul>
<hr />
<p>3.31.0 (2026-07-18)</p>
<hr />
<ul>
<li>Support Termux/Android, whose CPython ships without
<code>os.link</code> and reports <code>sys.platform ==
"android"</code>. <code>import filelock</code> and both
<code>FileLock</code> and <code>SoftFileLock</code> now work there,
<code>StrictSoftFileLock</code> reports its missing
hard-link support only when acquired, and process liveness reads
<code>/proc</code> on Android instead of PID-only checks.
:pr:<code>678</code></li>
<li><code>StrictSoftFileLock</code> no longer lets two processes hold
the lock at once under heavy contention. A holder now keeps
its intent claim for the whole hold, so a contender whose directory scan
races the holder's freshly linked claim can no
longer miss it and win alongside it. A held lock now exposes both an
<code>intent</code> and a <code>held</code> claim.
:pr:<code>678</code></li>
</ul>
<hr />
<p>3.30.3 (2026-07-17)</p>
<hr />
<ul>
<li><code>AsyncFileLock</code> and <code>AsyncSoftFileLock</code> no
longer raise a deadlock <code>RuntimeError</code> when a different
asyncio task
waits for a lock they hold; the check now scopes holders to the owning
task, so only a same-task reacquire is refused.
:pr:<code>676</code></li>
<li>Keep both tables of contents on screen at any browser font size. The
widened body column sized itself in <code>em</code> against the reader's
font size while the breakpoints that fold the layout resolve
<code>em</code> against a fixed 16px, so a reader whose default font is
larger than 16px had the right-hand table of contents clipped off the
edge. The body column now flexes instead, and the right-hand table of
contents hides only at the mobile breakpoint. :pr:<code>673</code></li>
<li>Color the mermaid diagrams from whichever theme is active. They
previously carried a light palette baked into each
diagram's source, which stayed light on a dark page.
:pr:<code>674</code></li>
</ul>
<hr />
<p>3.30.2 (2026-07-16)</p>
<hr />
<ul>
<li>Stop :class:<code>~filelock.SoftFileLease</code> deleting a live
marker whose <code>mode</code> it does not implement. An unrecognized
mode now names its owner instead of reading as malformed, so a record
written by a newer filelock survives the grace window rather than being
evicted after two seconds. :pr:<code>672</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/3b66fdc1432e3b02e83525e61a99096aa09a933f"><code>3b66fdc</code></a>
Release 3.31.0</li>
<li><a
href="https://github.com/tox-dev/filelock/commit/166b2b5d723a2e111be36a8b43e594a97141c0fd"><code>166b2b5</code></a>
✨ feat(platform): support Termux/Android (<a
href="https://redirect.github.com/tox-dev/py-filelock/issues/678">#678</a>)</li>
<li><a
href="https://github.com/tox-dev/filelock/commit/51bca89704e83ea6bed8462946c72835544dbc8f"><code>51bca89</code></a>
Release 3.30.3</li>
<li><a
href="https://github.com/tox-dev/filelock/commit/fc277001fb6abaea57986dc52d9844d48a9ef2f6"><code>fc27700</code></a>
asyncio: scope the reentrant-deadlock registry to the owning task (<a
href="https://redirect.github.com/tox-dev/py-filelock/issues/676">#676</a>)</li>
<li><a
href="https://github.com/tox-dev/filelock/commit/8699861c86445e3a46ac185dc206a44183cd681a"><code>8699861</code></a>
📝 docs(mermaid): follow the light and dark theme toggle (<a
href="https://redirect.github.com/tox-dev/py-filelock/issues/674">#674</a>)</li>
<li><a
href="https://github.com/tox-dev/filelock/commit/1b8da43740e2484fd3c84009e4693213fe6d5300"><code>1b8da43</code></a>
Keep both tables of contents on screen at any browser font size (<a
href="https://redirect.github.com/tox-dev/py-filelock/issues/673">#673</a>)</li>
<li>See full diff in <a
href="https://github.com/tox-dev/py-filelock/compare/3.30.2...3.31.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> Latest Branches
0%
0%
vtino17:fix/graceful-exit-doc 0%
arshsmith1:request-target-ctl-reject © 2026 CodSpeed Technology