mirror of
https://github.com/calibrain/shelfmark.git
synced 2026-09-24 20:00:27 +01:00
Bumps the python-deps group with 5 updates in the / directory: | Package | From | To | | --- | --- | --- | | [gunicorn](https://github.com/benoitc/gunicorn) | `26.0.0` | `26.1.0` | | [apprise](https://github.com/caronc/apprise) | `1.12.0` | `1.13.0` | | [seleniumbase](https://github.com/seleniumbase/SeleniumBase) | `4.51.12` | `4.52.1` | | [prek](https://github.com/j178/prek) | `0.4.13` | `0.4.14` | | [ruff](https://github.com/astral-sh/ruff) | `0.16.3` | `0.16.4` | Updates `gunicorn` from 26.0.0 to 26.1.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/benoitc/gunicorn/releases">gunicorn's releases</a>.</em></p> <blockquote> <h2>gunicorn 26.1.0</h2> <h3>New Features</h3> <ul> <li><strong>Glob patterns in <code>reload_extra_files</code></strong>: entries containing <code>*</code>, <code>?</code> or <code>[</code> are treated as patterns, so <code>ui/*/config.json</code> watches every view's config without listing them one by one. Patterns are re-expanded on every reload check rather than once at startup, so a file created later starts being watched without restarting gunicorn, and <code>**</code> recurses. A pattern matching nothing warns instead of failing, since with live expansion it may match later (<a href="https://redirect.github.com/benoitc/gunicorn/issues/1643">#1643</a>, <a href="https://redirect.github.com/benoitc/gunicorn/pull/3662">#3662</a>).</li> </ul> <h3>Security</h3> <ul> <li><strong>Dependency floors raised past known advisories</strong>: every declared floor was checked against the advisory database. <code>tornado</code>, <code>h2</code>, <code>setuptools</code> and <code>pymdown-extensions</code> permitted vulnerable versions and now require the first clean release; <code>pytest</code> and <code>httpx</code> were unpinned and now carry floors. The <code>tornado</code> example pinned <code>tornado<6</code>, which was both the source of several advisories and older than the <code>>=6.5.0</code> the tornado worker needs, so the example could not run as pinned.</li> </ul> <h3>Bug Fixes</h3> <ul> <li> <p><strong>SIGHUP did not reload the logger configuration</strong>: <code>Arbiter.reload()</code> re-read the configuration file but kept using the logger built at startup, calling only <code>reopen_files()</code> on its existing handlers. Changes to <code>logconfig</code>, <code>logconfig_dict</code>, <code>logconfig_json</code> and <code>loglevel</code> were ignored until a full restart, which in containers meant replacing the pod. The existing logger now re-runs its setup on reload, so new handlers, formats and levels take effect while the process identity and its listeners are preserved, and re-running the setup no longer stacks duplicate syslog handlers. An invalid log configuration on reload is not fatal either: the error is reported on stderr, the previous working configuration is restored and the master keeps running with it (<a href="https://redirect.github.com/benoitc/gunicorn/issues/3353">#3353</a>).</p> </li> <li> <p><strong>Truncated chunked bodies accepted</strong>: RFC 9112 section 7.1.2 ends a chunked body with <code>0 CRLF CRLF</code>, the second CRLF being the mandatory empty trailer section. <code>ChunkedReader.parse_chunk_size()</code> swallowed the <code>NoMoreData</code> raised while scanning for it, so a body cut short right after the last chunk line was treated as complete instead of rejected. It now raises <code>ChunkMissingTerminator</code> (<a href="https://redirect.github.com/benoitc/gunicorn/issues/3382">#3382</a>, <a href="https://redirect.github.com/benoitc/gunicorn/pull/3685">#3685</a>).</p> </li> <li> <p><strong><code>--spew</code> crashed on dynamically generated code</strong>: the trace hook indexed the 2-tuple returned by <code>inspect.getsourcelines()</code> by line number rather than indexing the list of lines, so a frame with no <code>__file__</code> raised <code>AttributeError: 'int' object has no attribute 'rstrip'</code> on line 1 and</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/benoitc/gunicorn/commit/71b59a75820dd4a762dc42a3280124168b4e44a8"><code>71b59a7</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3698">#3698</a> from benoitc/fix/docker-health-check-readerror</li> <li><a href="https://github.com/benoitc/gunicorn/commit/48287de8d8360825c85ac981ddfe9c80dba3b418"><code>48287de</code></a> test: catch every transport error in the docker health check</li> <li><a href="https://github.com/benoitc/gunicorn/commit/3110e8c37f716ca0ed63ca7f80c7c9ea0fbbdd50"><code>3110e8c</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3696">#3696</a> from benoitc/docs/roadmap</li> <li><a href="https://github.com/benoitc/gunicorn/commit/cc56c410b7103c1f2b877279f81cb3a14705315a"><code>cc56c41</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3693">#3693</a> from benoitc/release/26.1.0</li> <li><a href="https://github.com/benoitc/gunicorn/commit/5cf1f1651a40fa36afe13fde623e3437ca872463"><code>5cf1f16</code></a> docs: surface the roadmap on the site home page</li> <li><a href="https://github.com/benoitc/gunicorn/commit/7e35f72d135056c37da321becf22b19aeec06937"><code>7e35f72</code></a> docs: add FastCGI to the roadmap and point items at Ideas</li> <li><a href="https://github.com/benoitc/gunicorn/commit/18ddc586c9b9513b25e92c6ed6f818f66ff3abcd"><code>18ddc58</code></a> docs: drop the framework and reverse-proxy non-goals from the roadmap</li> <li><a href="https://github.com/benoitc/gunicorn/commit/1ecae56ebd096ee4f94d12c59a36f240ce348572"><code>1ecae56</code></a> docs: add a roadmap and make the chat easy to find</li> <li><a href="https://github.com/benoitc/gunicorn/commit/ca412e3f7134bd9f0e91851778ae6d8dd222cf41"><code>ca412e3</code></a> docs: sync the Latest changelog page with 26.1.0</li> <li><a href="https://github.com/benoitc/gunicorn/commit/640936fb29f7bdf5665d5b7f919783bb73e2f981"><code>640936f</code></a> docs: note the dependency security work in 26.1.0</li> <li>Additional commits viewable in <a href="https://github.com/benoitc/gunicorn/compare/26.0.0...26.1.0">compare view</a></li> </ul> </details> <br /> Updates `apprise` from 1.12.0 to 1.13.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.13.0</h2> <h2>What's Changed</h2> <p>This update clears out our backlog of resolved bugs and introduces a few new services. While it’s a standard maintenance release, we want to give a massive shoutout to our community. The level of support we've received for this update is truly incredible; there were more commits/PRs from you than there were from me and that has never happend before 🙂 . Your contributions are deeply appreciated! Seriously!</p> <p><strong>Note:</strong> ⚠️ <strong>This will be the last version of Apprise v1.x</strong>. Future releases will be under Apprise v2.x. This means: Developers, <em>please</em> make sure you pin your <code>projects.toml</code> or <code>requirements.txt</code> to <code>apprise >=1.0.0, <2.0.0</code>. v2.x will be awesome, but it will introduce breaking changes your software may need to adapt to. I will still continue supporting the v1.x branch should security issues arise for at year or two, but eventually v2.x would be the way to go.</p> <h3>📣 New Notification Services:</h3> <ul> <li>Added Pinglet Support by <a href="https://github.com/TheGlenn88"><code>@TheGlenn88</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1680">caronc/apprise#1680</a></li> <li>Add Trigv notification support by <a href="https://github.com/hchouhan"><code>@hchouhan</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1671">caronc/apprise#1671</a></li> <li>Added Pingram (formerly NotificationApi) by <a href="https://github.com/lipusal"><code>@lipusal</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1665">caronc/apprise#1665</a></li> </ul> <h3>🐞 Bugfixes</h3> <ul> <li>Preserve x/y coordinate of 0 in dbus/glib url() (round-trip crash on x=0) by <a href="https://github.com/gaoflow"><code>@gaoflow</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1663">caronc/apprise#1663</a></li> <li>Allow RFC 3986 path characters that are safe to leave unencoded by <a href="https://github.com/Sanjays2402"><code>@Sanjays2402</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1673">caronc/apprise#1673</a></li> <li>small bugfix in splunk entity_id handling on url in <a href="https://redirect.github.com/caronc/apprise/pull/1688">caronc/apprise#1688</a></li> <li>Fix Microsoft Workflows CU-routed webhooks by <a href="https://github.com/Sanjays2402"><code>@Sanjays2402</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1676">caronc/apprise#1676</a></li> <li>Return None from parse_url() on malformed authority content (<a href="https://redirect.github.com/caronc/apprise/issues/1693">#1693</a>) by <a href="https://github.com/youdie006"><code>@youdie006</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1694">caronc/apprise#1694</a></li> <li>fix issue causing in memory email attachments to fail by <a href="https://github.com/kevinfeyrer"><code>@kevinfeyrer</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1696">caronc/apprise#1696</a></li> </ul> <h3>💡 Features</h3> <ul> <li>Improved handling matrix message splitting in <a href="https://redirect.github.com/caronc/apprise/pull/1687">caronc/apprise#1687</a></li> <li>feat(bark): add AES-GCM encryption by <a href="https://github.com/IceCodeNew"><code>@IceCodeNew</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1684">caronc/apprise#1684</a></li> <li>fix(docs): CLI file attachments feature by <a href="https://github.com/egvimo"><code>@egvimo</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1678">caronc/apprise#1678</a></li> <li>Support for Telegram rich message support in <a href="https://redirect.github.com/caronc/apprise/pull/1690">caronc/apprise#1690</a></li> </ul> <h3>❤️ Life-Cycle Support</h3> <ul> <li>Fix grammar and tiny errors in README.md by <a href="https://github.com/notrudyyy"><code>@notrudyyy</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1674">caronc/apprise#1674</a></li> <li>docs: quote pip extras install examples by <a href="https://github.com/nyxst4ck"><code>@nyxst4ck</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1679">caronc/apprise#1679</a></li> <li>Decomissioned legacy service NotificationApi by <a href="https://github.com/lipusal"><code>@lipusal</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1665">caronc/apprise#1665</a></li> <li>Fixed warnings emitted while running test suite in <a href="https://redirect.github.com/caronc/apprise/pull/1689">caronc/apprise#1689</a></li> <li>Proxy documentation added to man page in <a href="https://redirect.github.com/caronc/apprise/pull/1691">caronc/apprise#1691</a></li> <li>Updated github-action references to latest in <a href="https://redirect.github.com/caronc/apprise/pull/1692">caronc/apprise#1692</a></li> <li>Add Italian translation by <a href="https://github.com/albanobattistella"><code>@albanobattistella</code></a> in <a href="https://redirect.github.com/caronc/apprise/pull/1670">caronc/apprise#1670</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/gaoflow"><code>@gaoflow</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1663">caronc/apprise#1663</a></li> <li><a href="https://github.com/TheGlenn88"><code>@TheGlenn88</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1680">caronc/apprise#1680</a></li> <li><a href="https://github.com/egvimo"><code>@egvimo</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1678">caronc/apprise#1678</a></li> <li><a href="https://github.com/nyxst4ck"><code>@nyxst4ck</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1679">caronc/apprise#1679</a></li> <li><a href="https://github.com/notrudyyy"><code>@notrudyyy</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1674">caronc/apprise#1674</a></li> <li><a href="https://github.com/hchouhan"><code>@hchouhan</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1671">caronc/apprise#1671</a></li> <li><a href="https://github.com/IceCodeNew"><code>@IceCodeNew</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1684">caronc/apprise#1684</a></li> <li><a href="https://github.com/Sanjays2402"><code>@Sanjays2402</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1673">caronc/apprise#1673</a></li> <li><a href="https://github.com/lipusal"><code>@lipusal</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1665">caronc/apprise#1665</a></li> <li><a href="https://github.com/albanobattistella"><code>@albanobattistella</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1670">caronc/apprise#1670</a></li> <li><a href="https://github.com/youdie006"><code>@youdie006</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1694">caronc/apprise#1694</a></li> <li><a href="https://github.com/kevinfeyrer"><code>@kevinfeyrer</code></a> made their first contribution in <a href="https://redirect.github.com/caronc/apprise/pull/1696">caronc/apprise#1696</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> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/caronc/apprise/commit/cf17bc9ecd2686c62b548b4577b6e06839331a60"><code>cf17bc9</code></a> bumped version to v1.13.0</li> <li><a href="https://github.com/caronc/apprise/commit/c41f802190ff07a71edb98683c2094f04b5b9fc2"><code>c41f802</code></a> in-memory email attachments no longer fail (<a href="https://redirect.github.com/caronc/apprise/issues/1696">#1696</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/6ebddd3a19a9076d1c0feca410f5e61bf9c927f5"><code>6ebddd3</code></a> Return None from parse_url() on malformed authority content (<a href="https://redirect.github.com/caronc/apprise/issues/1694">#1694</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/6b8cb1364360c9af61190faa248d0ef4187daaa0"><code>6b8cb13</code></a> Add Italian translation (<a href="https://redirect.github.com/caronc/apprise/issues/1670">#1670</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/468d26f3b49c4de8dd21a44f1db99288c79247f6"><code>468d26f</code></a> Updated github-action plugins to latest supported versions (<a href="https://redirect.github.com/caronc/apprise/issues/1692">#1692</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/73c8512a5c518e4c601d6a32c53feabbc2a9e0fa"><code>73c8512</code></a> Support for Telegram rich message support (<a href="https://redirect.github.com/caronc/apprise/issues/1690">#1690</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/fac5056b8cb50d725f83744ff26636ded60f9f46"><code>fac5056</code></a> fixed issue causing time based xmpp tests to randomly fail</li> <li><a href="https://github.com/caronc/apprise/commit/2c48a87d1bfb5f5afa6a40775f6d3fb8fef2d2e4"><code>2c48a87</code></a> Proxy documentation added to man page (<a href="https://redirect.github.com/caronc/apprise/issues/1691">#1691</a>)</li> <li><a href="https://github.com/caronc/apprise/commit/094073af543726a52f29672f31ca060f2f8e31b0"><code>094073a</code></a> relaxed and improved on unit-tests time restrictions</li> <li><a href="https://github.com/caronc/apprise/commit/cc2dffb3ccc6a6ee4cf0a6979c9881fe06b43b78"><code>cc2dffb</code></a> Fixed warnings emitted while running test suite (<a href="https://redirect.github.com/caronc/apprise/issues/1689">#1689</a>)</li> <li>Additional commits viewable in <a href="https://github.com/caronc/apprise/compare/v1.12.0...v1.13.0">compare view</a></li> </ul> </details> <br /> Updates `seleniumbase` from 4.51.12 to 4.52.1 <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.52.1 - Fix timeout issue with executing scripts</h2> <h2>Fix timeout issue with executing scripts</h2> <ul> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/e55bcc7a9f544cbb2ea9ad0c9d4fc358d36c055f">Fix timeout issue with executing scripts in Selenium Mode</a> --> (See the next commit where the fix was moved to a <code>finally</code> block)</li> <li><strong><a href="https://github.com/seleniumbase/SeleniumBase/commit/a5e37fd41813e92ed60cb7554781d5ba3aae6ef4">Improve the earlier commit that fixes the script timeout issue</a></strong> --> (A method that changed the default timeout wasn't resetting it back afterward) --> This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4467">seleniumbase/SeleniumBase#4467</a></li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/37ace079c94bb9e08d4604387fbce13876ac00fb">Update examples</a> --> (Updates some examples after changes were made on the site being tested)</li> </ul> <h2>What's Changed</h2> <ul> <li>Fix timeout issue with executing scripts by <a href="https://github.com/mdmintz"><code>@mdmintz</code></a> in <a href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4468">seleniumbase/SeleniumBase#4468</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/seleniumbase/SeleniumBase/compare/v4.52.0...v4.52.1">https://github.com/seleniumbase/SeleniumBase/compare/v4.52.0...v4.52.1</a></p> <h2>4.52.0 - CDP Mode: Patch 129</h2> <h2>CDP Mode: Patch 129</h2> <ul> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/814c21ed7d0e94d459778b32db8be1fe7eb85ba5">Update CDP Mode</a></li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/a3f0b5715fdb2d42e8ca53a043c173555f0ce097">Improve output from driver downloads</a></li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/17d723fb302ca7eb8a5604c05306a57688494499">Drop support for Python 3.9</a></li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/0b7cc37597bfdc1e008b6176a8cb793760da534a">Refresh Python dependencies</a></li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/99327cc58df60a9cce7cd0e50588e806d65e90c3">Add scraping examples</a></li> </ul> <h3>Resolutions:</h3> <ul> <li>This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4461">seleniumbase/SeleniumBase#4461</a></li> <li>This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4462">seleniumbase/SeleniumBase#4462</a></li> <li>This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4463">seleniumbase/SeleniumBase#4463</a></li> <li>This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4464">seleniumbase/SeleniumBase#4464</a></li> <li>This resolves <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4465">seleniumbase/SeleniumBase#4465</a></li> </ul> <h2>What's Changed</h2> <ul> <li>CDP Mode: Patch 129 by <a href="https://github.com/mdmintz"><code>@mdmintz</code></a> in <a href="https://redirect.github.com/seleniumbase/SeleniumBase/pull/4466">seleniumbase/SeleniumBase#4466</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/seleniumbase/SeleniumBase/compare/v4.51.12...v4.52.0">https://github.com/seleniumbase/SeleniumBase/compare/v4.51.12...v4.52.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/c71edd581a72bfe46a21c1099a39f2ef8af5aa04"><code>c71edd5</code></a> Merge pull request <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4468">#4468</a> from seleniumbase/fix-timeout-issue-with-executing-s...</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/a5e37fd41813e92ed60cb7554781d5ba3aae6ef4"><code>a5e37fd</code></a> Improve the earlier commit that fixes the script timeout issue</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/cd7b8945ca0298be0f7a8f6578ad4313107ed7c9"><code>cd7b894</code></a> Version 4.52.1</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/37ace079c94bb9e08d4604387fbce13876ac00fb"><code>37ace07</code></a> Update examples</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/e55bcc7a9f544cbb2ea9ad0c9d4fc358d36c055f"><code>e55bcc7</code></a> Fix timeout issue with executing scripts in Selenium mode</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/b2207cb2ff3f0849de5ece7b9e81402983f857d5"><code>b2207cb</code></a> Merge pull request <a href="https://redirect.github.com/seleniumbase/SeleniumBase/issues/4466">#4466</a> from seleniumbase/cdp-mode-patch-129</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/0be0f562c918bef4c27ab19c5b3068a28aff8835"><code>0be0f56</code></a> Version 4.52.0</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/44e9d8564ce6afd764941219916e464174badac3"><code>44e9d85</code></a> Update the ReadMe</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/99327cc58df60a9cce7cd0e50588e806d65e90c3"><code>99327cc</code></a> Add scraping examples</li> <li><a href="https://github.com/seleniumbase/SeleniumBase/commit/0b7cc37597bfdc1e008b6176a8cb793760da534a"><code>0b7cc37</code></a> Refresh Python dependencies</li> <li>Additional commits viewable in <a href="https://github.com/seleniumbase/SeleniumBase/compare/v4.51.12...v4.52.1">compare view</a></li> </ul> </details> <br /> Updates `prek` from 0.4.13 to 0.4.14 <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.14</h2> <h2>Release Notes</h2> <p>Released on 2026-08-17.</p> <h3>Enhancements</h3> <ul> <li>Support check-yaml unsafe mode (<a href="https://redirect.github.com/j178/prek/pull/2546">#2546</a>)</li> </ul> <h3>Performance</h3> <ul> <li>Reuse allocations in common filters (<a href="https://redirect.github.com/j178/prek/pull/2548">#2548</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Accept non-finite floats in check-yaml (<a href="https://redirect.github.com/j178/prek/pull/2545">#2545</a>)</li> <li>Allow comment-heavy YAML in check-yaml (<a href="https://redirect.github.com/j178/prek/pull/2554">#2554</a>)</li> <li>Sanitize captured terminal output before replay (<a href="https://redirect.github.com/j178/prek/pull/2552">#2552</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/j178"><code>@j178</code></a></li> </ul> <h2>Install prek 0.4.14</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://github.com/j178/prek/releases/download/v0.4.14/prek-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://github.com/j178/prek/releases/download/v0.4.14/prek-installer.ps1 | iex" </code></pre> <h3>Install prebuilt binaries via Homebrew</h3> <pre lang="sh"><code>brew install prek </code></pre> <h2>Download prek 0.4.14</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-aarch64-apple-darwin.tar.gz">prek-aarch64-apple-darwin.tar.gz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-aarch64-apple-darwin.tar.gz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-x86_64-apple-darwin.tar.gz">prek-x86_64-apple-darwin.tar.gz</a></td> <td>Intel macOS</td> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-x86_64-apple-darwin.tar.gz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-aarch64-pc-windows-msvc.zip">prek-aarch64-pc-windows-msvc.zip</a></td> <td>ARM64 Windows</td> <td><a href="https://github.com/j178/prek/releases/download/v0.4.14/prek-aarch64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> </tbody> </table> <!-- 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.14</h2> <p>Released on 2026-08-17.</p> <h3>Enhancements</h3> <ul> <li>Support check-yaml unsafe mode (<a href="https://redirect.github.com/j178/prek/pull/2546">#2546</a>)</li> </ul> <h3>Performance</h3> <ul> <li>Reuse allocations in common filters (<a href="https://redirect.github.com/j178/prek/pull/2548">#2548</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Accept non-finite floats in check-yaml (<a href="https://redirect.github.com/j178/prek/pull/2545">#2545</a>)</li> <li>Allow comment-heavy YAML in check-yaml (<a href="https://redirect.github.com/j178/prek/pull/2554">#2554</a>)</li> <li>Sanitize captured terminal output before replay (<a href="https://redirect.github.com/j178/prek/pull/2552">#2552</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/j178"><code>@j178</code></a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/j178/prek/commit/432eeb08a4d9fe760817ce8d3d75ed3ebf7d3943"><code>432eeb0</code></a> Bump version to 0.4.14 (<a href="https://redirect.github.com/j178/prek/issues/2571">#2571</a>)</li> <li><a href="https://github.com/j178/prek/commit/6b6d429319dabac1911b26ce6cb6f04bb814951a"><code>6b6d429</code></a> Update Rust crate ignore to v0.4.33 (<a href="https://redirect.github.com/j178/prek/issues/2564">#2564</a>)</li> <li><a href="https://github.com/j178/prek/commit/27d0cf8cb309f7b889d2b355254dc96957bbd60c"><code>27d0cf8</code></a> Update prek hooks (<a href="https://redirect.github.com/j178/prek/issues/2555">#2555</a>)</li> <li><a href="https://github.com/j178/prek/commit/aaf407bb098b624620eac3855e6818b3fa2c4ab0"><code>aaf407b</code></a> Update Rust crate aws-lc-rs to v1.18.0 (<a href="https://redirect.github.com/j178/prek/issues/2569">#2569</a>)</li> <li><a href="https://github.com/j178/prek/commit/3ddddfd494b87dc0ddee4e7694d1ead3ac4277b7"><code>3ddddfd</code></a> Update Rust crate xml to v1.4.0 (<a href="https://redirect.github.com/j178/prek/issues/2570">#2570</a>)</li> <li><a href="https://github.com/j178/prek/commit/fc90ec6c8a7b1519691b221bae5224064248a37d"><code>fc90ec6</code></a> Update Rust crate similar to v3.1.2 (<a href="https://redirect.github.com/j178/prek/issues/2567">#2567</a>)</li> <li><a href="https://github.com/j178/prek/commit/50e60d412350fcef8bc9e50755bd4ea357a45328"><code>50e60d4</code></a> Update Rust crate thiserror to v2.0.20 (<a href="https://redirect.github.com/j178/prek/issues/2568">#2568</a>)</li> <li><a href="https://github.com/j178/prek/commit/70a4c0635352987f55b995ecd768f1e8a2f9c9db"><code>70a4c06</code></a> Update Rust crate liblzma to v0.4.8 (<a href="https://redirect.github.com/j178/prek/issues/2565">#2565</a>)</li> <li><a href="https://github.com/j178/prek/commit/7b8dcaa4579449a9a656889398e7d380bd117b08"><code>7b8dcaa</code></a> Update Rust crate globset to v0.4.20 (<a href="https://redirect.github.com/j178/prek/issues/2563">#2563</a>)</li> <li><a href="https://github.com/j178/prek/commit/3e075d33a5584a8b0f467c39eac3833a8efd4da2"><code>3e075d3</code></a> Update Rust crate clap_complete to v4.6.9 (<a href="https://redirect.github.com/j178/prek/issues/2562">#2562</a>)</li> <li>Additional commits viewable in <a href="https://github.com/j178/prek/compare/v0.4.13...v0.4.14">compare view</a></li> </ul> </details> <br /> Updates `ruff` from 0.16.3 to 0.16.4 <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.16.4</h2> <h2>Release Notes</h2> <p>Released on 2026-08-20.</p> <h3>Preview features</h3> <ul> <li>[<code>flake8-use-pathlib</code>] Add autofix for <code>PTH116</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/26460">#26460</a>)</li> <li>[<code>refurb</code>] Restrict <code>delete-full-slice</code> to lists (<code>FURB131</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27711">#27711</a>)</li> <li>[<code>refurb</code>] Skip <code>FURB101</code> and <code>FURB103</code> when the <code>open</code> argument is a file descriptor (<a href="https://redirect.github.com/astral-sh/ruff/pull/27643">#27643</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>InvalidInstruction</code> on Windows CPUs that do not support <code>POPCNT</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27803">#27803</a>)</li> <li>[<code>pyflakes</code>] Emit semantic syntax errors in string type definitions as <code>F722</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27835">#27835</a>)</li> <li>[<code>pylint</code>] Allow <code>os._exit</code> imports in <code>import-private-name</code> (<code>PLC2701</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27738">#27738</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[syntax-errors] Align mixed t-string/bytes error message with CPython 3.14 (<a href="https://redirect.github.com/astral-sh/ruff/pull/27766">#27766</a>)</li> <li>[<code>ruff</code>] Add <code>ctypes.LittleEndianStructure</code> and related types to existing exception (<code>RUF012</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27753">#27753</a>)</li> <li>[syntax-errors] Detect duplicate keyword arguments (<a href="https://redirect.github.com/astral-sh/ruff/pull/17804">#17804</a>)</li> <li>[syntax-errors] Detect parameters declared <code>nonlocal</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27628">#27628</a>)</li> </ul> <h3>Server</h3> <ul> <li>Offer display-only fixes and mark safe fixes preferred (<a href="https://redirect.github.com/astral-sh/ruff/pull/27807">#27807</a>)</li> <li>Support pull diagnostics for notebook cells (<a href="https://redirect.github.com/astral-sh/ruff/pull/27779">#27779</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add default indicator to rules table (<a href="https://redirect.github.com/astral-sh/ruff/pull/27724">#27724</a>)</li> <li>Fix broken link to Python docs (<a href="https://redirect.github.com/astral-sh/ruff/pull/27757">#27757</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Fix s390x stacker assembly in release builds (<a href="https://redirect.github.com/astral-sh/ruff/pull/27776">#27776</a>)</li> <li>Guarantee minimum stack size when parsing a module, standalone expression, and suites (<a href="https://redirect.github.com/astral-sh/ruff/pull/25464">#25464</a>)</li> <li>Reduce configuration deserialization code size (<a href="https://redirect.github.com/astral-sh/ruff/pull/27924">#27924</a>)</li> <li>Check packed AST index bounds (<a href="https://redirect.github.com/astral-sh/ruff/pull/27849">#27849</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/AbhinavMir"><code>@AbhinavMir</code></a></li> <li><a href="https://github.com/eduardorittner"><code>@eduardorittner</code></a></li> <li><a href="https://github.com/royb3"><code>@royb3</code></a></li> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> <li><a href="https://github.com/carljm"><code>@carljm</code></a></li> <li><a href="https://github.com/rosstitmarsh"><code>@rosstitmarsh</code></a></li> <li><a href="https://github.com/ntBre"><code>@ntBre</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.16.4</h2> <p>Released on 2026-08-20.</p> <h3>Preview features</h3> <ul> <li>[<code>flake8-use-pathlib</code>] Add autofix for <code>PTH116</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/26460">#26460</a>)</li> <li>[<code>refurb</code>] Restrict <code>delete-full-slice</code> to lists (<code>FURB131</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27711">#27711</a>)</li> <li>[<code>refurb</code>] Skip <code>FURB101</code> and <code>FURB103</code> when the <code>open</code> argument is a file descriptor (<a href="https://redirect.github.com/astral-sh/ruff/pull/27643">#27643</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>InvalidInstruction</code> on Windows CPUs that do not support <code>POPCNT</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27803">#27803</a>)</li> <li>[<code>pyflakes</code>] Emit semantic syntax errors in string type definitions as <code>F722</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27835">#27835</a>)</li> <li>[<code>pylint</code>] Allow <code>os._exit</code> imports in <code>import-private-name</code> (<code>PLC2701</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27738">#27738</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[syntax-errors] Align mixed t-string/bytes error message with CPython 3.14 (<a href="https://redirect.github.com/astral-sh/ruff/pull/27766">#27766</a>)</li> <li>[<code>ruff</code>] Add <code>ctypes.LittleEndianStructure</code> and related types to existing exception (<code>RUF012</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/27753">#27753</a>)</li> <li>[syntax-errors] Detect duplicate keyword arguments (<a href="https://redirect.github.com/astral-sh/ruff/pull/17804">#17804</a>)</li> <li>[syntax-errors] Detect parameters declared <code>nonlocal</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/27628">#27628</a>)</li> </ul> <h3>Server</h3> <ul> <li>Offer display-only fixes and mark safe fixes preferred (<a href="https://redirect.github.com/astral-sh/ruff/pull/27807">#27807</a>)</li> <li>Support pull diagnostics for notebook cells (<a href="https://redirect.github.com/astral-sh/ruff/pull/27779">#27779</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add default indicator to rules table (<a href="https://redirect.github.com/astral-sh/ruff/pull/27724">#27724</a>)</li> <li>Fix broken link to Python docs (<a href="https://redirect.github.com/astral-sh/ruff/pull/27757">#27757</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Fix s390x stacker assembly in release builds (<a href="https://redirect.github.com/astral-sh/ruff/pull/27776">#27776</a>)</li> <li>Guarantee minimum stack size when parsing a module, standalone expression, and suites (<a href="https://redirect.github.com/astral-sh/ruff/pull/25464">#25464</a>)</li> <li>Reduce configuration deserialization code size (<a href="https://redirect.github.com/astral-sh/ruff/pull/27924">#27924</a>)</li> <li>Check packed AST index bounds (<a href="https://redirect.github.com/astral-sh/ruff/pull/27849">#27849</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/AbhinavMir"><code>@AbhinavMir</code></a></li> <li><a href="https://github.com/eduardorittner"><code>@eduardorittner</code></a></li> <li><a href="https://github.com/royb3"><code>@royb3</code></a></li> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> <li><a href="https://github.com/carljm"><code>@carljm</code></a></li> <li><a href="https://github.com/rosstitmarsh"><code>@rosstitmarsh</code></a></li> <li><a href="https://github.com/ntBre"><code>@ntBre</code></a></li> <li><a href="https://github.com/zaniebot"><code>@zaniebot</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/11c76bf48fdac06b2f240cba502eda96da4dce77"><code>11c76bf</code></a> Bump 0.16.4 (<a href="https://redirect.github.com/astral-sh/ruff/issues/27937">#27937</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/d53c8c58662ca0576ddd502aa1a2979acf03832f"><code>d53c8c5</code></a> Isolate playground builds from deployment credentials (<a href="https://redirect.github.com/astral-sh/ruff/issues/27839">#27839</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/cab001e5dec22f55653021f1f7be449e47c7d81e"><code>cab001e</code></a> Disable uv preview for releases and pre-commit hooks (<a href="https://redirect.github.com/astral-sh/ruff/issues/27939">#27939</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/f8d575fedc97e75ea62c679d77afb14246afa88e"><code>f8d575f</code></a> [ty] Clarify writing guidance for human readers (<a href="https://redirect.github.com/astral-sh/ruff/issues/27912">#27912</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ca45faebb1750a213df19ed7f686ee5cf9277f93"><code>ca45fae</code></a> Set <code>--preview</code> and <code>--default-index</code> for the <code>uv-lock</code> hook (<a href="https://redirect.github.com/astral-sh/ruff/issues/27935">#27935</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/4827bf7cb449055e46fbfaf4b26e5125883a0569"><code>4827bf7</code></a> Export <code>UV_DEFAULT_INDEX</code> in <code>release.sh</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/27934">#27934</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/d1087a4b9e03d253a88703f34e0869ee4b805456"><code>d1087a4</code></a> [ty] Handle assignment expressions in string annotations (<a href="https://redirect.github.com/astral-sh/ruff/issues/27921">#27921</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/680cce48b6d89ab5b1566e4b797bd4847d861815"><code>680cce4</code></a> [ty] Optimize inherited recursive protocol comparisons (<a href="https://redirect.github.com/astral-sh/ruff/issues/27922">#27922</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/974d3cbc04520c112843d6b92577844587402e04"><code>974d3cb</code></a> Upgrade ecosystem-analyzer and mypy_primer to the latest upstream pins (<a href="https://redirect.github.com/astral-sh/ruff/issues/27932">#27932</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/b169b402356d0676451f4a7bc6903da2644b31eb"><code>b169b40</code></a> Install cargo tools locked (<a href="https://redirect.github.com/astral-sh/ruff/issues/27929">#27929</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.16.3...0.16.4">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>
176 lines
3.3 KiB
TOML
176 lines
3.3 KiB
TOML
[project]
|
|
name = "shelfmark"
|
|
version = "0.1.0"
|
|
description = "Shelfmark - Book Downloader"
|
|
requires-python = ">=3.14"
|
|
dependencies = [
|
|
"flask",
|
|
"flask-cors",
|
|
"flask-socketio",
|
|
"python-socketio",
|
|
"requests[socks]",
|
|
"defusedxml",
|
|
"beautifulsoup4",
|
|
"tqdm",
|
|
"dnspython",
|
|
"gunicorn",
|
|
"gevent",
|
|
"gevent-websocket",
|
|
"psutil",
|
|
"emoji",
|
|
"rarfile",
|
|
"qbittorrent-api>=2026.8.1",
|
|
"transmission-rpc",
|
|
"authlib>=1.7.2,<1.8",
|
|
"apprise>=1.13.0",
|
|
# HTTP/2 client for RFC 8484 DoH: quad9 rejects HTTP/1.1 outright (505), which
|
|
# requests cannot speak. See shelfmark/download/doh_wireformat.py.
|
|
"httpx[http2]>=0.28.1",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
browser = [
|
|
"pyvirtualdisplay",
|
|
"pyautogui",
|
|
"seleniumbase==4.52.1",
|
|
"python-xlib",
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"basedpyright>=1.39.10",
|
|
"prek",
|
|
"pytest",
|
|
"pytest-cov",
|
|
"pytest-xdist>=3.8.0",
|
|
"ruff==0.16.4",
|
|
"vulture>=2.14",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
python_files = ["test_*.py", "*_test.py"]
|
|
python_classes = ["Test*"]
|
|
python_functions = ["test_*"]
|
|
addopts = [
|
|
"-v",
|
|
"--tb=short",
|
|
"-n",
|
|
"auto",
|
|
]
|
|
markers = [
|
|
"integration: marks tests that require running services (deselect with '-m \"not integration\"')",
|
|
"slow: marks tests as slow (deselect with '-m \"not slow\"')",
|
|
"e2e: marks end-to-end tests that require the full application stack",
|
|
]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
extend-exclude = [".local"]
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"F", "I", "UP", "B", "C4", "SIM", "PTH", "RET", "PIE", "FURB", "PERF", "TRY",
|
|
"A", "DTZ", "N",
|
|
"BLE001",
|
|
"ANN001", "ANN002", "ANN003", "ANN201", "ANN202", "ANN204",
|
|
"E402",
|
|
"ERA001",
|
|
"E731",
|
|
"S101",
|
|
"S110",
|
|
"S105", "S108",
|
|
"S311", "S324",
|
|
"S607", "S608",
|
|
"G003", "G004",
|
|
"PGH003",
|
|
"PLC0414",
|
|
"PLR1714",
|
|
"PLW1510",
|
|
"PLW2901",
|
|
"PLW0108",
|
|
"PT028",
|
|
"PYI034",
|
|
"Q000",
|
|
"RUF005", "RUF012", "RUF013", "RUF059", "RUF100",
|
|
"TC001", "TC002", "TC003",
|
|
]
|
|
ignore = ["D", "EM", "FBT", "PLR2004", "UP035", "TRY003", "E501", "TD002", "S104", "S603"]
|
|
|
|
[tool.ruff.lint.per-file-ignores]
|
|
"scripts/**/*.py" = [
|
|
"BLE001",
|
|
"S",
|
|
"TRY",
|
|
]
|
|
"tests/**/*.py" = [
|
|
"ANN",
|
|
"BLE001",
|
|
"B010",
|
|
"B017",
|
|
"B028",
|
|
"DTZ",
|
|
"E402",
|
|
"E731",
|
|
"ERA001",
|
|
"FURB",
|
|
"G003",
|
|
"G004",
|
|
"PERF",
|
|
"PIE",
|
|
"PLC0414",
|
|
"PLW0108",
|
|
"PLW1510",
|
|
"PLW2901",
|
|
"PTH",
|
|
"PT028",
|
|
"PYI034",
|
|
"Q000",
|
|
"RET",
|
|
"RUF012",
|
|
"S",
|
|
"SIM",
|
|
"TC001",
|
|
"TC002",
|
|
"TC003",
|
|
"TRY",
|
|
"UP028",
|
|
]
|
|
|
|
[tool.basedpyright]
|
|
include = ["shelfmark"]
|
|
exclude = [".local", "tests", "**/__pycache__", "**/node_modules"]
|
|
pythonVersion = "3.14"
|
|
typeCheckingMode = "standard"
|
|
|
|
[tool.vulture]
|
|
paths = ["shelfmark"]
|
|
exclude = [".local", "tests"]
|
|
ignore_decorators = [
|
|
"@app.route",
|
|
"@app.before_request",
|
|
"@app.after_request",
|
|
"@app.errorhandler",
|
|
"@socketio.on",
|
|
"@register_provider",
|
|
"@register_provider_kwargs",
|
|
"@register_settings",
|
|
"@register_source",
|
|
"@register_handler",
|
|
"@register_client",
|
|
"@register_output",
|
|
]
|
|
min_confidence = 90
|
|
sort_by_size = true
|
|
|
|
[tool.coverage.run]
|
|
source = ["shelfmark"]
|
|
branch = true
|
|
|
|
[tool.coverage.report]
|
|
show_missing = true
|
|
skip_empty = true
|
|
|
|
[tool.uv]
|
|
package = false
|