Bump the python-deps group across 1 directory with 8 updates (#1049)

Bumps the python-deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [python-socketio](https://github.com/miguelgrinberg/python-socketio) |
`5.16.1` | `5.16.2` |
| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.68.1` |
| [gevent](https://github.com/gevent/gevent) | `26.4.0` | `26.5.0` |
| [apprise](https://github.com/caronc/apprise) | `1.10.0` | `1.11.0` |
| [seleniumbase](https://github.com/seleniumbase/SeleniumBase) |
`4.48.4` | `4.49.7` |
| [basedpyright](https://github.com/detachhead/basedpyright) | `1.39.3`
| `1.39.6` |
| [prek](https://github.com/j178/prek) | `0.3.13` | `0.4.4` |
| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.15.16` |


Updates `python-socketio` from 5.16.1 to 5.16.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/miguelgrinberg/python-socketio/releases">python-socketio's
releases</a>.</em></p>
<blockquote>
<h2>Release 5.16.2</h2>
<p>See <a
href="https://github.com/miguelgrinberg/python-socketio/blob/main/CHANGES.md">CHANGES.md</a>
for release notes.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/miguelgrinberg/python-socketio/blob/main/CHANGES.md">python-socketio's
changelog</a>.</em></p>
<blockquote>
<h1>python-socketio change log</h1>
<p><strong>Release 5.16.2</strong> - 2026-05-21</p>
<ul>
<li>Prevent unnecessary resource allocations <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1574">#1574</a>
(<a
href="ca140fe44d">commit</a>)</li>
<li>Add zizmor to CI builds <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1570">#1570</a>
(<a
href="664dc27ec6">commit</a>)</li>
</ul>
<p><strong>Release 5.16.1</strong> - 2026-02-06</p>
<ul>
<li>Use configured JSON module in managers <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1549">#1549</a>
(<a
href="6229261ae6">commit</a>)</li>
<li>Admin UI fixes: remove duplicate tasks, report transport upgrades
(<a
href="1c2eab13a9">commit</a>)</li>
<li>Switch to Furo documentation template (<a
href="add47d8c7a">commit</a>)</li>
<li>Add Python free-threading to CI <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1554">#1554</a>
(<a
href="ccdd2004a0">commit</a>)</li>
</ul>
<p><strong>Release 5.16.0</strong> - 2025-12-24</p>
<ul>
<li>Address deprecation warnings (<a
href="b235699d9b">commit</a>)</li>
<li>Drop Python 3.8 and 3.9 from CI builds (<a
href="d0728d2f74">commit</a>)</li>
</ul>
<p><strong>Release 5.15.1</strong> - 2025-12-16</p>
<ul>
<li>Restore support multiple arguments via pubsub emits <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1540">#1540</a>
(<a
href="c279f26bb8">commit</a>)</li>
</ul>
<p><strong>Release 5.15.0</strong> - 2025-11-22</p>
<ul>
<li>Retry initial Redis connection <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1536">#1534</a>
([commit <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1">#1</a>](<a
href="1e903e173a</a>)
[commit <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/2">#2</a>](<a
href="5e898a9b93</a>))</li>
<li>Correctly regenerate RabbitMQ binding after a connection failure <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1516">#1516</a>
(<a
href="c52e93b4a3">commit</a>)
(thanks <strong>Gritty_dev</strong>!)</li>
<li>Support <code>ext_type</code> in the <code>MsgPackPacket</code>
class <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1521">#1521</a>
(<a
href="208925344a">commit</a>)</li>
<li>Support sending <code>bytesarray</code>s when using pub/sub managers
(<a
href="6c9b9974f7">commit</a>)</li>
<li>Fix typos in documentation <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1520">#1520</a>
(<a
href="db3f1c2a01">commit</a>)
(thanks <strong>Lê Nam Khánh</strong>!)</li>
<li>Improvements to the logging documentation (<a
href="b423d0e38e">commit</a>)</li>
</ul>
<p><strong>Release 5.14.3</strong> - 2025-10-29</p>
<ul>
<li>Support Python's native <code>ConnectionRefusedError</code>
exception to reject a connection <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1515">#1515</a>
(<a
href="f3b18bde3f">commit</a>)</li>
<li>Push binary data to the aiopika client manager <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1514">#1514</a>
(<a
href="194e1b7f27">commit</a>)</li>
</ul>
<p><strong>Release 5.14.2</strong> - 2025-10-15</p>
<ul>
<li>Restore binary message support in message queue setups <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1509">#1509</a>
(<a
href="bab4a10f48">commit</a>)</li>
<li>Fix formatting of client connection error <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1507">#1507</a>
(<a
href="f298c9b54d">commit</a>)</li>
<li>Add 3.14 and pypy-3.11 CI tasks (<a
href="1f4cd3b025">commit</a>)</li>
<li>Improve documentation of the
<code>BaseManager.get_participants()</code> method (<a
href="33722a0d96">commit</a>)</li>
</ul>
<p><strong>Release 5.14.1</strong> - 2025-10-02</p>
<ul>
<li>Restore support for <code>rediss://</code> URLs, and add support for
<code>valkeys://</code> as well (<a
href="6e2d0de12b">commit</a>)</li>
<li>Add support for Redis connections using unix sockets <a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1503">#1503</a>
(<a
href="a8deb3a8f3">commit</a>)
(thanks <strong>Darren Chang</strong>!)</li>
</ul>
<p><strong>Release 5.14.0</strong> - 2025-09-30</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6e2b7175c9"><code>6e2b717</code></a>
Release 5.16.2</li>
<li><a
href="cb65829108"><code>cb65829</code></a>
update python-engineio version</li>
<li><a
href="ca140fe44d"><code>ca140fe</code></a>
prevent unnecessary resource allocation (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1574">#1574</a>)</li>
<li><a
href="b29beef6bf"><code>b29beef</code></a>
tox configuration</li>
<li><a
href="e8981302a3"><code>e898130</code></a>
Bump ujson from 5.4.0 to 5.12.1 in /examples/server/sanic (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1573">#1573</a>)
#nolog</li>
<li><a
href="05c32f5da8"><code>05c32f5</code></a>
Bump qs and body-parser in /examples/server/javascript (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1572">#1572</a>)
#nolog</li>
<li><a
href="287dc6715b"><code>287dc67</code></a>
Bump qs and body-parser in /examples/client/javascript (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1571">#1571</a>)
#nolog</li>
<li><a
href="664dc27ec6"><code>664dc27</code></a>
add zizmor to ci (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1570">#1570</a>)</li>
<li><a
href="14c62366a8"><code>14c6236</code></a>
Bump django in /examples/server/wsgi/django_socketio (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1566">#1566</a>)
#nolog</li>
<li><a
href="29b2e5cdbe"><code>29b2e5c</code></a>
Bump aiohttp from 3.13.3 to 3.13.4 in /examples/server/aiohttp (<a
href="https://redirect.github.com/miguelgrinberg/python-socketio/issues/1565">#1565</a>)
#nolog</li>
<li>Additional commits viewable in <a
href="https://github.com/miguelgrinberg/python-socketio/compare/v5.16.1...v5.16.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `tqdm` from 4.67.3 to 4.68.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tqdm/tqdm/releases">tqdm's
releases</a>.</em></p>
<blockquote>
<h2>tqdm v4.68.1 stable</h2>
<ul>
<li>set name of monitor thread (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1669">#1669</a>, <a
href="https://redirect.github.com/tqdm/tqdm/issues/1752">#1752</a> &lt;-
<a
href="https://redirect.github.com/tqdm/tqdm/issues/1435">#1435</a>)</li>
<li>fix monitor thread <code>atexit</code> deadlock (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1751">#1751</a> &lt;-
<a href="https://redirect.github.com/tqdm/tqdm/issues/528">#528</a>, <a
href="https://redirect.github.com/tqdm/tqdm/issues/627">#627</a>, <a
href="https://redirect.github.com/tqdm/tqdm/issues/1435">#1435</a>, <a
href="https://redirect.github.com/tqdm/tqdm/issues/1564">#1564</a>)</li>
<li>docs: minor copyediting</li>
</ul>
<h2>tqdm v4.68.0 stable</h2>
<ul>
<li><code>utils</code>: simplify terminal size detection (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1760">#1760</a>)</li>
<li><code>contrib</code>
<ul>
<li><code>itertools</code> (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1760">#1760</a>)
<ul>
<li>add <code>chain</code>, <code>permutations</code>,
<code>combinations</code>, <code>combinations_with_replacement</code>,
<code>batched</code></li>
<li>add <code>product(repeat=1)</code> keyword argument (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1428">#1428</a>)</li>
</ul>
</li>
<li>fix <code>discord</code>, <code>telegram</code> error handling</li>
<li>fix <code>discord</code>, <code>slack</code>, <code>telegram</code>
format for <code>total=None</code></li>
</ul>
</li>
<li>soft-deprecate <code>tqdm.utils.envwrap</code> -&gt; <a
href="https://github.com/tqdm/envwrap"><code>envwrap</code></a></li>
<li>benchmarks: fix <code>asv</code></li>
<li>misc linting</li>
<li>misc framework updates
<ul>
<li>CI: migrate manual job to <code>pre-commit.ci</code></li>
<li>bump workflow actions &amp; pre-commit hooks</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="67cf355f96"><code>67cf355</code></a>
Merge pull request <a
href="https://redirect.github.com/tqdm/tqdm/issues/1751">#1751</a> from
jaltmayerpizzorno/fix-atexit-monitor-deadlock</li>
<li><a
href="cfa4a8522e"><code>cfa4a85</code></a>
minor docstring updates</li>
<li><a
href="f83290ce32"><code>f83290c</code></a>
Fix TMonitor deadlock at interpreter shutdown</li>
<li><a
href="59029c37ad"><code>59029c3</code></a>
Set name for tqdm monitor thread (<a
href="https://redirect.github.com/tqdm/tqdm/issues/1752">#1752</a>)</li>
<li><a
href="ef4a142ebd"><code>ef4a142</code></a>
bump version, merge pull request <a
href="https://redirect.github.com/tqdm/tqdm/issues/1760">#1760</a> from
tqdm/devel</li>
<li><a
href="17f246b77d"><code>17f246b</code></a>
lint warning suppression</li>
<li><a
href="c682c7b731"><code>c682c7b</code></a>
benchmarks: fix asv</li>
<li><a
href="fc69588dc2"><code>fc69588</code></a>
CI: migrate to pre-commit.ci</li>
<li><a
href="a31d97f821"><code>a31d97f</code></a>
more contrib.itertools</li>
<li><a
href="e4d97426d6"><code>e4d9742</code></a>
soft-deprecate tqdm.utils.envwrap -&gt; envwrap</li>
<li>Additional commits viewable in <a
href="https://github.com/tqdm/tqdm/compare/v4.67.3...v4.68.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `gevent` from 26.4.0 to 26.5.0
<details>
<summary>Commits</summary>
<ul>
<li><a
href="33c560c2e2"><code>33c560c</code></a>
Preparing release 26.5.0</li>
<li><a
href="7cebc52f71"><code>7cebc52</code></a>
ci.yml: add comments about likely problem with macOS 15/26</li>
<li><a
href="6a9192e6fd"><code>6a9192e</code></a>
Add 315 to make-manylinux.</li>
<li><a
href="65561dc164"><code>65561dc</code></a>
Add change note.</li>
<li><a
href="a651598240"><code>a651598</code></a>
test__threading is apparently initializing the hub on
3.15b1/ubuntu-latest/GH...</li>
<li><a
href="c2cda32db8"><code>c2cda32</code></a>
Disable some linux-specific pidfd tests because we don't use that.</li>
<li><a
href="53371df6be"><code>53371df</code></a>
We can't do coverage on 3.15b1, it doesn't have the binary tracer needed
for ...</li>
<li><a
href="ed9160afeb"><code>ed9160a</code></a>
Initial support for Python 3.15</li>
<li><a
href="36e8203a07"><code>36e8203</code></a>
Remove the CI badges from README.rst.</li>
<li><a
href="21bf47d6b1"><code>21bf47d</code></a>
Disable appveyor, the windows github action runners were
successful.</li>
<li>Additional commits viewable in <a
href="https://github.com/gevent/gevent/compare/26.4.0...26.5.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `apprise` from 1.10.0 to 1.11.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/caronc/apprise/releases">apprise's
releases</a>.</em></p>
<blockquote>
<h2>Release v1.11.0</h2>
<h2>What's Changed</h2>
<p>A big win for this release is priortization of grouped/tagged
content. Basically, this release allows you to tag multiple items and
provide a weight to them. Apprise will attempt to notify the highest
priority/weighted services first (of same level), and only if this level
fails will it try the next. Tagging is no longer just a
<code>tag</code>. It's now <code>weight:tag</code> too; for example
<code>100:friends</code> associates the weight of <code>100</code> with
the tag <code>friends</code>. You can still continue to notify friends
with your Apprise calls, but if there are weight categories, then these
will be factored into the order. Highest priority (weighted) tags have a
lower integer value (zero being the higest priority). Only the next
priority will be notified if the first fails.</p>
<p>This releae also allows you to set up a notifiation service to
gracefully fail and not have Apprise itself report a failure. This is
useful for situations where you notify several end points and you really
don't care if they're unavailable or not. Apprise wil do it's usual best
effort to send the notification, but not treat it as a failure if it
can't get through. Use <code>optional=yes</code> on your Apprise
URL.</p>
<p>Thirdly, this release introduces retries! You can now have Apprise
attempt to notify your endpoint a second, or a third, (up to 10x) tries
before giving up and deeming it unable to send the notification. Use
<code>retry=X</code> on your Apprise URL</p>
<h3>📣 New Notification Services:</h3>
<ul>
<li>Added Zoom (Incoming Webhook) Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1596">caronc/apprise#1596</a></li>
<li>Added WeChat Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1598">caronc/apprise#1598</a></li>
<li>RingCentral Support Added in <a
href="https://redirect.github.com/caronc/apprise/pull/878">caronc/apprise#878</a></li>
<li>Session Open Group Server Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1615">caronc/apprise#1615</a></li>
<li>Added HumHub Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1623">caronc/apprise#1623</a></li>
<li>Amazon Chime Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1627">caronc/apprise#1627</a></li>
<li>GroupMe Support Added in <a
href="https://redirect.github.com/caronc/apprise/pull/1629">caronc/apprise#1629</a></li>
</ul>
<h3>🐞  Bugfixes</h3>
<ul>
<li>improved robustness of windows test cases preventing others from
passing in <a
href="https://redirect.github.com/caronc/apprise/pull/1609">caronc/apprise#1609</a></li>
<li>Handle XMPP SASL SCRAM-PLUS / Channel Binding in <a
href="https://redirect.github.com/caronc/apprise/pull/1619">caronc/apprise#1619</a></li>
<li>TRACE logging during apprise init cleaned up in <a
href="https://redirect.github.com/caronc/apprise/pull/1622">caronc/apprise#1622</a></li>
<li>fixed mastodon error: AttributeError - 'list' object has no
attribute 'union' in <a
href="https://redirect.github.com/caronc/apprise/pull/1631">caronc/apprise#1631</a></li>
</ul>
<h3>💡 Features</h3>
<ul>
<li>o365:// saveToSentItems configurable - ?savesent=no in <a
href="https://redirect.github.com/caronc/apprise/pull/1599">caronc/apprise#1599</a></li>
<li>updated WhatsApp Buisness Graph API to v21 in <a
href="https://redirect.github.com/caronc/apprise/pull/1603">caronc/apprise#1603</a></li>
<li>🔥 Built in retries, escalations, priorities, and optional
service calls in <a
href="https://redirect.github.com/caronc/apprise/pull/1601">caronc/apprise#1601</a></li>
<li>Slack Template/Payload support in <a
href="https://redirect.github.com/caronc/apprise/pull/1604">caronc/apprise#1604</a></li>
<li>Added Slack workflows and trigger support in <a
href="https://redirect.github.com/caronc/apprise/pull/1605">caronc/apprise#1605</a></li>
<li>🚀 Pushover E2EE Support in <a
href="https://redirect.github.com/caronc/apprise/pull/1612">caronc/apprise#1612</a></li>
<li>WKD support added to email plugin in <a
href="https://redirect.github.com/caronc/apprise/pull/1614">caronc/apprise#1614</a>
and <a
href="https://redirect.github.com/caronc/apprise/pull/1618">caronc/apprise#1618</a></li>
<li>Amazon SNS/SES Improvements in <a
href="https://redirect.github.com/caronc/apprise/pull/1620">caronc/apprise#1620</a></li>
<li>Notifico Standalone Support Added in <a
href="https://redirect.github.com/caronc/apprise/pull/1275">caronc/apprise#1275</a></li>
</ul>
<h3>❤️ Life-Cycle Support</h3>
<ul>
<li>Update LoC badge by <a
href="https://github.com/github-actions"><code>@​github-actions</code></a>[bot]
in <a
href="https://redirect.github.com/caronc/apprise/pull/1593">caronc/apprise#1593</a></li>
<li>Twitter/X migration to API v2 in <a
href="https://redirect.github.com/caronc/apprise/pull/1607">caronc/apprise#1607</a></li>
<li>improvements to workflow:// based on recent slack:// changes in <a
href="https://redirect.github.com/caronc/apprise/pull/1608">caronc/apprise#1608</a></li>
<li>🔓 Added redirect= for allowing url redirection control in <a
href="https://redirect.github.com/caronc/apprise/pull/1610">caronc/apprise#1610</a></li>
<li>mqtt:// now depends on paho-mqtt v2.1.0+ in <a
href="https://redirect.github.com/caronc/apprise/pull/1613">caronc/apprise#1613</a></li>
<li>💀 Retire msteams:// as it is no longer in service upstream in
<a
href="https://redirect.github.com/caronc/apprise/pull/1625">caronc/apprise#1625</a></li>
</ul>
<h2>Installation</h2>
<p>Apprise is available <a href="https://pypi.org/project/apprise/">on
PyPI</a> through <em>pip</em>:</p>
<pre lang="bash"><code># Install Apprise v1.11.0 from PyPI
pip install apprise==1.11.0
</code></pre>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="158c4e1feb"><code>158c4e1</code></a>
bumped version to v1.11.0</li>
<li><a
href="21db421ee8"><code>21db421</code></a>
GroupMe Support Added (<a
href="https://redirect.github.com/caronc/apprise/issues/1629">#1629</a>)</li>
<li><a
href="f1e4ad2fd6"><code>f1e4ad2</code></a>
fixed mastodon error: AttributeError - 'list' object has no attribute
'union'...</li>
<li><a
href="e17fe9dd64"><code>e17fe9d</code></a>
Amazon Chime Support (<a
href="https://redirect.github.com/caronc/apprise/issues/1627">#1627</a>)</li>
<li><a
href="dfdac59c99"><code>dfdac59</code></a>
HumHub Support added (<a
href="https://redirect.github.com/caronc/apprise/issues/1623">#1623</a>)</li>
<li><a
href="9de0397c30"><code>9de0397</code></a>
Notifico Standalone Support Added (<a
href="https://redirect.github.com/caronc/apprise/issues/1275">#1275</a>)</li>
<li><a
href="c3e67e61d3"><code>c3e67e6</code></a>
Retired msteams:// - as it is no longer in service upstream (<a
href="https://redirect.github.com/caronc/apprise/issues/1625">#1625</a>)</li>
<li><a
href="b463f23979"><code>b463f23</code></a>
TRACE logging during apprise init cleaned up (<a
href="https://redirect.github.com/caronc/apprise/issues/1622">#1622</a>)</li>
<li><a
href="1e2fdeb72b"><code>1e2fdeb</code></a>
Amazon SNS/SES Improvements (<a
href="https://redirect.github.com/caronc/apprise/issues/1620">#1620</a>)</li>
<li><a
href="4706d0a459"><code>4706d0a</code></a>
Handle XMPP SASL SCRAM-PLUS / Channel Binding (<a
href="https://redirect.github.com/caronc/apprise/issues/1619">#1619</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/caronc/apprise/compare/v1.10.0...v1.11.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `seleniumbase` from 4.48.4 to 4.49.7
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/seleniumbase/SeleniumBase/releases">seleniumbase's
releases</a>.</em></p>
<blockquote>
<h2>4.49.7 - CDP Mode: Patch 112</h2>
<h2>CDP Mode: Patch 112</h2>
<ul>
<li><a
href="a9a76399a3">Fix
RuntimeWarning: coroutine 'Connection.aclose' was never awaited</a></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>CDP Mode: Patch 112 by <a
href="https://github.com/mdmintz"><code>@​mdmintz</code></a> in <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4367">seleniumbase/SeleniumBase#4367</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/seleniumbase/SeleniumBase/compare/v4.49.6...v4.49.7">https://github.com/seleniumbase/SeleniumBase/compare/v4.49.6...v4.49.7</a></p>
<h2>4.49.6 - CDP Mode: Patch 111 (and more)</h2>
<h2>CDP Mode: Patch 111 (and more)</h2>
<ul>
<li><a
href="3cbb5772fa">Fix
RuntimeWarning: coroutine 'Event.wait' was never awaited</a>
--&gt; This resolves <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4363">seleniumbase/SeleniumBase#4363</a></li>
<li><a
href="e7fc1a854c">Remove
the selenium-wire integration</a>
--&gt; This resolves <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4362">seleniumbase/SeleniumBase#4362</a></li>
<li><a
href="ed817adefb">activate_cdp_mode(url)
should still open the url if already active</a></li>
<li><a
href="cf996bf039">Save
time &amp; memory by only importing sb_install if needed</a></li>
<li><a
href="c1ab11fc1d">Update
the CDP Mode activation sequence</a></li>
<li><a
href="8274d737af">Optimize
the pytest-html report plugin</a></li>
<li><a
href="f709444731">Refresh
Python dependencies</a></li>
<li><a
href="41666ae760">Update
examples</a></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>CDP Mode: Patch 111 (and more) by <a
href="https://github.com/mdmintz"><code>@​mdmintz</code></a> in <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4365">seleniumbase/SeleniumBase#4365</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/seleniumbase/SeleniumBase/compare/v4.49.5...v4.49.6">https://github.com/seleniumbase/SeleniumBase/compare/v4.49.5...v4.49.6</a></p>
<h2>4.49.5 - CDP Mode: Patch 110</h2>
<h2>CDP Mode: Patch 110</h2>
<ul>
<li><a
href="0b8a5ce638">Update
error-handling for checking if a process is still running</a></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>CDP Mode: Patch 110 by <a
href="https://github.com/mdmintz"><code>@​mdmintz</code></a> in <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4360">seleniumbase/SeleniumBase#4360</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/seleniumbase/SeleniumBase/compare/v4.49.4...v4.49.5">https://github.com/seleniumbase/SeleniumBase/compare/v4.49.4...v4.49.5</a></p>
<h2>4.49.4 - CDP Mode: Patch 109</h2>
<h2>CDP Mode: Patch 109</h2>
<ul>
<li><a
href="74ee362dc4">Handle
PermissionError in methods that use psutil</a></li>
<li><a
href="b41d331873">Refresh
Python dependencies</a></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>CDP Mode: Patch 109 by <a
href="https://github.com/mdmintz"><code>@​mdmintz</code></a> in <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4358">seleniumbase/SeleniumBase#4358</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/seleniumbase/SeleniumBase/compare/v4.49.3...v4.49.4">https://github.com/seleniumbase/SeleniumBase/compare/v4.49.3...v4.49.4</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9cd73e6698"><code>9cd73e6</code></a>
Merge pull request <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4367">#4367</a>
from seleniumbase/cdp-mode-patch-112</li>
<li><a
href="c2973f391e"><code>c2973f3</code></a>
Version 4.49.7</li>
<li><a
href="a9a76399a3"><code>a9a7639</code></a>
Fix <code>RuntimeWarning: coroutine 'Connection.aclose' was never
awaited</code></li>
<li><a
href="4732aafc5d"><code>4732aaf</code></a>
Merge pull request <a
href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4365">#4365</a>
from seleniumbase/cdp-mode-patch-111</li>
<li><a
href="583e6cd6b9"><code>583e6cd</code></a>
Version 4.49.6</li>
<li><a
href="9e78a662ab"><code>9e78a66</code></a>
Officially support Python 3.15</li>
<li><a
href="f709444731"><code>f709444</code></a>
Refresh Python dependencies</li>
<li><a
href="1c234e270d"><code>1c234e2</code></a>
Refresh mkdocs dependencies</li>
<li><a
href="41666ae760"><code>41666ae</code></a>
Update examples</li>
<li><a
href="b8686dc65d"><code>b8686dc</code></a>
Update the documentation</li>
<li>Additional commits viewable in <a
href="https://github.com/seleniumbase/SeleniumBase/compare/v4.48.4...v4.49.7">compare
view</a></li>
</ul>
</details>
<br />

Updates `basedpyright` from 1.39.3 to 1.39.6
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ad82d91ce2"><code>ad82d91</code></a>
1.39.6</li>
<li><a
href="cf60738b8d"><code>cf60738</code></a>
fix vscode config for formatting markdown files now that we use two
formatter...</li>
<li><a
href="29e303a1b0"><code>29e303a</code></a>
print stderr from npm commands when build fails</li>
<li><a
href="f133f3d6b9"><code>f133f3d</code></a>
uncomment some test code which started causing a test to fail. no idea
why i ...</li>
<li><a
href="f71e96bfe6"><code>f71e96b</code></a>
remove python 3.9 check from <code>TypeAlias4</code> test because
typeshed has dropped s...</li>
<li><a
href="e4c40b76f5"><code>e4c40b7</code></a>
fix tests</li>
<li><a
href="d7c522bc2a"><code>d7c522b</code></a>
ruff ignore new <code>benchmarkData</code> files from upstream</li>
<li><a
href="a7cf33dce1"><code>a7cf33d</code></a>
fix eslint in vscode</li>
<li><a
href="14c96beec3"><code>14c96be</code></a>
fix logic for reporting invalid <code>pythonPlatform</code> detected by
the new eslint v...</li>
<li><a
href="280802ce1b"><code>280802c</code></a>
remove remnants of webpack</li>
<li>Additional commits viewable in <a
href="https://github.com/detachhead/basedpyright/compare/v1.39.3...v1.39.6">compare
view</a></li>
</ul>
</details>
<br />

Updates `prek` from 0.3.13 to 0.4.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/j178/prek/releases">prek's
releases</a>.</em></p>
<blockquote>
<h2>0.4.4</h2>
<h2>Release Notes</h2>
<p>Released on 2026-06-04.</p>
<h3>  Highlights</h3>
<p>0.4.4 makes <code>prek run</code> easier to watch and easier to
slice.</p>
<p>Hook stream output now shows a small live preview under the running
hook in the
progress UI. Long-running hooks no longer look stuck while they are
producing
logs, and failed hooks are easier to diagnose because recent output is
already
visible before the final result.</p>
<p>The new group selector lets a single config support different
workflows. Tag
hooks with <code>groups</code>, then select or exclude those groups at
run time:</p>
<pre lang="yaml"><code>repos:
  - repo: local
    hooks:
      - id: format
        name: Format Python
        language: system
        entry: ruff format
        groups: [format, ci]
<pre><code>  - id: lint
    name: Lint Python
    language: system
    entry: ruff check
    groups: [lint, ci]
</code></pre>
<p></code></pre></p>
<pre lang="bash"><code>prek run --all-files --group ci
prek run --all-files --no-group format
</code></pre>
<p>This is useful when local development, CI, slow validation, or
project-specific
checks need different hook sets without splitting the config.</p>
<h3>💚 Sponsorship</h3>
<p>If prek saves time for you or your team, please consider sponsoring
the
project on <a href="https://github.com/sponsors/j178">GitHub
Sponsors</a>. It helps keep
new features, performance work, and maintenance moving.</p>
<h3>Enhancements</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/j178/prek/blob/master/CHANGELOG.md">prek's
changelog</a>.</em></p>
<blockquote>
<h2>0.4.4</h2>
<p>Released on 2026-06-04.</p>
<h3>Highlights</h3>
<p>0.4.4 makes <code>prek run</code> easier to watch and easier to
slice.</p>
<p>Hook stream output now shows a small live preview under the running
hook in the
progress UI. Long-running hooks no longer look stuck while they are
producing
logs, and failed hooks are easier to diagnose because recent output is
already
visible before the final result.</p>
<p>The new group selector lets a single config support different
workflows. Tag
hooks with <code>groups</code>, then select or exclude those groups at
run time:</p>
<pre lang="yaml"><code>repos:
  - repo: local
    hooks:
      - id: format
        name: Format Python
        language: system
        entry: ruff format
        groups: [format, ci]
<pre><code>  - id: lint
    name: Lint Python
    language: system
    entry: ruff check
    groups: [lint, ci]
</code></pre>
<p></code></pre></p>
<pre lang="bash"><code>prek run --all-files --group ci
prek run --all-files --no-group format
</code></pre>
<p>This is useful when local development, CI, slow validation, or
project-specific
checks need different hook sets without splitting the config.</p>
<h3>Enhancements</h3>
<ul>
<li>Add hook group filters to <code>prek run</code> (<a
href="https://redirect.github.com/j178/prek/pull/2141">#2141</a>)</li>
<li>Delay hook output preview rendering (<a
href="https://redirect.github.com/j178/prek/pull/2140">#2140</a>)</li>
<li>Stream hook output in progress UI (<a
href="https://redirect.github.com/j178/prek/pull/2136">#2136</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Fix intent-to-add stash restore (<a
href="https://redirect.github.com/j178/prek/pull/2143">#2143</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f44270e63f"><code>f44270e</code></a>
Bump version 0.4.4 (<a
href="https://redirect.github.com/j178/prek/issues/2148">#2148</a>)</li>
<li><a
href="da457c57b5"><code>da457c5</code></a>
Document hook stage file input (<a
href="https://redirect.github.com/j178/prek/issues/2147">#2147</a>)</li>
<li><a
href="0fa29294fa"><code>0fa2929</code></a>
Add hook group filters to <code>prek run</code> (<a
href="https://redirect.github.com/j178/prek/issues/2141">#2141</a>)</li>
<li><a
href="9b0047ffb3"><code>9b0047f</code></a>
Fix intent-to-add stash restore (<a
href="https://redirect.github.com/j178/prek/issues/2143">#2143</a>)</li>
<li><a
href="00b2520f41"><code>00b2520</code></a>
Delay hook output preview rendering (<a
href="https://redirect.github.com/j178/prek/issues/2140">#2140</a>)</li>
<li><a
href="a54fdf0935"><code>a54fdf0</code></a>
Simplify hook output preview rendering (<a
href="https://redirect.github.com/j178/prek/issues/2139">#2139</a>)</li>
<li><a
href="ab7165d5cd"><code>ab7165d</code></a>
Stream hook output in progress UI (<a
href="https://redirect.github.com/j178/prek/issues/2136">#2136</a>)</li>
<li><a
href="f60958443f"><code>f609584</code></a>
Remove unpinned dotnet test (<a
href="https://redirect.github.com/j178/prek/issues/2137">#2137</a>)</li>
<li><a
href="ce0d8b34de"><code>ce0d8b3</code></a>
Update Rust to 1.96 (<a
href="https://redirect.github.com/j178/prek/issues/2134">#2134</a>)</li>
<li><a
href="1815fc50cc"><code>1815fc5</code></a>
Update PyPI Downloads badge to dynamic JSON</li>
<li>Additional commits viewable in <a
href="https://github.com/j178/prek/compare/v0.3.13...v0.4.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `ruff` from 0.15.12 to 0.15.16
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.16</h2>
<h2>Release Notes</h2>
<p>Released on 2026-06-04.</p>
<h3>Preview features</h3>
<ul>
<li>[<code>flake8-async</code>] Implement
<code>yield-in-context-manager-in-async-generator</code>
(<code>ASYNC119</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24644">#24644</a>)</li>
<li>[<code>pylint</code>] Narrow diagnostic range and exclude cases
without exception handlers (<code>PLW0717</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25440">#25440</a>)</li>
<li>[<code>ruff</code>] Treat <code>yield</code> before
<code>break</code> from a terminal loop as terminal
(<code>RUF075</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25447">#25447</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>[<code>eradicate</code>] Avoid flagging <code>ruff:ignore</code>
comments as code (<code>ERA001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25537">#25537</a>)</li>
<li>[<code>eradicate</code>] Fix <code>ERA001</code>/<code>RUF100</code>
conflict when <code>noqa</code> is on commented-out code (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25414">#25414</a>)</li>
<li>[<code>pyflakes</code>] Avoid removing the <code>format</code> call
when it would change behavior (<code>F523</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25320">#25320</a>)</li>
<li>[<code>pylint</code>] Avoid syntax errors in invalid character
replacements in f-strings before Python 3.12 (<code>PLE2510</code>,
<code>PLE2512</code>, <code>PLE2513</code>, <code>PLE2514</code>,
<code>PLE2515</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25544">#25544</a>)</li>
<li>[<code>pyupgrade</code>] Avoid converting <code>format</code> calls
with more kinds of side effects (<code>UP032</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25484">#25484</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-pytest-style</code>] Avoid fixes for ambiguous
<code>argnames</code> and <code>argvalues</code> combinations
(<code>PT006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24776">#24776</a>)</li>
</ul>
<h3>Performance</h3>
<ul>
<li>Drop excess capacity from statement suites during parsing (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25368">#25368</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>[<code>pydocstyle</code>] Improve discoverability of rules enabled
for each convention (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24973">#24973</a>)</li>
<li>[<code>ruff</code>] Restore example code for Python versions before
3.15 (<code>RUF017</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25439">#25439</a>)</li>
<li>Fix typo <code>bin/active</code> → <code>bin/activate</code> in
tutorial (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25473">#25473</a>)</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>Shrink additional parser AST collections (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25465">#25465</a>)</li>
</ul>
<h3>Contributors</h3>
<ul>
<li><a
href="https://github.com/Redslayer112"><code>@​Redslayer112</code></a></li>
<li><a
href="https://github.com/koriyoshi2041"><code>@​koriyoshi2041</code></a></li>
<li><a
href="https://github.com/George-Ogden"><code>@​George-Ogden</code></a></li>
<li><a
href="https://github.com/TejasAmle"><code>@​TejasAmle</code></a></li>
<li><a
href="https://github.com/anishgirianish"><code>@​anishgirianish</code></a></li>
<li><a href="https://github.com/ntBre"><code>@​ntBre</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/loganrosen"><code>@​loganrosen</code></a></li>
<li><a
href="https://github.com/RafaelJohn9"><code>@​RafaelJohn9</code></a></li>
<li><a
href="https://github.com/adityasingh2400"><code>@​adityasingh2400</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.16</h2>
<p>Released on 2026-06-04.</p>
<h3>Preview features</h3>
<ul>
<li>[<code>flake8-async</code>] Implement
<code>yield-in-context-manager-in-async-generator</code>
(<code>ASYNC119</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24644">#24644</a>)</li>
<li>[<code>pylint</code>] Narrow diagnostic range and exclude cases
without exception handlers (<code>PLW0717</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25440">#25440</a>)</li>
<li>[<code>ruff</code>] Treat <code>yield</code> before
<code>break</code> from a terminal loop as terminal
(<code>RUF075</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25447">#25447</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>[<code>eradicate</code>] Avoid flagging <code>ruff:ignore</code>
comments as code (<code>ERA001</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25537">#25537</a>)</li>
<li>[<code>eradicate</code>] Fix <code>ERA001</code>/<code>RUF100</code>
conflict when <code>noqa</code> is on commented-out code (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25414">#25414</a>)</li>
<li>[<code>pyflakes</code>] Avoid removing the <code>format</code> call
when it would change behavior (<code>F523</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25320">#25320</a>)</li>
<li>[<code>pylint</code>] Avoid syntax errors in invalid character
replacements in f-strings before Python 3.12 (<code>PLE2510</code>,
<code>PLE2512</code>, <code>PLE2513</code>, <code>PLE2514</code>,
<code>PLE2515</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25544">#25544</a>)</li>
<li>[<code>pyupgrade</code>] Avoid converting <code>format</code> calls
with more kinds of side effects (<code>UP032</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25484">#25484</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>[<code>flake8-pytest-style</code>] Avoid fixes for ambiguous
<code>argnames</code> and <code>argvalues</code> combinations
(<code>PT006</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24776">#24776</a>)</li>
</ul>
<h3>Performance</h3>
<ul>
<li>Drop excess capacity from statement suites during parsing (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25368">#25368</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>[<code>pydocstyle</code>] Improve discoverability of rules enabled
for each convention (<a
href="https://redirect.github.com/astral-sh/ruff/pull/24973">#24973</a>)</li>
<li>[<code>ruff</code>] Restore example code for Python versions before
3.15 (<code>RUF017</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25439">#25439</a>)</li>
<li>Fix typo <code>bin/active</code> → <code>bin/activate</code> in
tutorial (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25473">#25473</a>)</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>Shrink additional parser AST collections (<a
href="https://redirect.github.com/astral-sh/ruff/pull/25465">#25465</a>)</li>
</ul>
<h3>Contributors</h3>
<ul>
<li><a
href="https://github.com/Redslayer112"><code>@​Redslayer112</code></a></li>
<li><a
href="https://github.com/koriyoshi2041"><code>@​koriyoshi2041</code></a></li>
<li><a
href="https://github.com/George-Ogden"><code>@​George-Ogden</code></a></li>
<li><a
href="https://github.com/TejasAmle"><code>@​TejasAmle</code></a></li>
<li><a
href="https://github.com/anishgirianish"><code>@​anishgirianish</code></a></li>
<li><a href="https://github.com/ntBre"><code>@​ntBre</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a
href="https://github.com/loganrosen"><code>@​loganrosen</code></a></li>
<li><a
href="https://github.com/RafaelJohn9"><code>@​RafaelJohn9</code></a></li>
<li><a
href="https://github.com/adityasingh2400"><code>@​adityasingh2400</code></a></li>
</ul>
<h2>0.15.15</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6c498ab539"><code>6c498ab</code></a>
Bump 0.15.16 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25635">#25635</a>)</li>
<li><a
href="e51e132831"><code>e51e132</code></a>
[<code>flake8-async</code>] Implement
<code>yield-in-context-manager-in-async-generator</code> (`AS...</li>
<li><a
href="7c6dcd9f26"><code>7c6dcd9</code></a>
[ty] Add caching for pattern match narrowing (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25613">#25613</a>)</li>
<li><a
href="27058fc071"><code>27058fc</code></a>
[ty] Compact retained definition and expression identities (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25606">#25606</a>)</li>
<li><a
href="bf80d05f00"><code>bf80d05</code></a>
Fix CODEOWNERS syntax (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25622">#25622</a>)</li>
<li><a
href="10ccd511e9"><code>10ccd51</code></a>
Shrink additional parser AST collections (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25465">#25465</a>)</li>
<li><a
href="0d7135f4d2"><code>0d7135f</code></a>
[ty] Upgrade Salsa (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25545">#25545</a>)</li>
<li><a
href="49493a3cea"><code>49493a3</code></a>
[ty] Show type alias value on hover (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25381">#25381</a>)</li>
<li><a
href="85207d3b76"><code>85207d3</code></a>
[ty] sys.implementation.version is not sys.version_info (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25608">#25608</a>)</li>
<li><a
href="a8a0614348"><code>a8a0614</code></a>
[ty] Avoid retaining duplicate function signatures (<a
href="https://redirect.github.com/astral-sh/ruff/issues/25609">#25609</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.12...0.15.16">compare
view</a></li>
</ul>
</details>
<br />


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 <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: CaliBrain <calibrain@l4n.xyz>
This commit is contained in:
dependabot[bot]
2026-06-09 20:53:20 -04:00
committed by GitHub
parent 8c86cdc1dd
commit 5d5b8d4bef
2 changed files with 117 additions and 106 deletions

View File

@@ -22,25 +22,25 @@ dependencies = [
"qbittorrent-api",
"transmission-rpc",
"authlib>=1.7.2,<1.8",
"apprise>=1.10.0",
"apprise>=1.11.0",
]
[project.optional-dependencies]
browser = [
"pyvirtualdisplay",
"pyautogui",
"seleniumbase==4.48.4",
"seleniumbase==4.49.7",
"python-xlib",
]
[dependency-groups]
dev = [
"basedpyright>=1.39.3",
"basedpyright>=1.39.6",
"prek",
"pytest",
"pytest-cov",
"pytest-xdist>=3.8.0",
"ruff==0.15.12",
"ruff==0.15.16",
"vulture>=2.14",
]

215
uv.lock generated
View File

@@ -4,7 +4,7 @@ requires-python = ">=3.14"
[[package]]
name = "apprise"
version = "1.10.0"
version = "1.11.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "certifi" },
@@ -15,9 +15,9 @@ dependencies = [
{ name = "requests-oauthlib" },
{ name = "tzdata", marker = "sys_platform == 'win32'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/2f/74/9c16829d3e7e45ce7daf1b704687fa4fde7ea00d72eafe8de18c72bf5995/apprise-1.10.0.tar.gz", hash = "sha256:b768f32d99e45ed5f4c3eef1f67903e803c97f97ba61a531a5d0a45d40df90a8", size = 2188611, upload-time = "2026-04-26T14:23:51.928Z" }
sdist = { url = "https://files.pythonhosted.org/packages/a8/f8/83f4e2aaaa0342dc67f783bf84427d9ff5cfa4ecde3a52d9b587740a91ee/apprise-1.11.0.tar.gz", hash = "sha256:3b1e6f5365b302d1fae270c0c8007958e54224b9b7808acec69006ea27f5b8a2", size = 2337248, upload-time = "2026-05-29T17:52:29.198Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/69/f9/177a73589d34e676d10bc4c6a8328710e28af5907234e9f25bb149a04eec/apprise-1.10.0-py3-none-any.whl", hash = "sha256:e685303d3568bb7a057d6ddeafd27ee12fff183ca36483ad4bacc0b9b4efa82c", size = 1632292, upload-time = "2026-04-26T14:23:49.28Z" },
{ url = "https://files.pythonhosted.org/packages/5e/79/1483693160917522703708e45b4045946d86be634b8af2c2ac9f361f8fa3/apprise-1.11.0-py3-none-any.whl", hash = "sha256:6abc6d9f8dddedfe14b2918c3553146894ac6e3dad401deaf854b20b4c455d38", size = 1712975, upload-time = "2026-05-29T17:52:26.645Z" },
]
[[package]]
@@ -44,14 +44,14 @@ wheels = [
[[package]]
name = "basedpyright"
version = "1.39.3"
version = "1.39.6"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "nodejs-wheel-binaries" },
]
sdist = { url = "https://files.pythonhosted.org/packages/04/19/5a5b9b9197973da732638957be3a65cf514d2f5a4964eeedbf33b6c65bbd/basedpyright-1.39.3.tar.gz", hash = "sha256:2f794e6b5f4260fb89f614ca6cd23c6f305373bb6b50c4ed7794ff2ae647fb14", size = 25503187, upload-time = "2026-04-20T22:14:47.424Z" }
sdist = { url = "https://files.pythonhosted.org/packages/7a/1a/48296b4479ccc9051eb9617a6507a69a68f5b68693fb6a118cfe08199270/basedpyright-1.39.6.tar.gz", hash = "sha256:d00ec5f8ba4e1a67dfc2fa3a9474229c89f61f207d14c02d320db78f57aa16ef", size = 25504244, upload-time = "2026-05-24T07:44:41.864Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/54/5c/f950c1239ad26f3bb453e665428a2cf1893995de725a5eb0b64a2520b366/basedpyright-1.39.3-py3-none-any.whl", hash = "sha256:aba760dc83307727554f936d6b4381caa14482f30dbc2173167710e217c1f7ab", size = 12419181, upload-time = "2026-04-20T22:14:51.975Z" },
{ url = "https://files.pythonhosted.org/packages/d4/07/6d1b3192715d42e8c9887876684a941eff28ec5d79c23a0f3758377e2182/basedpyright-1.39.6-py3-none-any.whl", hash = "sha256:5e0b9befbae6b26d0fbcc6645ac26923725e749d1224539e24f05ab07f9365ad", size = 13182122, upload-time = "2026-05-24T07:44:47.086Z" },
]
[[package]]
@@ -101,11 +101,11 @@ wheels = [
[[package]]
name = "certifi"
version = "2026.4.22"
version = "2026.5.20"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/25/ee/6caf7a40c36a1220410afe15a1cc64993a1f864871f698c0f93acb72842a/certifi-2026.4.22.tar.gz", hash = "sha256:8d455352a37b71bf76a79caa83a3d6c25afee4a385d632127b6afb3963f1c580", size = 137077, upload-time = "2026-04-22T11:26:11.191Z" }
sdist = { url = "https://files.pythonhosted.org/packages/f3/ce/ee2ecad540810a79593028e88299baeae54d346cc7a0d94b6199988b89b1/certifi-2026.5.20.tar.gz", hash = "sha256:69dea482ab64caa7b9f6aba1c6bf48bb6a5448d1c0f1b17ab42ad8c763a5344d", size = 135422, upload-time = "2026-05-20T11:46:50.073Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl", hash = "sha256:3cb2210c8f88ba2318d29b0388d1023c8492ff72ecdde4ebdaddbb13a31b1c4a", size = 135707, upload-time = "2026-04-22T11:26:09.372Z" },
{ url = "https://files.pythonhosted.org/packages/59/8c/57e832b7af6d7c5abe66eb3fbe3a3a32f4d11ea23a1aa7131371035be991/certifi-2026.5.20-py3-none-any.whl", hash = "sha256:3c52e209ba0a4ad7aebe60436a4ab349c39e1e602e8c134221e546902ad25897", size = 134134, upload-time = "2026-05-20T11:46:48.578Z" },
]
[[package]]
@@ -360,11 +360,11 @@ wheels = [
[[package]]
name = "filelock"
version = "3.29.0"
version = "3.29.1"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/b5/fe/997687a931ab51049acce6fa1f23e8f01216374ea81374ddee763c493db5/filelock-3.29.0.tar.gz", hash = "sha256:69974355e960702e789734cb4871f884ea6fe50bd8404051a3530bc07809cf90", size = 57571, upload-time = "2026-04-19T15:39:10.068Z" }
sdist = { url = "https://files.pythonhosted.org/packages/1f/f9/f38573ed5844586db374d085911740a501ccfa373b455fc9413f09f85237/filelock-3.29.1.tar.gz", hash = "sha256:d97e6b1b9757569626c58caa07dc4beb1613f4a2938b1e8cc81afca398906c9e", size = 59335, upload-time = "2026-06-03T15:19:04.053Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/81/47/dd9a212ef6e343a6857485ffe25bba537304f1913bdbed446a23f7f592e1/filelock-3.29.0-py3-none-any.whl", hash = "sha256:96f5f6344709aa1572bbf631c640e4ebeeb519e08da902c39a001882f30ac258", size = 39812, upload-time = "2026-04-19T15:39:08.752Z" },
{ url = "https://files.pythonhosted.org/packages/4c/a0/614c5fe402fd88951df45f4dda2fa3b4e17a99ecd92340771929169b3b95/filelock-3.29.1-py3-none-any.whl", hash = "sha256:85199dfd706869641b72b2e8955d5416a4b2b7dc4b0e8e6d97b4cc1299a6983b", size = 40750, upload-time = "2026-06-03T15:19:02.959Z" },
]
[[package]]
@@ -416,7 +416,7 @@ wheels = [
[[package]]
name = "gevent"
version = "26.4.0"
version = "26.5.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "cffi", marker = "platform_python_implementation == 'CPython' and sys_platform == 'win32'" },
@@ -424,16 +424,26 @@ dependencies = [
{ name = "zope-event" },
{ name = "zope-interface" },
]
sdist = { url = "https://files.pythonhosted.org/packages/20/27/1062fa31333dc3428a1f5f33cd6598b0552165ba679ca3ba116de42c9e8e/gevent-26.4.0.tar.gz", hash = "sha256:288d03addfccf0d1c67268358b6759b04392bf3bc35d26f3d9a45c82899c292d", size = 6242440, upload-time = "2026-04-09T12:08:19.482Z" }
sdist = { url = "https://files.pythonhosted.org/packages/c4/cb/98aa3a299e2fc4a2372b5d124863e02965b64579ffc29fe54d0641e65b2f/gevent-26.5.0.tar.gz", hash = "sha256:1655eb04c1e20d71b2aa4a3c7528162dd58ff6cc46a037af1f01f534c80fefba", size = 6712354, upload-time = "2026-05-20T21:22:45.132Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/7e/f3/64638a941988f09aa1816e2674eb1efb215b6fa64a97edef6e25177b0845/gevent-26.4.0-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:7ab0f183a6fd2369eef619832eef14f1f2f69c605163c3f2dc41deb799af4a71", size = 2967206, upload-time = "2026-04-08T21:25:44.73Z" },
{ url = "https://files.pythonhosted.org/packages/f6/70/a86be65a51d3ebb92c82a70adc9c5c32b1a9d9579120d0be1db7cf534ce0/gevent-26.4.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:7e5906860e632bf965e1966c57e6bfc19dcb79dc262f04fdb0a9d7c12147bf69", size = 1792916, upload-time = "2026-04-08T22:23:22.006Z" },
{ url = "https://files.pythonhosted.org/packages/40/92/18fdb4b28f20129395f1c041773adee99e7fc2bcfff216df93bfb80787d5/gevent-26.4.0-cp314-cp314-manylinux_2_28_ppc64le.whl", hash = "sha256:297a361071dc6708115d4544859321e93b02a6cd5823ba02c0a909530a519d45", size = 1886617, upload-time = "2026-04-08T22:27:13.716Z" },
{ url = "https://files.pythonhosted.org/packages/af/c9/d02222ecf79d10c8a0c2755661485395b58c4bfffaafd88bcc230ce392de/gevent-26.4.0-cp314-cp314-manylinux_2_28_s390x.whl", hash = "sha256:7e74f59e5c9011afa2a9cb7106bb9a59f2a1f74c3d7b272c1b852eb0bc0b8f90", size = 1837660, upload-time = "2026-04-08T22:34:40.823Z" },
{ url = "https://files.pythonhosted.org/packages/46/85/9376d125fa4f7b0f269925d0d622eda0ff8f8dfc8d0c097a096c511fc738/gevent-26.4.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:45d6010a6a981f5a2b3411c4e38fbe305a1b46e4b12db3b4914775927dea7ba4", size = 2119342, upload-time = "2026-04-08T21:54:17.747Z" },
{ url = "https://files.pythonhosted.org/packages/b1/c4/1fe2817daca8e97c365fd739dd4057f71cce26ef600fb8465deb8060c83c/gevent-26.4.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:dc38137ba2f43794c488615aafa2eefd0cc142f484a8274d4c827ed7a031a1e2", size = 1805672, upload-time = "2026-04-08T22:26:55.792Z" },
{ url = "https://files.pythonhosted.org/packages/e7/cc/ccbcbd56e7e85482291fbb90a317f5febf630ec4174a91506f4167ba0912/gevent-26.4.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:29a225d2d4da37e20c7a246754a64442d0e43e4534b8cc764f89530bb22a4237", size = 2145594, upload-time = "2026-04-08T22:00:05.275Z" },
{ url = "https://files.pythonhosted.org/packages/8e/b9/7dd37b6001d16f692b1bfb6e68cad642beb38b34a753c29bbff312f46e4b/gevent-26.4.0-cp314-cp314-win_amd64.whl", hash = "sha256:d1c08bc9bb6bd79732a26710a99588b5e9b67b668e165dd609704b876f41baab", size = 1703189, upload-time = "2026-04-08T22:48:31.713Z" },
{ url = "https://files.pythonhosted.org/packages/17/55/7d98d3888e7bb9ad4656420dec69232ecbbea48792aff9295d0ad7cf8435/gevent-26.5.0-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:75a0050e4b87f08ddee7e56f59e6014cd7fcdc3153046c09a847940515d12c85", size = 2968223, upload-time = "2026-05-20T20:13:17.223Z" },
{ url = "https://files.pythonhosted.org/packages/f8/b4/e8e116fcbcb9dc0bf3acc50037f86e1204c217c8ed5defde68be11b3aab6/gevent-26.5.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:fd1a0b83a04e19378d9466ae0ee2b5937cf1d7fbfdcb916b2aea82179a208574", size = 1793926, upload-time = "2026-05-20T21:17:34.321Z" },
{ url = "https://files.pythonhosted.org/packages/28/07/7b267e9754b661defb93542e97731a4df21f8a40dc0f6c853faa717cf124/gevent-26.5.0-cp314-cp314-manylinux_2_28_ppc64le.whl", hash = "sha256:4c964c15076e76391d523ec24202f579a2535f7e301a40efb1656ae046d3eb69", size = 1887632, upload-time = "2026-05-20T21:16:04.158Z" },
{ url = "https://files.pythonhosted.org/packages/5c/50/b47d29e99449bd13b557ffa451401dc13d397a9923f562ef90a4e8514502/gevent-26.5.0-cp314-cp314-manylinux_2_28_s390x.whl", hash = "sha256:45d5438d1c84da5df7e832434627624709543630977332bb4e2d05ecca362cc9", size = 1838688, upload-time = "2026-05-20T21:30:57.979Z" },
{ url = "https://files.pythonhosted.org/packages/8b/eb/5b54ccff11bc7d7bebd40a24571ccc115d5cdae4f6c32ab457b43b436e42/gevent-26.5.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:354f35924113abc954819216c2a6ee16751958c615681e0490946e31b437bd2f", size = 2120351, upload-time = "2026-05-20T20:35:32.699Z" },
{ url = "https://files.pythonhosted.org/packages/9c/70/30fd325c30e04b1e5174c61945e17421d53ddb2450366cc52cef234f8c4b/gevent-26.5.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a47cd2d32f6404212d374ad8014a3491d7477dcf0cc09c5a2308ad6d325fd663", size = 1806684, upload-time = "2026-05-20T21:16:43.87Z" },
{ url = "https://files.pythonhosted.org/packages/cd/e8/fbf911ac3f9524ecfaed174d100fde671904ab8db92ceaf07faaebd13386/gevent-26.5.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:032157cebdedb84f2f52cdd980f2f5f2623eed6a8f083aadf44b44c47f628642", size = 2146606, upload-time = "2026-05-20T20:43:32.216Z" },
{ url = "https://files.pythonhosted.org/packages/9e/4d/284fcbbfde66fd978c2980c1fbe0eabd586af6e4b728649e9cf459e8b38f/gevent-26.5.0-cp314-cp314-win_amd64.whl", hash = "sha256:9c414935ba5fc88359110968851d3616f119082c937390d00a1c0f4f59be814f", size = 1722497, upload-time = "2026-05-20T20:16:44.274Z" },
{ url = "https://files.pythonhosted.org/packages/15/d2/9f66eb53434704402be0ba733bf3320bf589671a4b76fac52a7d6077e972/gevent-26.5.0-cp314-cp314-win_arm64.whl", hash = "sha256:2a0f5993a04b95a35b3a118b1a58ba272833f9b547b774001dea29f90620882f", size = 1574249, upload-time = "2026-05-20T20:15:50.873Z" },
{ url = "https://files.pythonhosted.org/packages/dc/d5/b4c50adb761878e3c96642b9f79bf44cee3120f3df55cd40876f51d89866/gevent-26.5.0-cp315-cp315-macosx_11_0_universal2.whl", hash = "sha256:2e117df896a2660c9ebd4e2b5afc02dfd6e2ddf9b495e787e67c72d105432b09", size = 2971993, upload-time = "2026-05-20T20:12:50.845Z" },
{ url = "https://files.pythonhosted.org/packages/03/83/71c2a945e80198422d1d93dbe67355f249fb456b451bf9201199d3ef6a1a/gevent-26.5.0-cp315-cp315-manylinux_2_28_aarch64.whl", hash = "sha256:af5ffe9c11ffb8a39b6bef2e8b722aa2043ae4980977915c6aa8c68b4bc26e46", size = 1796658, upload-time = "2026-05-20T21:17:35.968Z" },
{ url = "https://files.pythonhosted.org/packages/42/96/548ca77aed5cb9a44e855a6c23ebceeb3554a0ea9ca0c01c311878899a3e/gevent-26.5.0-cp315-cp315-manylinux_2_28_ppc64le.whl", hash = "sha256:7da34aef7e87c43dd3662e5785e79ed505c01399a7cb42876d2d8925969fd75f", size = 1891473, upload-time = "2026-05-20T21:16:05.657Z" },
{ url = "https://files.pythonhosted.org/packages/f6/4f/f48bd47d5287afb0fbcc56165f3ed47583f1803bad401653fe27e71ade2d/gevent-26.5.0-cp315-cp315-manylinux_2_28_s390x.whl", hash = "sha256:1c6293a7046bcc6f3d8972a74b19cd7a4cfd02d3881edf0fcf827aa514bd247b", size = 1841429, upload-time = "2026-05-20T21:30:59.907Z" },
{ url = "https://files.pythonhosted.org/packages/a0/72/1925215fc720d2561fa3ec8d4af5f098f8d0cbfa76a45fafed6e5ade7718/gevent-26.5.0-cp315-cp315-manylinux_2_28_x86_64.whl", hash = "sha256:d3bde0f140a275b2fa88e4b6516bda85551930e10bc2fd95e18c1b7d11cb780c", size = 2123895, upload-time = "2026-05-20T20:35:34.964Z" },
{ url = "https://files.pythonhosted.org/packages/83/59/0f584f6b1170c9a6abd9b70ccf5e9cc5ead34eabafabc0e21876ef0fe6f7/gevent-26.5.0-cp315-cp315-musllinux_1_2_aarch64.whl", hash = "sha256:e29fb4b17d9958ec8cb7f6339a111b29bc23f2c2efbef86189d1248bb4862d17", size = 1809047, upload-time = "2026-05-20T21:16:45.977Z" },
{ url = "https://files.pythonhosted.org/packages/82/88/61e854bfd98ac22eac78a97fc6db10de0f9ace46514072b435c217168729/gevent-26.5.0-cp315-cp315-musllinux_1_2_x86_64.whl", hash = "sha256:b2239df2f7570efa03736678f3f053bb1bdd22a8a16cd28a2feb7d32ea5f533f", size = 2150764, upload-time = "2026-05-20T20:43:33.781Z" },
{ url = "https://files.pythonhosted.org/packages/b9/f5/af048b97433d7f9a7df7f5510b2c46918b7d073dcfb3bf6d0ef0e5a83dcc/gevent-26.5.0-cp315-cp315-win_amd64.whl", hash = "sha256:aae214952fd38d27a42dc416bb70193962ec932384b63445d29bbb5817a1c042", size = 1722600, upload-time = "2026-05-20T20:19:56.81Z" },
{ url = "https://files.pythonhosted.org/packages/11/95/fb74a2299c6a2d78d9de12deaaac640ab5d2ef96a8e0f97a3ff84b9ca84b/gevent-26.5.0-cp315-cp315-win_arm64.whl", hash = "sha256:f7067564f139e33bf26a31ee3b13d168d76eb99a44b85ced626652b158baa80c", size = 1574406, upload-time = "2026-05-20T20:17:12.125Z" },
]
[[package]]
@@ -498,11 +508,11 @@ wheels = [
[[package]]
name = "idna"
version = "3.13"
version = "3.18"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/ce/cc/762dfb036166873f0059f3b7de4565e1b5bc3d6f28a414c13da27e442f99/idna-3.13.tar.gz", hash = "sha256:585ea8fe5d69b9181ec1afba340451fba6ba764af97026f92a91d4eef164a242", size = 194210, upload-time = "2026-04-22T16:42:42.314Z" }
sdist = { url = "https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz", hash = "sha256:ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848", size = 196711, upload-time = "2026-06-02T14:34:07.794Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl", hash = "sha256:892ea0cde124a99ce773decba204c5552b69c3c67ffd5f232eb7696135bc8bb3", size = 68629, upload-time = "2026-04-22T16:42:40.909Z" },
{ url = "https://files.pythonhosted.org/packages/1e/5e/d4e9f1a599fb8e573b7b87160658329fbf28d19eac2718f51fc3def3aa5a/idna-3.18-py3-none-any.whl", hash = "sha256:7f952cbe720b688055e3f87de14f5c3e5fdaa8bc3928985c4077ca689de849a2", size = 65455, upload-time = "2026-06-02T14:34:06.319Z" },
]
[[package]]
@@ -558,14 +568,14 @@ wheels = [
[[package]]
name = "markdown-it-py"
version = "4.0.0"
version = "4.2.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "mdurl" },
]
sdist = { url = "https://files.pythonhosted.org/packages/5b/f5/4ec618ed16cc4f8fb3b701563655a69816155e79e24a17b651541804721d/markdown_it_py-4.0.0.tar.gz", hash = "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3", size = 73070, upload-time = "2025-08-11T12:57:52.854Z" }
sdist = { url = "https://files.pythonhosted.org/packages/06/ff/7841249c247aa650a76b9ee4bbaeae59370dc8bfd2f6c01f3630c35eb134/markdown_it_py-4.2.0.tar.gz", hash = "sha256:04a21681d6fbb623de53f6f364d352309d4094dd4194040a10fd51833e418d49", size = 82454, upload-time = "2026-05-07T12:08:28.36Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321, upload-time = "2025-08-11T12:57:51.923Z" },
{ url = "https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl", hash = "sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a", size = 91687, upload-time = "2026-05-07T12:08:27.182Z" },
]
[[package]]
@@ -684,11 +694,11 @@ wheels = [
[[package]]
name = "parse"
version = "1.21.1"
version = "1.22.1"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/fd/18/0bea374e5ec3c8ba15365570002187f3fef9d7265ffbc2f649529878cc80/parse-1.21.1.tar.gz", hash = "sha256:825e1a88e9d9fb481b8d2ca709c6195558b6eaa97c559ad3a9a20aa2d12815a3", size = 29105, upload-time = "2026-02-19T02:20:07.645Z" }
sdist = { url = "https://files.pythonhosted.org/packages/a4/f2/0b504486c2a5564798607d3860e48ed19c6443d5e9cc3ec61cc6b8b4ef58/parse-1.22.1.tar.gz", hash = "sha256:d3a4740ec3da338e2b258b2d69741b731eadfddca59e24a14bc4ee5fce38c911", size = 36970, upload-time = "2026-05-26T03:44:52.624Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/c3/13/114daf766c33aec6c5a3954e7ea653f8a7ade9602c5c5a2228281698c490/parse-1.21.1-py2.py3-none-any.whl", hash = "sha256:55339ca698019815df3b8e8b550e5933933527e623b0cdf1ca2f404da35ffb47", size = 19693, upload-time = "2026-02-19T02:20:06.575Z" },
{ url = "https://files.pythonhosted.org/packages/6f/c5/7c16e99869e1f422629092cfd23e3b58e461988c3f9c36fd3624bb4142e6/parse-1.22.1-py2.py3-none-any.whl", hash = "sha256:20f0925a46f06602485ac90d751764d0697fd8455aaa97489ba8953a4b66de32", size = 20925, upload-time = "2026-05-26T03:44:51.156Z" },
]
[[package]]
@@ -720,20 +730,20 @@ wheels = [
[[package]]
name = "pip"
version = "26.1.1"
version = "26.1.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/b6/48/cb9b7a682f6fe01a4221e1728941dd4ac3cd9090a17db3779d6ff490b602/pip-26.1.1.tar.gz", hash = "sha256:d36762751d156a4ee895de8af39aa0abeeeb577f93a2eca6ab62467bbf0f8a78", size = 1840400, upload-time = "2026-05-04T19:02:21.248Z" }
sdist = { url = "https://files.pythonhosted.org/packages/01/91/47e7d486260f618783899587af63ccf7980fb60245c3e63dd4571c6b57ad/pip-26.1.2.tar.gz", hash = "sha256:f49cd134c61cf2fd75e0ce2676db03e4054504a5a4986d00f8299ae632dc4605", size = 1840799, upload-time = "2026-05-31T17:33:58.56Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/3a/eb/fea4d1d51c49832120f7f285d07306db3960f423a2612c6057caf3e8196f/pip-26.1.1-py3-none-any.whl", hash = "sha256:99cb1c2899893b075ff56e4ed0af55669a955b49ad7fb8d8603ecdaf4ed653fb", size = 1812777, upload-time = "2026-05-04T19:02:18.9Z" },
{ url = "https://files.pythonhosted.org/packages/5d/95/6b5cb3461ea5673ba0995989746db58eb18b91b54dbf331e72f569540946/pip-26.1.2-py3-none-any.whl", hash = "sha256:382ff9f685ee3bc25864f820aa50505825f10f5458ffff07e30a6d96e5715cab", size = 1813144, upload-time = "2026-05-31T17:33:56.772Z" },
]
[[package]]
name = "platformdirs"
version = "4.9.6"
version = "4.10.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/9f/4a/0883b8e3802965322523f0b200ecf33d31f10991d0401162f4b23c698b42/platformdirs-4.9.6.tar.gz", hash = "sha256:3bfa75b0ad0db84096ae777218481852c0ebc6c727b3168c1b9e0118e458cf0a", size = 29400, upload-time = "2026-04-09T00:04:10.812Z" }
sdist = { url = "https://files.pythonhosted.org/packages/d7/47/e4501f49c178ae1d9f4a75073fda4204f52647993f075a9db4d14930e0c5/platformdirs-4.10.0.tar.gz", hash = "sha256:31e761a6a0ca04faf7353ea759bdba55652be214725111e5aac52dfa29d4bef7", size = 31224, upload-time = "2026-05-28T03:32:53.587Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/75/a6/a0a304dc33b49145b21f4808d763822111e67d1c3a32b524a1baf947b6e1/platformdirs-4.9.6-py3-none-any.whl", hash = "sha256:e61adb1d5e5cb3441b4b7710bea7e4c12250ca49439228cc1021c00dcfac0917", size = 21348, upload-time = "2026-04-09T00:04:09.463Z" },
{ url = "https://files.pythonhosted.org/packages/81/e6/cd9575ac904136b3cbf7aa7ee819ef86eedb7274e46f230e94ea4342e729/platformdirs-4.10.0-py3-none-any.whl", hash = "sha256:fb516cdb12eb0d857d0cd85a7c57cea4d060bee4578d6cf5a14dfdf8cbf8784a", size = 22743, upload-time = "2026-05-28T03:32:52.175Z" },
]
[[package]]
@@ -747,26 +757,26 @@ wheels = [
[[package]]
name = "prek"
version = "0.3.13"
version = "0.4.4"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/3c/59/0a279983f96bd5d538b4975f0a23121082aa3b8560b6649fdf61f8011b07/prek-0.3.13.tar.gz", hash = "sha256:c48586ee3708bfbf3df80121f55583e9a7d0fa166b08172c091fe5971e92a0ac", size = 444848, upload-time = "2026-05-05T18:07:09.076Z" }
sdist = { url = "https://files.pythonhosted.org/packages/f6/13/3d71b3adbf385f7dc7fb6e16d6e25421fd8398b45d8f8410a328bf22bd3f/prek-0.4.4.tar.gz", hash = "sha256:4ec5771153d158a0e4473933b7fd9b51e1b1f57f2df50aeb7560ea6812226dc5", size = 470641, upload-time = "2026-06-04T07:26:07.199Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/bc/6a/9baa2bda21dccc2927e952416f6cc23a75eb99c9ed18837164ac2e4a5640/prek-0.3.13-py3-none-linux_armv6l.whl", hash = "sha256:b00d38f01235073c35aa5f48df57fefef45a6cec2ae0884d750345a2c7220370", size = 5506622, upload-time = "2026-05-05T18:06:53.091Z" },
{ url = "https://files.pythonhosted.org/packages/56/77/d44b5d9bdca0879b865f8e47bf84cf5dc9e8b358d029e6d9b83d8809c116/prek-0.3.13-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:0d89ac712c60e34d1550a606ad5fdfb8ad71d44ced8afa2fa5cbc106be4abd9e", size = 5878743, upload-time = "2026-05-05T18:07:23.164Z" },
{ url = "https://files.pythonhosted.org/packages/08/cf/19e8525cde8b3aa12858aca434d1fa653ef3b152da5af11eafc857634dc2/prek-0.3.13-py3-none-macosx_11_0_arm64.whl", hash = "sha256:f9b5265863d18b5be4ea094fdce4fd6ca61a8c89a70ee3d8ee153b3e0ed6b272", size = 5434909, upload-time = "2026-05-05T18:07:25.276Z" },
{ url = "https://files.pythonhosted.org/packages/7a/9a/e5f97194782de4dab622ce09dafb3ebdd2ee4d354a83ac4def7ebeee236c/prek-0.3.13-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:64b59a1550780af2bba37297c704b17f81d8e9df6288af1fab4017938e33b1db", size = 5697536, upload-time = "2026-05-05T18:07:05.475Z" },
{ url = "https://files.pythonhosted.org/packages/c4/8c/e1f548ffc4b227e4c2b5a9b30f5978a7e0e6dad51305b97a2ba5b2a923e7/prek-0.3.13-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9ce6cd8f114ba9bbdbe97422103fd886101949b1c42e588a7543c4436ead2020", size = 5428160, upload-time = "2026-05-05T18:07:01.489Z" },
{ url = "https://files.pythonhosted.org/packages/8a/44/abd919b00905a32d21dca2cec32c707860cf217da2431b62dd52684b310e/prek-0.3.13-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cc03e924a24d8d961f56195853c8b206cb196be6db4ad8312125dae847d718ac", size = 5827275, upload-time = "2026-05-05T18:07:17.437Z" },
{ url = "https://files.pythonhosted.org/packages/af/ed/cafd2b80d58a83faf8371c6543bd1475a2224242a3294da7f8582f6aa551/prek-0.3.13-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7ca8c526a23873177fb3b92013500b08ef5f8bedc7263f9f3a44dd2f49645a26", size = 6710293, upload-time = "2026-05-05T18:07:10.663Z" },
{ url = "https://files.pythonhosted.org/packages/35/09/52a4a27596b764173a34d74db09356b30faaacb4a1075b75adbc036a0008/prek-0.3.13-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5bbb175478438a871e3281d2c3c3f067288af73ad81707a9bdebfd769766c7d", size = 6096556, upload-time = "2026-05-05T18:07:19.46Z" },
{ url = "https://files.pythonhosted.org/packages/63/60/80f61729ce6498815d46d5580cf76da2c157c9b6494046183682441a0ea3/prek-0.3.13-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:a65327a014d838341af757dfc05a706d10e8e33f039bc32bb3dbe2fa21c440c0", size = 5693267, upload-time = "2026-05-05T18:07:03.66Z" },
{ url = "https://files.pythonhosted.org/packages/36/9d/c7a663fe70676ffab2e0c6c9a71997a3ccd002ed5bc60b7422a937911af0/prek-0.3.13-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:b6a200843a36a5b0c41764ce7639ccb3471d48b097f1c5e3fc8f034219b42626", size = 5532865, upload-time = "2026-05-05T18:07:15.237Z" },
{ url = "https://files.pythonhosted.org/packages/32/68/506ef5a235536030e16f61e7210474554f6e05f845f27df5877d2dbb1a06/prek-0.3.13-py3-none-musllinux_1_1_armv7l.whl", hash = "sha256:bdacaad8f35f343e063d251211fe34db1de9e5cc591795361ad69a6485202258", size = 5395951, upload-time = "2026-05-05T18:06:55.183Z" },
{ url = "https://files.pythonhosted.org/packages/3e/00/22d7c6db7f43b58f7d015913c12660c9bbc82751cff6cfd8c31993cf30eb/prek-0.3.13-py3-none-musllinux_1_1_i686.whl", hash = "sha256:f00328f1c520d8fefb910ab0d3c6764ee330d227952baa19b7e3de7242bd8b3b", size = 5681195, upload-time = "2026-05-05T18:07:12.804Z" },
{ url = "https://files.pythonhosted.org/packages/10/e3/fdf9882238796914ddaf11381a9083b374980156200a953324f6c795f34d/prek-0.3.13-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:e5530a867bcf5b172b7513a64e71b06a337d1d184696227ae953845867376b8d", size = 6212085, upload-time = "2026-05-05T18:07:07.213Z" },
{ url = "https://files.pythonhosted.org/packages/ca/1d/528759931344b5c7103085798f5fa2e86d27d9410b753a6bcbe7726aa8ba/prek-0.3.13-py3-none-win32.whl", hash = "sha256:326fac2bdce00074ce6c5046b861d310638aee2b9de1ed241ba7eb32bdc83898", size = 5199566, upload-time = "2026-05-05T18:07:21.416Z" },
{ url = "https://files.pythonhosted.org/packages/6b/d0/8715ee837c73314a02767d20652cc312d1b6ff6733fa00f52de2b648bc3a/prek-0.3.13-py3-none-win_amd64.whl", hash = "sha256:841049f89f5ec9f4035299283d11e566ac5a068e3742ead1055ea04f886831fc", size = 5589599, upload-time = "2026-05-05T18:06:57.28Z" },
{ url = "https://files.pythonhosted.org/packages/ff/cf/0af0b15be0ebd82f7e50adee149b05a73533d78cb1b97cb889f0647ebffe/prek-0.3.13-py3-none-win_arm64.whl", hash = "sha256:a9fd74e0aec550c6b8d41076fdcdd6ff121cd7d94d743c1338bd794784e3c775", size = 5419029, upload-time = "2026-05-05T18:06:59.645Z" },
{ url = "https://files.pythonhosted.org/packages/06/9f/68a577888edf7f2647a652b02899508ccd84e57ce1f79c51a44edfd308d7/prek-0.4.4-py3-none-linux_armv6l.whl", hash = "sha256:23cfd96a25de1c93e3c43c746643b80489e3b2fa49ca9c0ffd6022e51535c900", size = 5550271, upload-time = "2026-06-04T07:26:17.834Z" },
{ url = "https://files.pythonhosted.org/packages/35/b8/5427a0023116343a8d787b446536a7fddfa5db7eec7713dd05618da2bdfe/prek-0.4.4-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:a427b792c4436f49732b1f6ebccf221fdcc6390c148474280da9c2c6eaabc9c4", size = 5910136, upload-time = "2026-06-04T07:26:20.616Z" },
{ url = "https://files.pythonhosted.org/packages/9d/4f/d751e90b7e768e472e054cd41cbe502589436ca9c1a13bfe4fa9513f9cde/prek-0.4.4-py3-none-macosx_11_0_arm64.whl", hash = "sha256:b998038fc92c990e03147eb5b95b0f2c394517f8857ab911aac8e092f1b9b3ab", size = 5470124, upload-time = "2026-06-04T07:26:29.23Z" },
{ url = "https://files.pythonhosted.org/packages/c6/fe/e73241c5777b6f9b6b95132febbd27f9be9e89912e9e93c0982680593af2/prek-0.4.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:9cebca8c15da4f1d6e3a25e6ae0611425c8596e926222050f2588c390e42df8a", size = 5732725, upload-time = "2026-06-04T07:26:19.133Z" },
{ url = "https://files.pythonhosted.org/packages/ca/a3/329bd910e7e5d9d0eb5e571f3ba48023213744e78411afb81f5ef8356cab/prek-0.4.4-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8742ac26363e74c855df6215a709d5db183204d00ac0f1a722b13aed4da3cd0", size = 5457953, upload-time = "2026-06-04T07:26:23.41Z" },
{ url = "https://files.pythonhosted.org/packages/3d/f8/d642990513d9707398506bad45d39173d84266231f7d919899f694aefe2c/prek-0.4.4-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a2b7c8710546a1e894afa7ab022030cd4e21f1ee7ffb301b4360773d22f1f00f", size = 5860556, upload-time = "2026-06-04T07:26:11.692Z" },
{ url = "https://files.pythonhosted.org/packages/8d/17/a2e29cb278503a8c18612d8a62a15020648dc768e2e94bc4b4d4c9411e07/prek-0.4.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e02bd4d5e05c500e4d9f70f024e30d13aa361dc490724b7f476d2e35542c239f", size = 6652492, upload-time = "2026-06-04T07:26:09.962Z" },
{ url = "https://files.pythonhosted.org/packages/ab/10/ad3270b18135ee5d1af6f6cf4b0c8601b1cc2cb38d16e835081da820833a/prek-0.4.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f3a25041733de987a47e5a7bace47182a6f0e2ae5f960cb54c1d4630afd2591", size = 6113837, upload-time = "2026-06-04T07:26:24.873Z" },
{ url = "https://files.pythonhosted.org/packages/59/d9/e8c201b9b41c4561673cea01c630ab604df89d13e952f87dbcb807d32588/prek-0.4.4-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:0b04a0f36d07474f2a9fc5b1ba1197a1b326b2b211f39cd74cf0d4613545f7f4", size = 5729155, upload-time = "2026-06-04T07:26:26.194Z" },
{ url = "https://files.pythonhosted.org/packages/e8/cd/227b0494fcbc91e8fe15c2a4db9e6dfff95314ef38db3e40e6ea96db249d/prek-0.4.4-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:f032ccbe2d6edc345f81a6d772c18cc169d63c27b5a8292bfe416b352bdfee57", size = 5590775, upload-time = "2026-06-04T07:26:22.038Z" },
{ url = "https://files.pythonhosted.org/packages/cc/e0/9d750b9cf21ece884afdc15668d0f005a36588fe1b0bb5ff4a8112ab51cb/prek-0.4.4-py3-none-musllinux_1_1_armv7l.whl", hash = "sha256:bad3586fcea3e913f0edf2e8f132f97889e03976b7ee3d120fd294ad4e89a5eb", size = 5437864, upload-time = "2026-06-04T07:26:30.673Z" },
{ url = "https://files.pythonhosted.org/packages/3a/48/e2e5c0299590ad18a253c0ac09508b615baa1b382010c511186572f711d3/prek-0.4.4-py3-none-musllinux_1_1_i686.whl", hash = "sha256:4058638532c6dcbf0076d23b9264cbdd9f0f0e320762e237a6b9e4e4b854a766", size = 5718579, upload-time = "2026-06-04T07:26:27.786Z" },
{ url = "https://files.pythonhosted.org/packages/54/48/7fb3d4e7f664d1ce8ae35ec553872ffddf9fab4c5081735fdaae610b1e7c/prek-0.4.4-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:619bab14071670249777deea0cc0b29d904c4a514cf33b20e583900a544f0399", size = 6231622, upload-time = "2026-06-04T07:26:16.309Z" },
{ url = "https://files.pythonhosted.org/packages/46/c0/a4ddbf38034afe67cfa97c4bd81c86429ada098e7c323218d9f9fd061566/prek-0.4.4-py3-none-win32.whl", hash = "sha256:143154b329c05b2f9fa3230e604d02d9c4297dd43f96135a8ba166772e8ecd60", size = 5240317, upload-time = "2026-06-04T07:26:08.726Z" },
{ url = "https://files.pythonhosted.org/packages/bc/8c/fe97b5b095187bb2f93bbe406bccf108c879e5e4c83f165809b0d16ce0fb/prek-0.4.4-py3-none-win_amd64.whl", hash = "sha256:c38c5140ae2ea55ebb02e6ca590a416664ea1af287cdd21f54daeec53a81015a", size = 5626104, upload-time = "2026-06-04T07:26:14.81Z" },
{ url = "https://files.pythonhosted.org/packages/25/63/3586226d536796e65f8e725b531d6104e55caaa18659bdcb512661629586/prek-0.4.4-py3-none-win_arm64.whl", hash = "sha256:3efa28fb37b9ddbafb7759da8d497f0d36cf02a05816e15d6541f5669d5d2114", size = 5470399, upload-time = "2026-06-04T07:26:13.231Z" },
]
[[package]]
@@ -1007,15 +1017,15 @@ wheels = [
[[package]]
name = "pytest-rerunfailures"
version = "16.1"
version = "16.3"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "packaging" },
{ name = "pytest" },
]
sdist = { url = "https://files.pythonhosted.org/packages/de/04/71e9520551fc8fe2cf5c1a1842e4e600265b0815f2016b7c27ec85688682/pytest_rerunfailures-16.1.tar.gz", hash = "sha256:c38b266db8a808953ebd71ac25c381cb1981a78ff9340a14bcb9f1b9bff1899e", size = 30889, upload-time = "2025-10-10T07:06:01.238Z" }
sdist = { url = "https://files.pythonhosted.org/packages/4d/f0/74f8e685be7ecd1572c1256132f18fce3a665d7e07649a3f23b7eb2d3bec/pytest_rerunfailures-16.3.tar.gz", hash = "sha256:37c9b1231c8083e9f4e724f50f7a21241822f9516c15c700ebbf218d6452355c", size = 34148, upload-time = "2026-05-22T06:51:22.292Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/77/54/60eabb34445e3db3d3d874dc1dfa72751bfec3265bd611cb13c8b290adea/pytest_rerunfailures-16.1-py3-none-any.whl", hash = "sha256:5d11b12c0ca9a1665b5054052fcc1084f8deadd9328962745ef6b04e26382e86", size = 14093, upload-time = "2025-10-10T07:06:00.019Z" },
{ url = "https://files.pythonhosted.org/packages/f8/98/58a71d68d3126d7f6a6ed1944c37ec207a4ff3dc66cad3bed7b59d38df61/pytest_rerunfailures-16.3-py3-none-any.whl", hash = "sha256:6bdfb8ffb46c46072e6c16bdedee38b6c13eac620d9415ed5b63152cbf283170", size = 15396, upload-time = "2026-05-22T06:51:20.547Z" },
]
[[package]]
@@ -1033,27 +1043,27 @@ wheels = [
[[package]]
name = "python-engineio"
version = "4.13.1"
version = "4.13.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "simple-websocket" },
]
sdist = { url = "https://files.pythonhosted.org/packages/34/12/bdef9dbeedbe2cdeba2a2056ad27b1fb081557d34b69a97f574843462cae/python_engineio-4.13.1.tar.gz", hash = "sha256:0a853fcef52f5b345425d8c2b921ac85023a04dfcf75d7b74696c61e940fd066", size = 92348, upload-time = "2026-02-06T23:38:06.12Z" }
sdist = { url = "https://files.pythonhosted.org/packages/fa/6d/4384c2723adad93a3d6de4297e6d9c8b93be7f778a407f34f6ee0b2bea3e/python_engineio-4.13.2.tar.gz", hash = "sha256:a7732e99cfb7db6ed1aee31f18d7f73bbae086a92f31dee019bc646155d9684e", size = 79639, upload-time = "2026-05-21T21:45:07.578Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/aa/54/0cce26da03a981f949bb8449c9778537f75f5917c172e1d2992ff25cb57d/python_engineio-4.13.1-py3-none-any.whl", hash = "sha256:f32ad10589859c11053ad7d9bb3c9695cdf862113bfb0d20bc4d890198287399", size = 59847, upload-time = "2026-02-06T23:38:04.861Z" },
{ url = "https://files.pythonhosted.org/packages/b7/28/180bfc5c95e83d40cb2abce512684ccad44e4819ec899fc36cb404a19061/python_engineio-4.13.2-py3-none-any.whl", hash = "sha256:8c101cd170e400dc4e970cd523325cde22df8fc25140953f379327055d701a6b", size = 59993, upload-time = "2026-05-21T21:45:06.162Z" },
]
[[package]]
name = "python-socketio"
version = "5.16.1"
version = "5.16.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "bidict" },
{ name = "python-engineio" },
]
sdist = { url = "https://files.pythonhosted.org/packages/59/81/cf8284f45e32efa18d3848ed82cdd4dcc1b657b082458fbe01ad3e1f2f8d/python_socketio-5.16.1.tar.gz", hash = "sha256:f863f98eacce81ceea2e742f6388e10ca3cdd0764be21d30d5196470edf5ea89", size = 128508, upload-time = "2026-02-06T23:42:07Z" }
sdist = { url = "https://files.pythonhosted.org/packages/07/dd/6fd4112b941f7d39b8171b6ba17902609bd8fa2059c3812a3c29dade13e7/python_socketio-5.16.2.tar.gz", hash = "sha256:ad88c228d921646efa436c0a0df217e364ef30ec072df4041484e54d49c15989", size = 128011, upload-time = "2026-05-21T22:03:44.418Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/07/c7/deb8c5e604404dbf10a3808a858946ca3547692ff6316b698945bb72177e/python_socketio-5.16.1-py3-none-any.whl", hash = "sha256:a3eb1702e92aa2f2b5d3ba00261b61f062cce51f1cfb6900bf3ab4d1934d2d35", size = 82054, upload-time = "2026-02-06T23:42:05.772Z" },
{ url = "https://files.pythonhosted.org/packages/72/dc/0decaf5da92a7a969374474025787102d811d42aed1d32191fa338620e15/python_socketio-5.16.2-py3-none-any.whl", hash = "sha256:bef2da3374fd533aed4297f57b4f6512b52aa51604cb0da2165f401291c5ca20", size = 82137, upload-time = "2026-05-21T22:03:42.616Z" },
]
[[package]]
@@ -1140,7 +1150,7 @@ wheels = [
[[package]]
name = "requests"
version = "2.33.1"
version = "2.34.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "certifi" },
@@ -1148,9 +1158,9 @@ dependencies = [
{ name = "idna" },
{ name = "urllib3" },
]
sdist = { url = "https://files.pythonhosted.org/packages/5f/a4/98b9c7c6428a668bf7e42ebb7c79d576a1c3c1e3ae2d47e674b468388871/requests-2.33.1.tar.gz", hash = "sha256:18817f8c57c6263968bc123d237e3b8b08ac046f5456bd1e307ee8f4250d3517", size = 134120, upload-time = "2026-03-30T16:09:15.531Z" }
sdist = { url = "https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz", hash = "sha256:f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed", size = 142856, upload-time = "2026-05-14T19:25:27.735Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/d7/8e/7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197/requests-2.33.1-py3-none-any.whl", hash = "sha256:4e6d1ef462f3626a1f0a0a9c42dd93c63bad33f9f1c1937509b8c5c8718ab56a", size = 64947, upload-time = "2026-03-30T16:09:13.83Z" },
{ url = "https://files.pythonhosted.org/packages/a0/f4/c67b0b3f1b9245e8d266f0f112c500d50e5b4e83cb6f3b71b6528104182a/requests-2.34.2-py3-none-any.whl", hash = "sha256:2a0d60c172f83ac6ab31e4554906c0f3b3588d37b5cb939b1c061f4907e278e0", size = 73075, upload-time = "2026-05-14T19:25:26.443Z" },
]
[package.optional-dependencies]
@@ -1195,27 +1205,27 @@ wheels = [
[[package]]
name = "ruff"
version = "0.15.12"
version = "0.15.16"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/99/43/3291f1cc9106f4c63bdce7a8d0df5047fe8422a75b091c16b5e9355e0b11/ruff-0.15.12.tar.gz", hash = "sha256:ecea26adb26b4232c0c2ca19ccbc0083a68344180bba2a600605538ce51a40a6", size = 4643852, upload-time = "2026-04-24T18:17:14.305Z" }
sdist = { url = "https://files.pythonhosted.org/packages/a6/bd/5f7ec371001337d8fa61701c186ff8b613ecac1651848c5950f4c4d5f2e9/ruff-0.15.16.tar.gz", hash = "sha256:d05e78d38c78caf020b03789e25106c93017db5a0cb6e2819885018c61343b78", size = 4714267, upload-time = "2026-06-04T16:33:09.974Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/c3/6e/e78ffb61d4686f3d96ba3df2c801161843746dcbcbb17a1e927d4829312b/ruff-0.15.12-py3-none-linux_armv6l.whl", hash = "sha256:f86f176e188e94d6bdbc09f09bfd9dc729059ad93d0e7390b5a73efe19f8861c", size = 10640713, upload-time = "2026-04-24T18:17:22.841Z" },
{ url = "https://files.pythonhosted.org/packages/ae/08/a317bc231fb9e7b93e4ef3089501e51922ff88d6936ce5cf870c4fe55419/ruff-0.15.12-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:e3bcd123364c3770b8e1b7baaf343cc99a35f197c5c6e8af79015c666c423a6c", size = 11069267, upload-time = "2026-04-24T18:17:30.105Z" },
{ url = "https://files.pythonhosted.org/packages/aa/a4/f828e9718d3dce1f5f11c39c4f65afd32783c8b2aebb2e3d259e492c47bd/ruff-0.15.12-py3-none-macosx_11_0_arm64.whl", hash = "sha256:fe87510d000220aa1ed530d4448a7c696a0cae1213e5ec30e5874287b66557b5", size = 10397182, upload-time = "2026-04-24T18:17:07.177Z" },
{ url = "https://files.pythonhosted.org/packages/71/e0/3310fc6d1b5e1fdea22bf3b1b807c7e187b581021b0d7d4514cccdb5fb71/ruff-0.15.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:84a1630093121375a3e2a95b4a6dc7b59e2b4ee76216e32d81aae550a832d002", size = 10758012, upload-time = "2026-04-24T18:16:55.759Z" },
{ url = "https://files.pythonhosted.org/packages/11/c1/a606911aee04c324ddaa883ae418f3569792fd3c4a10c50e0dd0a2311e1e/ruff-0.15.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fb129f40f114f089ebe0ca56c0d251cf2061b17651d464bb6478dc01e69f11f5", size = 10447479, upload-time = "2026-04-24T18:16:51.677Z" },
{ url = "https://files.pythonhosted.org/packages/9d/68/4201e8444f0894f21ab4aeeaee68aa4f10b51613514a20d80bd628d57e88/ruff-0.15.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b0c862b172d695db7598426b8af465e7e9ac00a3ea2a3630ee67eb82e366aaa6", size = 11234040, upload-time = "2026-04-24T18:17:16.529Z" },
{ url = "https://files.pythonhosted.org/packages/34/ff/8a6d6cf4ccc23fd67060874e832c18919d1557a0611ebef03fdb01fff11e/ruff-0.15.12-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2849ea9f3484c3aca43a82f484210370319e7170df4dfe4843395ddf6c57bc33", size = 12087377, upload-time = "2026-04-24T18:17:04.944Z" },
{ url = "https://files.pythonhosted.org/packages/85/f6/c669cf73f5152f623d34e69866a46d5e6185816b19fcd5b6dd8a2d299922/ruff-0.15.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9e77c7e51c07fe396826d5969a5b846d9cd4c402535835fb6e21ce8b28fef847", size = 11367784, upload-time = "2026-04-24T18:17:25.409Z" },
{ url = "https://files.pythonhosted.org/packages/e8/39/c61d193b8a1daaa8977f7dea9e8d8ba866e02ea7b65d32f6861693aa4c12/ruff-0.15.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:83b2f4f2f3b1026b5fb449b467d9264bf22067b600f7b6f41fc5958909f449d0", size = 11344088, upload-time = "2026-04-24T18:17:12.258Z" },
{ url = "https://files.pythonhosted.org/packages/c2/8d/49afab3645e31e12c590acb6d3b5b69d7aab5b81926dbaf7461f9441f37a/ruff-0.15.12-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:9ba3b8f1afd7e2e43d8943e55f249e13f9682fde09711644a6e7290eb4f3e339", size = 11271770, upload-time = "2026-04-24T18:17:02.457Z" },
{ url = "https://files.pythonhosted.org/packages/46/06/33f41fe94403e2b755481cdfb9b7ef3e4e0ed031c4581124658d935d52b4/ruff-0.15.12-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:e852ba9fdc890655e1d78f2df1499efbe0e54126bd405362154a75e2bde159c5", size = 10719355, upload-time = "2026-04-24T18:17:27.648Z" },
{ url = "https://files.pythonhosted.org/packages/0d/59/18aa4e014debbf559670e4048e39260a85c7fcee84acfd761ac01e7b8d35/ruff-0.15.12-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:dd8aed930da53780d22fc70bdf84452c843cf64f8cb4eb38984319c24c5cd5fd", size = 10462758, upload-time = "2026-04-24T18:17:32.347Z" },
{ url = "https://files.pythonhosted.org/packages/25/e7/cc9f16fd0f3b5fddcbd7ec3d6ae30c8f3fde1047f32a4093a98d633c6570/ruff-0.15.12-py3-none-musllinux_1_2_i686.whl", hash = "sha256:01da3988d225628b709493d7dc67c3b9b12c0210016b08690ef9bd27970b262b", size = 10953498, upload-time = "2026-04-24T18:17:20.674Z" },
{ url = "https://files.pythonhosted.org/packages/72/7a/a9ba7f98c7a575978698f4230c5e8cc54bbc761af34f560818f933dafa0c/ruff-0.15.12-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:9cae0f92bd5700d1213188b31cd3bdd2b315361296d10b96b8e2337d3d11f53e", size = 11447765, upload-time = "2026-04-24T18:17:09.755Z" },
{ url = "https://files.pythonhosted.org/packages/ea/f9/0ae446942c846b8266059ad8a30702a35afae55f5cdc54c5adf8d7afdc27/ruff-0.15.12-py3-none-win32.whl", hash = "sha256:d0185894e038d7043ba8fd6aee7499ece6462dc0ea9f1e260c7451807c714c20", size = 10657277, upload-time = "2026-04-24T18:17:18.591Z" },
{ url = "https://files.pythonhosted.org/packages/33/f1/9614e03e1cdcbf9437570b5400ced8a720b5db22b28d8e0f1bda429f660d/ruff-0.15.12-py3-none-win_amd64.whl", hash = "sha256:c87a162d61ab3adca47c03f7f717c68672edec7d1b5499e652331780fe74950d", size = 11837758, upload-time = "2026-04-24T18:17:00.113Z" },
{ url = "https://files.pythonhosted.org/packages/c0/98/6beb4b351e472e5f4c4613f7c35a5290b8be2497e183825310c4c3a3984b/ruff-0.15.12-py3-none-win_arm64.whl", hash = "sha256:a538f7a82d061cee7be55542aca1d86d1393d55d81d4fcc314370f4340930d4f", size = 11120821, upload-time = "2026-04-24T18:16:57.979Z" },
{ url = "https://files.pythonhosted.org/packages/0c/42/53ef1c3953f157956db9bf7861e3bc50b9b887ce93300aa48cdba8336fe6/ruff-0.15.16-py3-none-linux_armv6l.whl", hash = "sha256:6ac3c0b3969cc6cf6b158c4e2f8f682acb58e7d700d8a44b65ecdc72d66ab0b2", size = 10709025, upload-time = "2026-06-04T16:32:51.935Z" },
{ url = "https://files.pythonhosted.org/packages/93/9a/a79159346f19134a956607754e57d8d128f7a4c00f4ad2f7514d224c172c/ruff-0.15.16-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:197c207ed75ffba54a0dec23db4aa939a27a3053073e085e0042433cbdc58e4a", size = 11063550, upload-time = "2026-06-04T16:32:42.24Z" },
{ url = "https://files.pythonhosted.org/packages/bc/72/3ce2ac000a5299ec238e01f51397b3b653c93b077d9b1bfe8715bb895f20/ruff-0.15.16-py3-none-macosx_11_0_arm64.whl", hash = "sha256:3a39fec45ab316cc23e7558f23fea4a70403ddb5648ea9a4a3854a16973d0071", size = 10421345, upload-time = "2026-06-04T16:32:37.251Z" },
{ url = "https://files.pythonhosted.org/packages/b0/c2/cc7fad3ec9169373f5b6a18f1917b91080feec40c3f9658334a1d28e2f03/ruff-0.15.16-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba93191d79003116b95128c9d306e045200fdbd0bccb782b110f3cd1d4abc5cf", size = 10757217, upload-time = "2026-06-04T16:32:54.722Z" },
{ url = "https://files.pythonhosted.org/packages/69/d2/3474009eaa0a65b31fa7152a2fad5e2f050c640ceb1e6b02ee6922e94c82/ruff-0.15.16-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c6ee4b90520630120ef032aa5cc10db483852dff950e78b1d717e2993a61ac8d", size = 10507035, upload-time = "2026-06-04T16:33:05.343Z" },
{ url = "https://files.pythonhosted.org/packages/ca/81/b7ae6ccbd11f0c8dc3d5d67fc4be9b57ff57ca86ba56152021378e1277f2/ruff-0.15.16-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4e4215bc938bc3c8215c1472c1aa437e310fee20cd427335fec9d7e609563628", size = 11255291, upload-time = "2026-06-04T16:32:49.49Z" },
{ url = "https://files.pythonhosted.org/packages/d9/e1/46e526f1a7cc90857ce6ddf25fbb77eb6568651ac38d71b033af07076dd5/ruff-0.15.16-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7c8d26be963b090f10e29abc8b3e74a2a321f6fa34e02424e30b5af89350ecbb", size = 12124922, upload-time = "2026-06-04T16:33:07.821Z" },
{ url = "https://files.pythonhosted.org/packages/1a/da/5c791b088b596b24d0deb967fa28ae02ad751a140c0b9ea81c5ab915d6c0/ruff-0.15.16-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f198cf4123602a2280ed46c307bcbafe41758d6fee5b456b6b6058ca1514b3b4", size = 11332186, upload-time = "2026-06-04T16:33:02.971Z" },
{ url = "https://files.pythonhosted.org/packages/72/11/5da87abe20047c8962361473923ebb2f62b595250126aadfad8c20649c1e/ruff-0.15.16-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb27515fa6240fb586ae82b901a59e67d24acff86f2190b433dc542fe0435aeb", size = 11373541, upload-time = "2026-06-04T16:32:47.007Z" },
{ url = "https://files.pythonhosted.org/packages/fe/2a/8554754c23a854ae3fd6b507e36ad61ddb121e298c6d5d617dec94ed0f14/ruff-0.15.16-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:a267c46ba1593fc26b8eecbea050b39d40c0b6bb7781ee11c90a02cd10032951", size = 11353014, upload-time = "2026-06-04T16:32:34.795Z" },
{ url = "https://files.pythonhosted.org/packages/62/25/62ea41529ec89f742ea3fed9cb1059c72877ec7cf9b9e99ac9cf3294d1d9/ruff-0.15.16-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:528c68f39a91498a8d50e91ff5985df3d105782bab49cc378e73ac26bff083e8", size = 10737467, upload-time = "2026-06-04T16:32:26.348Z" },
{ url = "https://files.pythonhosted.org/packages/90/17/334d3ad9de4d40f9dd58fdd09e35ce64553bb501e2f19a839e2fb6be14fc/ruff-0.15.16-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:7ed55c58950df60589a9a7a5d2f8fa5f54ebd287163be805adfe6ee95a9de123", size = 10521910, upload-time = "2026-06-04T16:32:32.54Z" },
{ url = "https://files.pythonhosted.org/packages/4d/bd/3ac7c6ae77a885c1004b3dda2446ea401768d24f851c14b4ad4b24f6639c/ruff-0.15.16-py3-none-musllinux_1_2_i686.whl", hash = "sha256:d482feaf51512b50f9790ceb417a56a61dd1e9d9bf967662b9ed27c01b34f53a", size = 10979190, upload-time = "2026-06-04T16:32:57.492Z" },
{ url = "https://files.pythonhosted.org/packages/33/d7/609546e6a413c3f216fbf2a50c928f97c80939154f6a0503114094a86191/ruff-0.15.16-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:1e15bc8c94513dae2a40cc9ef07c94fdd4ecc9e29dabebeebe170f952322c9e3", size = 11477014, upload-time = "2026-06-04T16:32:44.687Z" },
{ url = "https://files.pythonhosted.org/packages/74/0d/f2cd247ad32633a5c36e97141a2c21b11c6279f7957bc2ff360b1e08fddd/ruff-0.15.16-py3-none-win32.whl", hash = "sha256:580378f7bd4aa25f72e74aa54948a9622f142b1e509521dd10902e886681cc1e", size = 10735541, upload-time = "2026-06-04T16:32:30.145Z" },
{ url = "https://files.pythonhosted.org/packages/8b/9e/02e845ef151b1dee585e55c4739f8e1734ae1d9f1221dff65761c162208b/ruff-0.15.16-py3-none-win_amd64.whl", hash = "sha256:408256017284eddf98fff77b29aa4fb30f586042d535b2d9befc6512f400aaec", size = 11843403, upload-time = "2026-06-04T16:32:39.76Z" },
{ url = "https://files.pythonhosted.org/packages/15/19/016553f86f207450aebebc2b2b5088d086b901cc8186c02ac4284db3bd88/ruff-0.15.16-py3-none-win_arm64.whl", hash = "sha256:8cd61783afb39638a7133ef0d2dfb1e91277593962f81b5a8423eb0b888a6121", size = 11134555, upload-time = "2026-06-04T16:33:00.136Z" },
]
[[package]]
@@ -1229,7 +1239,7 @@ wheels = [
[[package]]
name = "selenium"
version = "4.43.0"
version = "4.44.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "certifi" },
@@ -1239,14 +1249,14 @@ dependencies = [
{ name = "urllib3", extra = ["socks"] },
{ name = "websocket-client" },
]
sdist = { url = "https://files.pythonhosted.org/packages/09/6a/fe950b498a3c570ab538ad1c2b60f18863eecf077a865eea4459f3fa78a9/selenium-4.43.0.tar.gz", hash = "sha256:bada5c08a989f812728a4b5bea884d8e91894e939a441cc3a025201ce718581e", size = 967747, upload-time = "2026-04-10T06:47:03.149Z" }
sdist = { url = "https://files.pythonhosted.org/packages/2d/4a/6d0a4f4a07e2a91511a51398203ee82bf6ce644a448aaa35c59b44aa9531/selenium-4.44.0.tar.gz", hash = "sha256:b03a831fcfcab9d912b4682f60718c48a04560d6c62f7496c16b7498c9a4427e", size = 993133, upload-time = "2026-05-12T22:48:19.246Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/82/c7/0c55fbb0275fc368676ea50514ce7d7839d799a8b3ff8425f380186c7626/selenium-4.43.0-py3-none-any.whl", hash = "sha256:4f97639055dcfa9eadf8ccf549ba7b0e49c655d4e2bde19b9a44e916b754e769", size = 9573091, upload-time = "2026-04-10T06:47:01.134Z" },
{ url = "https://files.pythonhosted.org/packages/1f/bc/885047e975e996cb317db31c4551caa915aafc6befea990f082c7233adc2/selenium-4.44.0-py3-none-any.whl", hash = "sha256:d01ea3e5ecad8149460a765f7cf5177194c21dcc0173093fc05427c289b1bf24", size = 9654291, upload-time = "2026-05-12T22:48:16.836Z" },
]
[[package]]
name = "seleniumbase"
version = "4.48.4"
version = "4.49.7"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "attrs" },
@@ -1277,6 +1287,7 @@ dependencies = [
{ name = "pip" },
{ name = "platformdirs" },
{ name = "pluggy" },
{ name = "psutil" },
{ name = "pyautogui", marker = "sys_platform == 'linux'" },
{ name = "pygments" },
{ name = "pynose" },
@@ -1309,9 +1320,9 @@ dependencies = [
{ name = "wheel" },
{ name = "wsproto" },
]
sdist = { url = "https://files.pythonhosted.org/packages/b4/bc/08d186179157ffb214c483da88c061145ac86207829565b320de86d6375e/seleniumbase-4.48.4.tar.gz", hash = "sha256:014b5303914aa18d83467bf1866a3598a35a58cccf039d051e4bd693b217bd18", size = 656881, upload-time = "2026-04-30T19:26:55.055Z" }
sdist = { url = "https://files.pythonhosted.org/packages/f5/8d/e21249a29f1f8a27b7b9ef48722fd61e64061332395450d7b88af48da68d/seleniumbase-4.49.7.tar.gz", hash = "sha256:79f7f394a475bb211ea9715d2618bbbff684126249ef3fd6606e356e2cd4691c", size = 660715, upload-time = "2026-06-05T15:51:05.564Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/f1/b2/d284f5b740cf4cb605d653c0d3b6792cf1b931d573af274d46bef08bede9/seleniumbase-4.48.4-py3-none-any.whl", hash = "sha256:900763122c82b14372698580b19fb39d3d86e958bffc16c5206f5554f8f7c7ed", size = 663699, upload-time = "2026-04-30T19:26:51.658Z" },
{ url = "https://files.pythonhosted.org/packages/0c/8d/8e1305cf773e4dd8c5af8aa7a29da31a5839c030cc5823ffc9bb5232e272/seleniumbase-4.49.7-py3-none-any.whl", hash = "sha256:37b261d5ac732952bc2aed9e7db248d34d3d07eb4b5df02dee195f6539d74c40", size = 665981, upload-time = "2026-06-05T15:51:01.893Z" },
]
[[package]]
@@ -1370,7 +1381,7 @@ dev = [
[package.metadata]
requires-dist = [
{ name = "apprise", specifier = ">=1.10.0" },
{ name = "apprise", specifier = ">=1.11.0" },
{ name = "authlib", specifier = ">=1.7.2,<1.8" },
{ name = "beautifulsoup4" },
{ name = "defusedxml" },
@@ -1390,7 +1401,7 @@ requires-dist = [
{ name = "qbittorrent-api" },
{ name = "rarfile" },
{ name = "requests", extras = ["socks"] },
{ name = "seleniumbase", marker = "extra == 'browser'", specifier = "==4.48.4" },
{ name = "seleniumbase", marker = "extra == 'browser'", specifier = "==4.49.7" },
{ name = "tqdm" },
{ name = "transmission-rpc" },
]
@@ -1398,12 +1409,12 @@ provides-extras = ["browser"]
[package.metadata.requires-dev]
dev = [
{ name = "basedpyright", specifier = ">=1.39.3" },
{ name = "basedpyright", specifier = ">=1.39.6" },
{ name = "prek" },
{ name = "pytest" },
{ name = "pytest-cov" },
{ name = "pytest-xdist", specifier = ">=3.8.0" },
{ name = "ruff", specifier = "==0.15.12" },
{ name = "ruff", specifier = "==0.15.16" },
{ name = "vulture", specifier = ">=2.14" },
]
@@ -1448,11 +1459,11 @@ wheels = [
[[package]]
name = "soupsieve"
version = "2.8.3"
version = "2.8.4"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/7b/ae/2d9c981590ed9999a0d91755b47fc74f74de286b0f5cee14c9269041e6c4/soupsieve-2.8.3.tar.gz", hash = "sha256:3267f1eeea4251fb42728b6dfb746edc9acaffc4a45b27e19450b676586e8349", size = 118627, upload-time = "2026-01-20T04:27:02.457Z" }
sdist = { url = "https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz", hash = "sha256:e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e", size = 121110, upload-time = "2026-05-24T13:55:57.154Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/46/2c/1462b1d0a634697ae9e55b3cecdcb64788e8b7d63f54d923fcd0bb140aed/soupsieve-2.8.3-py3-none-any.whl", hash = "sha256:ed64f2ba4eebeab06cc4962affce381647455978ffc1e36bb79a545b91f45a95", size = 37016, upload-time = "2026-01-20T04:27:01.012Z" },
{ url = "https://files.pythonhosted.org/packages/5e/f5/0c41cb68dcae6b7de4fac4188a3a9589e21fb31df21ea3a2e888db95e6c9/soupsieve-2.8.4-py3-none-any.whl", hash = "sha256:e7e6b0769c8f51ed59acab6e994b00621096cfb1c640a7509295987388fbaf65", size = 37304, upload-time = "2026-05-24T13:55:55.406Z" },
]
[[package]]
@@ -1469,14 +1480,14 @@ wheels = [
[[package]]
name = "tqdm"
version = "4.67.3"
version = "4.68.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "colorama", marker = "sys_platform == 'win32'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/09/a9/6ba95a270c6f1fbcd8dac228323f2777d886cb206987444e4bce66338dd4/tqdm-4.67.3.tar.gz", hash = "sha256:7d825f03f89244ef73f1d4ce193cb1774a8179fd96f31d7e1dcde62092b960bb", size = 169598, upload-time = "2026-02-03T17:35:53.048Z" }
sdist = { url = "https://files.pythonhosted.org/packages/06/b3/36c8ecf72e8925200671613332db156d84b99b3aee742a41c1938ebb0808/tqdm-4.68.1.tar.gz", hash = "sha256:fc163d96b287bd031e1aa24421ce4411b25559bd0a1be4fe649bdaa4d2c02bf5", size = 171236, upload-time = "2026-06-05T17:23:15.267Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/16/e1/3079a9ff9b8e11b846c6ac5c8b5bfb7ff225eee721825310c91b3b50304f/tqdm-4.67.3-py3-none-any.whl", hash = "sha256:ee1e4c0e59148062281c49d80b25b67771a127c85fc9676d3be5f243206826bf", size = 78374, upload-time = "2026-02-03T17:35:50.982Z" },
{ url = "https://files.pythonhosted.org/packages/47/aa/218a0eb34de1f753c83e4d0d1c8e7c4cef27f20dcb8342e024f63a80dc86/tqdm-4.68.1-py3-none-any.whl", hash = "sha256:fea4a90e4023f764914569f7802a297277c5ab1a66be5144143e142e1a4031d8", size = 78354, upload-time = "2026-06-05T17:23:13.654Z" },
]
[[package]]