-
Notifications
You must be signed in to change notification settings - Fork 479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.24.2/1.24.3: spurious characters introduced when using subset_fonts and insert_pdf #3494
Comments
I can also reproduce this with 1.24.2 but NOT with 1.24.1. |
Downstream link: https://gitlab.com/plom/plom/-/issues/3374 |
This is indeed related to #3470 and will thus be solved with the next PyMuPDF version containing this MuPDF fix. |
Just in case you are not aware:
Given this background, we will not continue fixing any issues around the fontTools-based solution. |
Thanks sounds very promising! Is there a timeline or issue I can follow? I the meantime, perhaps I'll try to scale back our use of |
We are testing this feature for a considerable time now. That new fix should actually be it. For my own purposes, I am using the new version all the time. MuPDF just recently has introduced rich text support for FreeText annotations (not yet supported in PyMuPDF). And the technique used is ... again the Story class! |
Fixes Issue #3374, by falling back on the deprecated in-python fonttools based technique for doing subsetting. To be removed once the new MuPDF-based code is a little more mature, or at least once [1, 2] are fixed. [1] pymupdf/PyMuPDF#3470 [2] pymupdf/PyMuPDF#3494
Fixed in 1.24.6. |
Bumps the patch-dependencies group with 7 updates: | Package | From | To | | --- | --- | --- | | [alembic](https://github.com/sqlalchemy/alembic) | `1.13.1` | `1.13.2` | | [calypsso](https://github.com/aeecleclair/CalypSSO) | `1.0.0` | `1.0.1` | | [icalendar](https://github.com/collective/icalendar) | `5.0.12` | `5.0.13` | | [pydantic](https://github.com/pydantic/pydantic) | `2.7.3` | `2.7.4` | | [pymupdf](https://github.com/pymupdf/pymupdf) | `1.24.5` | `1.24.7` | | [redis](https://github.com/redis/redis-py) | `5.0.5` | `5.0.7` | | [sqlalchemy[asyncio]](https://github.com/sqlalchemy/sqlalchemy) | `2.0.30` | `2.0.31` | Updates `alembic` from 1.13.1 to 1.13.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sqlalchemy/alembic/releases">alembic's releases</a>.</em></p> <blockquote> <h1>1.13.2</h1> <p>Released: June 26, 2024</p> <h2>usecase</h2> <ul> <li> <p><strong>[usecase] [autogenerate]</strong> Improve computed column compare function to support multi-line expressions. Pull request courtesy of Georg Wicke-Arndt.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1391">#1391</a></p> </li> </ul> <h2>bug</h2> <ul> <li> <p><strong>[bug] [commands]</strong> Fixed bug in alembic command stdout where long messages were not properly wrapping at the terminal width. Pull request courtesy Saif Hakim.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1384">#1384</a></p> </li> <li> <p><strong>[bug] [execution]</strong> Fixed internal issue where Alembic would call <code>connection.execute()</code> sending an empty tuple to indicate "no params". In SQLAlchemy 2.1 this case will be deprecated as "empty sequence" is ambiguous as to its intent.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1394">#1394</a></p> </li> <li> <p><strong>[bug] [tests]</strong> Fixes to support pytest 8.1 for the test suite.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1435">#1435</a></p> </li> <li> <p><strong>[bug] [autogenerate] [postgresql]</strong> Fixed the detection of serial column in autogenerate with tables not under default schema on PostgreSQL</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1479">#1479</a></p> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/sqlalchemy/alembic/commits">compare view</a></li> </ul> </details> <br /> Updates `calypsso` from 1.0.0 to 1.0.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/aeecleclair/CalypSSO/releases">calypsso's releases</a>.</em></p> <blockquote> <h2>v1.0.1</h2> <ul> <li><a href="https://github.com/aeecleclair/CalypSSO/commit/b27c7ee57c6e63b85ef2a5a7bb118f5b68873787">fix: sending password on login</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/aeecleclair/CalypSSO/compare/v1.0.0...v1.0.1">https://github.com/aeecleclair/CalypSSO/compare/v1.0.0...v1.0.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aeecleclair/CalypSSO/commit/47fb01f79503a0228c3763fbc93cdc7c02daaddd"><code>47fb01f</code></a> Release 1.0.1</li> <li><a href="https://github.com/aeecleclair/CalypSSO/commit/b27c7ee57c6e63b85ef2a5a7bb118f5b68873787"><code>b27c7ee</code></a> fix: sending password on login</li> <li>See full diff in <a href="https://github.com/aeecleclair/CalypSSO/compare/v1.0.0...v1.0.1">compare view</a></li> </ul> </details> <br /> Updates `icalendar` from 5.0.12 to 5.0.13 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/collective/icalendar/blob/main/CHANGES.rst">icalendar's changelog</a>.</em></p> <blockquote> <h2>5.0.13 (2024-06-20)</h2> <p>Minor changes:</p> <ul> <li>Guide to delete the build folder before running tests</li> <li>Add funding information</li> <li>Make documentation build with Python 3.12</li> <li>Update windows to olson conversion for Greenland Standard Time</li> <li>Extend examples in Usage with alarm and recurrence</li> <li>Document how to serve the built documentation to view with the browser</li> <li>Improve test coverage</li> </ul> <p>New features:</p> <ul> <li>Create GitHub releases for each tag.</li> </ul> <p>Bug fixes:</p> <ul> <li>Parse calendars with X-COMMENT properties at the end the file by ignoring these properites</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/collective/icalendar/commit/f97722e5e7f5615aa7c7f5600d5634151387e51b"><code>f97722e</code></a> Merge pull request <a href="https://redirect.github.com/collective/icalendar/issues/632">#632</a> from niccokunzmann/release</li> <li><a href="https://github.com/collective/icalendar/commit/39b049482992cc903a174b4a359427947bcc2a88"><code>39b0494</code></a> version 5.0.13</li> <li><a href="https://github.com/collective/icalendar/commit/e7ec88de2e4836a8a63b374671b87dc7eb47c3fe"><code>e7ec88d</code></a> Merge pull request <a href="https://redirect.github.com/collective/icalendar/issues/622">#622</a> from niccokunzmann/docs-error</li> <li><a href="https://github.com/collective/icalendar/commit/4484608c8c6d477ccb6d30e343df0255a1403dd3"><code>4484608</code></a> Merge pull request <a href="https://redirect.github.com/collective/icalendar/issues/621">#621</a> from niccokunzmann/docs-py-12</li> <li><a href="https://github.com/collective/icalendar/commit/9862fd145bac5f9224c5434aba89c708878492f8"><code>9862fd1</code></a> Merge pull request <a href="https://redirect.github.com/collective/icalendar/issues/628">#628</a> from raffifu/test/unit_prop</li> <li><a href="https://github.com/collective/icalendar/commit/d3e432d179aa2e60f82cd7cb3b4a51326ba037b7"><code>d3e432d</code></a> add test case for unit prop</li> <li><a href="https://github.com/collective/icalendar/commit/3a54fe77a050d065fd0e5a3e74cd0b745b449ccd"><code>3a54fe7</code></a> Merge pull request <a href="https://redirect.github.com/collective/icalendar/issues/625">#625</a> from niccokunzmann/docs-http-server</li> <li><a href="https://github.com/collective/icalendar/commit/f9dad100c537517cd9515548e0b82c4c47edb6b3"><code>f9dad10</code></a> log changes</li> <li><a href="https://github.com/collective/icalendar/commit/95ccf64575b0d9d47e7ca69d742ac1c8206ef039"><code>95ccf64</code></a> Document how to access the documentation in the browser</li> <li><a href="https://github.com/collective/icalendar/commit/4b5cb0034cc8f9ddd4ed1354ee06e74229221201"><code>4b5cb00</code></a> Guide to delete the build folder before testing</li> <li>Additional commits viewable in <a href="https://github.com/collective/icalendar/compare/v5.0.12...v5.0.13">compare view</a></li> </ul> </details> <br /> Updates `pydantic` from 2.7.3 to 2.7.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/releases">pydantic's releases</a>.</em></p> <blockquote> <h2>v2.7.4 (2024-06-12)</h2> <h2>What's Changed</h2> <h3>Packaging</h3> <ul> <li>Bump <code>pydantic.v1</code> to <code>v1.10.16</code> reference by <a href="https://github.com/sydney-runkle"><code>@sydney-runkle</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/9639">#9639</a></li> </ul> <h3>Fixes</h3> <ul> <li>Specify <code>recursive_guard</code> as kwarg in <code>FutureRef._evaluate</code> by <a href="https://github.com/vfazio"><code>@vfazio</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/9612">#9612</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.7.3...v2.7.4">https://github.com/pydantic/pydantic/compare/v2.7.3...v2.7.4</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/blob/main/HISTORY.md">pydantic's changelog</a>.</em></p> <blockquote> <h2>v2.7.4 (2024-06-12)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.7.4">Github release</a></p> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump <code>pydantic.v1</code> to <code>v1.10.16</code> reference by <a href="https://github.com/sydney-runkle"><code>@sydney-runkle</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/9639">#9639</a></li> </ul> <h4>Fixes</h4> <ul> <li>Specify <code>recursive_guard</code> as kwarg in <code>FutureRef._evaluate</code> by <a href="https://github.com/vfazio"><code>@vfazio</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/9612">#9612</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic/commit/1ab655a54c0defdc5a2a9b13bc90feb6fba78719"><code>1ab655a</code></a> Prep for v2.7.4 release (<a href="https://redirect.github.com/pydantic/pydantic/issues/9642">#9642</a>)</li> <li><a href="https://github.com/pydantic/pydantic/commit/2e3650e4974024b2879030111f8ee0d233f14165"><code>2e3650e</code></a> V1 bump to v1.10.16 (<a href="https://redirect.github.com/pydantic/pydantic/issues/9639">#9639</a>)</li> <li>See full diff in <a href="https://github.com/pydantic/pydantic/compare/v2.7.3...v2.7.4">compare view</a></li> </ul> </details> <br /> Updates `pymupdf` from 1.24.5 to 1.24.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pymupdf/pymupdf/releases">pymupdf's releases</a>.</em></p> <blockquote> <h2>PyMuPDF-1.24.7 released</h2> <p>PyMuPDF-1.24.7 has been released.</p> <p>Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:</p> <pre><code>python -m pip install --upgrade pymupdf </code></pre> <p>[Linux-aarch64 wheels will be built and uploaded later.]</p> <p><strong>Changes in version 1.24.7 (2024-06-26)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3615">#3615</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3616">#3616</a></li> </ul> </li> </ul> <h2>PyMuPDF-1.24.6 released</h2> <p>PyMuPDF-1.24.6 has been released.</p> <p>Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:</p> <pre><code>python -m pip install --upgrade pymupdf </code></pre> <p>[Linux-aarch64 wheels will be built and uploaded later.]</p> <p><strong>Changes in version 1.24.6 (2024-06-25)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3599">#3599</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3594">#3594</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3591">#3591</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3561">#3561</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3559">#3559</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3539">#3539</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3519">#3519</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3510">#3510</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3494">#3494</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3470">#3470</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3400">#3400</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3347">#3347</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3237">#3237</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3493">#3493</a></li> </ul> </li> <li> <p>Other:</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pymupdf/PyMuPDF/blob/main/changes.txt">pymupdf's changelog</a>.</em></p> <blockquote> <h1>Change Log</h1> <p><strong>Changes in version 1.24.7 (2024-06-26)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3615 <https://github.com/pymupdf/PyMuPDF/issues/3615></code>_: Document.pagemode or Document.pagelayout crashes for epub files</li> <li><strong>Fixed</strong> <code>3616 <https://github.com/pymupdf/PyMuPDF/issues/3616></code>_: not last version reported</li> </ul> </li> </ul> <p><strong>Changes in version 1.24.6 (2024-06-25)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3599 <https://github.com/pymupdf/PyMuPDF/issues/3599></code>_: Story.fit_width() has a weird line</li> <li><strong>Fixed</strong> <code>3594 <https://github.com/pymupdf/PyMuPDF/issues/3594></code>_: Garbled extraction for Amazon Sustainability Report</li> <li><strong>Fixed</strong> <code>3591 <https://github.com/pymupdf/PyMuPDF/issues/3591></code>_: 'width' in Page.get_drawings() returns width equal as 0</li> <li><strong>Fixed</strong> <code>3561 <https://github.com/pymupdf/PyMuPDF/issues/3561></code>_: ZeroDivisionError: float division by zero with page.apply_redactions()</li> <li><strong>Fixed</strong> <code>3559 <https://github.com/pymupdf/PyMuPDF/issues/3559></code>_: SegFault 11 when empty H1 H2 H3 H4 etc element is used in insert_htmlbox</li> <li><strong>Fixed</strong> <code>3539 <https://github.com/pymupdf/PyMuPDF/issues/3539></code>_: Add dotted gridline detection to table recognition</li> <li><strong>Fixed</strong> <code>3519 <https://github.com/pymupdf/PyMuPDF/issues/3519></code>_: get_toc(simple=False) AttributeError: 'Outline' object has no attribute 'rect'</li> <li><strong>Fixed</strong> <code>3510 <https://github.com/pymupdf/PyMuPDF/issues/3510></code>_: page.get_label() gets wrong label on the first page of doc</li> <li><strong>Fixed</strong> <code>3494 <https://github.com/pymupdf/PyMuPDF/issues/3494></code>_: 1.24.2/1.24.3: spurious characters introduced when using subset_fonts and insert_pdf</li> <li><strong>Fixed</strong> <code>3470 <https://github.com/pymupdf/PyMuPDF/issues/3470></code>_: subset_fonts error exit without exception/warning</li> <li><strong>Fixed</strong> <code>3400 <https://github.com/pymupdf/PyMuPDF/issues/3400></code>_: set_toc alters link coordinates for some rotated pages on pymupdf 1.24.2</li> <li><strong>Fixed</strong> <code>3347 <https://github.com/pymupdf/PyMuPDF/issues/3347></code>_: Incorrect links to points on pages having different heights</li> <li><strong>Fixed</strong> <code>3237 <https://github.com/pymupdf/PyMuPDF/issues/3237></code>_: Set_metadata() does not work</li> <li><strong>Fixed</strong> <code>3493 <https://github.com/pymupdf/PyMuPDF/discussions/3493></code>_: Isolate PyMuPDF from other libraries; issues when PyMuPDF is loaded with other libraries like GdkPixbuf</li> </ul> </li> <li> <p>Other:</p> <ul> <li> <p>Fixed concurrent use of PyMuPDF caused by use of constant temporary filenames.</p> </li> <li> <p>Add musllinux x86_64 wheels to release.</p> </li> <li> <p>Added clearer version information:</p> <ul> <li><code>pymupdf.pymupdf_version</code>.</li> <li><code>pymupdf.mupdf_version</code>.</li> <li><code>pymupdf.pymupdf_date</code>.</li> </ul> </li> </ul> </li> </ul> <p><strong>Changes in version 1.24.5 (2024-05-30)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3479 <https://github.com/pymupdf/PyMuPDF/issues/3479></code>_: regression: fill_textbox: IndexError: pop from empty list</li> <li><strong>Fixed</strong> <code>3488 <https://github.com/pymupdf/PyMuPDF/issues/3488></code>_: set_toc method error</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/c1c556478ecd9f410f94ce12536bf1752ade5598"><code>c1c5564</code></a> Update changelog, version numbers and release dates for release 1.24.7.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/c940484f43532ddf2c5471d3035837b3accf6aaf"><code>c940484</code></a> scripts/gh_release.py: avoid pyodide build problem with old .pyodide-xbuilden...</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/35e7e0f2a3699aa4201fd17c97050d0115757f83"><code>35e7e0f</code></a> tests/: added a test that we don't segv when treating .epub doc as a pdf.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/c542b260926419539783d12899203b1b04894d3f"><code>c542b26</code></a> src/<strong>init</strong>.py: improved downcasting to pdf document or page.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/5ebf905de7c3e29cf8507f57755ce510b1263199"><code>5ebf905</code></a> scripts/gh_release.py: fix exclusion of musllinux*aarch64.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/ef99b8aa50e761b0bc9f7d6940a796513e4d846a"><code>ef99b8a</code></a> src/: updated version number and date, should have been done for release of 1...</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/99b414a695d4ac3565627c1d709b0b7c1425ff2d"><code>99b414a</code></a> Update changelog, version numbers and release dates for release 1.24.6.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/972bcf3ddf79249f30a8fb6899cba4d759c8e652"><code>972bcf3</code></a> src/ tests/: Correct links to pages with different size/rotation.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/83b36bce0e345a96c9995e40e6b0a798b62d8a33"><code>83b36bc</code></a> tests/resources/test_1645_expected_1.25.pdf: updated to match mupdf output.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/9df123a5406614c6b55019c53d6d2236b9ba6009"><code>9df123a</code></a> tests/: added test for <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3594">#3594</a>.</li> <li>Additional commits viewable in <a href="https://github.com/pymupdf/pymupdf/compare/1.24.5...1.24.7">compare view</a></li> </ul> </details> <br /> Updates `redis` from 5.0.5 to 5.0.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/redis/redis-py/releases">redis's releases</a>.</em></p> <blockquote> <h2>5.0.7</h2> <h1>Changes</h1> <h2>🐛 Bug Fixes</h2> <ul> <li>None UnixDomainSocket timeout (<a href="https://redirect.github.com/redis/redis-py/issues/3293">#3293</a>)</li> </ul> <h2>🧰 Maintenance</h2> <ul> <li>Updated redis version to represent latest available build (<a href="https://redirect.github.com/redis/redis-py/issues/3296">#3296</a>)</li> </ul> <h2>Contributors</h2> <p>We'd like to thank all the contributors who worked on this release!</p> <p><a href="https://github.com/vladvildanov"><code>@vladvildanov</code></a> <a href="https://github.com/dmaier-redislabs"><code>@dmaier-redislabs</code></a></p> <h2>5.0.6</h2> <h1>Changes</h1> <h2>🐛 Bug Fixes</h2> <ul> <li>Handle lists in the response of INFO</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/redis/redis-py/commit/7b3f0d652fdd08dfbe61656f148ddc0f4f2d4fde"><code>7b3f0d6</code></a> [5.0] Fixes CAE-333 (<a href="https://redirect.github.com/redis/redis-py/issues/3293">#3293</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/d2084e3ec9e62d1691e4d3f835a2e272de6a8689"><code>d2084e3</code></a> Updated redis version to represent latest available build (<a href="https://redirect.github.com/redis/redis-py/issues/3296">#3296</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/a0660a6e2e04591891c694a3746244ed7df2dc99"><code>a0660a6</code></a> Updated version of redis-stack docker image (<a href="https://redirect.github.com/redis/redis-py/issues/3295">#3295</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/40a90926b97593d04591f4a3a67706c2a15a2b89"><code>40a9092</code></a> Handle lists in the response of INFO (<a href="https://redirect.github.com/redis/redis-py/issues/3277">#3277</a>)</li> <li>See full diff in <a href="https://github.com/redis/redis-py/compare/v5.0.5...v5.0.7">compare view</a></li> </ul> </details> <br /> Updates `sqlalchemy[asyncio]` from 2.0.30 to 2.0.31 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sqlalchemy/sqlalchemy/releases">sqlalchemy[asyncio]'s releases</a>.</em></p> <blockquote> <h1>2.0.31</h1> <p>Released: June 18, 2024</p> <h2>general</h2> <ul> <li> <p><strong>[general] [bug]</strong> Set up full Python 3.13 support to the extent currently possible, repairing issues within internal language helpers as well as the serializer extension module.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11417">#11417</a></p> </li> </ul> <h2>orm</h2> <ul> <li> <p><strong>[orm] [usecase]</strong> Added missing parameter <code>_orm.with_polymorphic.name</code> that allows specifying the name of returned <code>_orm.AliasedClass</code>.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11361">#11361</a></p> </li> <li> <p><strong>[orm] [bug]</strong> Fixed issue where a <code>MetaData</code> collection would not be serializable, if an <code>Enum</code> or <code>Boolean</code> datatype were present which had been adapted. This specific scenario in turn could occur when using the <code>Enum</code> or <code>Boolean</code> within ORM Annotated Declarative form where type objects frequently get copied.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11365">#11365</a></p> </li> <li> <p><strong>[orm] [bug]</strong> Fixed issue where the <code>_orm.selectinload()</code> and <code>_orm.subqueryload()</code> loader options would fail to take effect when made against an inherited subclass that itself included a subclass-specific <code>_orm.Mapper.with_polymorphic</code> setting.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11446">#11446</a></p> </li> <li> <p><strong>[orm] [bug]</strong> Fixed very old issue involving the <code>_orm.joinedload.innerjoin</code> parameter where making use of this parameter mixed into a query that also included joined eager loads along a self-referential or other cyclical relationship, along with complicating factors like inner joins added for secondary tables and such, would have the chance of splicing a particular inner join to the wrong part of the query. Additional state has been added to the internal method that does this splice to make a better decision as to where splicing should proceed.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11449">#11449</a></p> </li> <li> <p><strong>[orm] [bug] [regression]</strong> Fixed bug in ORM Declarative where the <code>__table__</code> directive could not be declared as a class function with <code>_orm.declared_attr()</code> on a superclass, including an <code>__abstract__</code> class as well as coming from the</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/sqlalchemy/sqlalchemy/commits">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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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>
…511) Bumps the patch-dependencies group with 7 updates in the / directory: | Package | From | To | | --- | --- | --- | | [pymupdf](https://github.com/pymupdf/pymupdf) | `1.24.7` | `1.24.9` | | [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.9.3` | `3.9.5` | | [redis](https://github.com/redis/redis-py) | `5.0.7` | `5.0.8` | | [sqlalchemy[asyncio]](https://github.com/sqlalchemy/sqlalchemy) | `2.0.31` | `2.0.32` | | [pytest-alembic](https://github.com/schireson/pytest-alembic) | `0.11.0` | `0.11.1` | | [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `0.23.7` | `0.23.8` | | [ruff](https://github.com/astral-sh/ruff) | `0.5.2` | `0.5.6` | Updates `pymupdf` from 1.24.7 to 1.24.9 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pymupdf/pymupdf/releases">pymupdf's releases</a>.</em></p> <blockquote> <h2>PyMuPDF-1.24.9 released</h2> <p>PyMuPDF-1.24.9 has been released.</p> <p>Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:</p> <pre><code>python -m pip install --upgrade pymupdf </code></pre> <p>[Linux-aarch64 wheels will be built and uploaded later.]</p> <p><strong>Changes in version 1.24.9 (2024-07-24)</strong></p> <ul> <li>Incremented MuPDF version to 1.24.8.</li> </ul> <h2>PyMuPDF-1.24.8 released</h2> <p>PyMuPDF-1.24.8 has been released.</p> <p>Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:</p> <pre><code>python -m pip install --upgrade pymupdf </code></pre> <p>[Linux-aarch64 wheels will be built and uploaded later.]</p> <p><strong>Changes in version 1.24.8 (2024-07-22)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3636">#3636</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3654">#3654</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3677">#3677</a></li> <li><strong>Fixed</strong> <a href="https://redirect.github.com/pymupdf/pymupdf/issues/3687">#3687</a></li> </ul> </li> </ul> <p>Other:</p> <ul> <li>Fixed various spelling mistakes spotted by codespell.</li> <li>Improved how we modify MuPDF's default configuration on Windows.</li> <li>Make text search to work with ligatures.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pymupdf/PyMuPDF/blob/main/changes.txt">pymupdf's changelog</a>.</em></p> <blockquote> <h1>Change Log</h1> <p><strong>Changes in version 1.24.9 (2024-07-24)</strong></p> <ul> <li>Incremented MyPDF version to 1.24.9.</li> </ul> <p><strong>Changes in version 1.24.8 (2024-07-22)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3636 <https://github.com/pymupdf/PyMuPDF/issues/3636></code>_: API documentation for the open function is not obvious to find.</li> <li><strong>Fixed</strong> <code>3654 <https://github.com/pymupdf/PyMuPDF/issues/3654></code>_: docx parsing was broken in 1.24.7</li> <li><strong>Fixed</strong> <code>3677 <https://github.com/pymupdf/PyMuPDF/issues/3677></code>_: Unable to extract subset font name using the newer versions of PyMuPDF : 1.24.6 and 1.24.7.</li> <li><strong>Fixed</strong> <code>3687 <https://github.com/pymupdf/PyMuPDF/issues/3687></code>_: Page.get_text results in AssertionError for epub files</li> </ul> </li> </ul> <p>Other:</p> <ul> <li>Fixed various spelling mistakes spotted by codespell.</li> <li>Improved how we modify MuPDF's default configuration on Windows.</li> <li>Make text search to work with ligatures.</li> </ul> <p><strong>Changes in version 1.24.7 (2024-06-26)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3615 <https://github.com/pymupdf/PyMuPDF/issues/3615></code>_: Document.pagemode or Document.pagelayout crashes for epub files</li> <li><strong>Fixed</strong> <code>3616 <https://github.com/pymupdf/PyMuPDF/issues/3616></code>_: not last version reported</li> </ul> </li> </ul> <p><strong>Changes in version 1.24.6 (2024-06-25)</strong></p> <ul> <li> <p>Fixed issues:</p> <ul> <li><strong>Fixed</strong> <code>3599 <https://github.com/pymupdf/PyMuPDF/issues/3599></code>_: Story.fit_width() has a weird line</li> <li><strong>Fixed</strong> <code>3594 <https://github.com/pymupdf/PyMuPDF/issues/3594></code>_: Garbled extraction for Amazon Sustainability Report</li> <li><strong>Fixed</strong> <code>3591 <https://github.com/pymupdf/PyMuPDF/issues/3591></code>_: 'width' in Page.get_drawings() returns width equal as 0</li> <li><strong>Fixed</strong> <code>3561 <https://github.com/pymupdf/PyMuPDF/issues/3561></code>_: ZeroDivisionError: float division by zero with page.apply_redactions()</li> <li><strong>Fixed</strong> <code>3559 <https://github.com/pymupdf/PyMuPDF/issues/3559></code>_: SegFault 11 when empty H1 H2 H3 H4 etc element is used in insert_htmlbox</li> <li><strong>Fixed</strong> <code>3539 <https://github.com/pymupdf/PyMuPDF/issues/3539></code>_: Add dotted gridline detection to table recognition</li> <li><strong>Fixed</strong> <code>3519 <https://github.com/pymupdf/PyMuPDF/issues/3519></code>_: get_toc(simple=False) AttributeError: 'Outline' object has no attribute 'rect'</li> <li><strong>Fixed</strong> <code>3510 <https://github.com/pymupdf/PyMuPDF/issues/3510></code>_: page.get_label() gets wrong label on the first page of doc</li> <li><strong>Fixed</strong> <code>3494 <https://github.com/pymupdf/PyMuPDF/issues/3494></code>_: 1.24.2/1.24.3: spurious characters introduced when using subset_fonts and insert_pdf</li> <li><strong>Fixed</strong> <code>3470 <https://github.com/pymupdf/PyMuPDF/issues/3470></code>_: subset_fonts error exit without exception/warning</li> <li><strong>Fixed</strong> <code>3400 <https://github.com/pymupdf/PyMuPDF/issues/3400></code>_: set_toc alters link coordinates for some rotated pages on pymupdf 1.24.2</li> <li><strong>Fixed</strong> <code>3347 <https://github.com/pymupdf/PyMuPDF/issues/3347></code>_: Incorrect links to points on pages having different heights</li> <li><strong>Fixed</strong> <code>3237 <https://github.com/pymupdf/PyMuPDF/issues/3237></code>_: Set_metadata() does not work</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/9717935eeb2d50d15440d62575878214226795f9"><code>9717935</code></a> Update changelog, version numbers and release dates for release 1.24.9.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/0f45692a004a6ad1acb0e12c7fa996d0665ab119"><code>0f45692</code></a> changes.txt: fixed formatting of 1.24.8 description.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/c3bed87b30e1cca56c795080a478a988949f9e1a"><code>c3bed87</code></a> src/<strong>init</strong>.py: fix to work with latest mupdf 1.24.8.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/e4420d11205f5758fda9532c1be503318b264da1"><code>e4420d1</code></a> setup.py: fix generation of mupdf header tree.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/015adf103ba4d675c998908c711648493c7390eb"><code>015adf1</code></a> READMEb.md READMEd.md: removed unnecessary version numbers.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/0cc33dace5c45ae5f5d94468baeb011ef2740590"><code>0cc33da</code></a> setup.py: force creation of new pymupdfb wheels.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/2216b7bd509c0f230a0bcc1185285e17c51bc602"><code>2216b7b</code></a> Update changelog, version numbers and release dates for release 1.24.8.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/573fcd003bfd0dd14207d040090d1edfcc21a47b"><code>573fcd0</code></a> pipcl.py: use sysconfig.get_platform() instead of setuptools.distutils.util.g...</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/f49f75638377f1a5674735c0cd08f70729900976"><code>f49f756</code></a> src/<strong>init</strong>.py: log(): make slightly more robust.</li> <li><a href="https://github.com/pymupdf/PyMuPDF/commit/550411cafd5e67656545b8e5d31df5087f4fddc2"><code>550411c</code></a> Documentation: Updates sidebar logo to use SVG.</li> <li>Additional commits viewable in <a href="https://github.com/pymupdf/pymupdf/compare/1.24.7...1.24.9">compare view</a></li> </ul> </details> <br /> Updates `rapidfuzz` from 3.9.3 to 3.9.5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/rapidfuzz/RapidFuzz/releases">rapidfuzz's releases</a>.</em></p> <blockquote> <h2>Release 3.9.5</h2> <h2>Fixed</h2> <ul> <li>include simd binaries in pyinstaller builds</li> <li>fix builds with setuptools 72 by upgrading <code>scikit-build</code></li> </ul> <h2>Release 3.9.4</h2> <h2>Fixed</h2> <ul> <li>fix bug in <code>Levenshtein.editops</code> and <code>Levenshtein.opcodes</code> which could lead to incorrect results and crashes for some inputs</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst">rapidfuzz's changelog</a>.</em></p> <blockquote> <h2>Changelog</h2> <p>[3.9.6] - 2024-07-29 ^^^^^^^^^^^^^^^^^^^^ Changed</p> <pre><code>* upgrade to ``Cython==3.0.11`` * add python 3.13 wheels <p>[3.9.5] - 2024-07-29 ^^^^^^^^^^^^^^^^^^^^ Fixed</p> <pre><code>* include simd binaries in pyinstaller builds * fix builds with setuptools 72 by upgrading `scikit-build` [3.9.4] - 2024-07-02 ^^^^^^^^^^^^^^^^^^^^ Fixed </code></pre> <ul> <li>fix bug in <code>Levenshtein.editops</code> and <code>Levenshtein.opcodes</code> which could lead to incorrect results and crashes for some inputs</li> </ul> <p>[3.9.3] - 2024-05-31 ^^^^^^^^^^^^^^^^^^^^ Fixed</p> <pre><code>* fix None handling for queries in ``process.cdist`` for scorers not supporting SIMD [3.9.2] - 2024-05-28 ^^^^^^^^^^^^^^^^^^^^ Fixed </code></pre> <ul> <li>fix supported versions of taskflow in cmake to be in the range v3.3 - v3.7</li> </ul> <p>[3.9.1] - 2024-05-19 ^^^^^^^^^^^^^^^^^^^^ Fixed</p> <pre><code>* disable AVX2 on MacOS since it did lead to illegal instructions being generated [3.9.0] - 2024-05-02 ^^^^^^^^^^^^^^^^^^^^ Changed </code></pre> <ul> <li>significantly improve type hints for the library</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="rapidfuzz/RapidFuzz@d2caa92bd0cb62408ecbd7019224d89e59f688e5"><code>d2caa92</code></a> upgrade scikit-build</li> <li><a href="rapidfuzz/RapidFuzz@685252dddee9f16bef8c298f01c0bf5d8f04c11d"><code>685252d</code></a> fix: correction for known wheels</li> <li><a href="rapidfuzz/RapidFuzz@c80e7e14bd003b496b20803ea0b3880b763fa402"><code>c80e7e1</code></a> Bump pypa/cibuildwheel from 2.19.1 to 2.19.2 in the github-actions group</li> <li><a href="rapidfuzz/RapidFuzz@c0525dae0ff3909692df226762f72678a3ee693d"><code>c0525da</code></a> update function name</li> <li><a href="rapidfuzz/RapidFuzz@2c3a250718c0c13bed7a5ac8f80408f2546e930a"><code>2c3a250</code></a> fix documentation for fuzz.ratio</li> <li><a href="rapidfuzz/RapidFuzz@e42836a0479b7489b776434631d1e5d7845f018b"><code>e42836a</code></a> apply formatting</li> <li><a href="rapidfuzz/RapidFuzz@092328f48a9f3e5b48e7f4a6d2d4eca18cb8fff2"><code>092328f</code></a> force newest cython version</li> <li><a href="rapidfuzz/RapidFuzz@6bbd17e84881500032965897bf2ae058d8ab9361"><code>6bbd17e</code></a> include simd binaries in pyinstaller builds</li> <li><a href="rapidfuzz/RapidFuzz@8af875c1227ef0a034f46a1d6d46ab35c188d899"><code>8af875c</code></a> fix ci</li> <li><a href="rapidfuzz/RapidFuzz@080456ac8e1b6037b10536e4de4eda25e36ee18f"><code>080456a</code></a> tag build</li> <li>Additional commits viewable in <a href="rapidfuzz/RapidFuzz@v3.9.3...v3.9.5">compare view</a></li> </ul> </details> <br /> </code></pre> Updates `redis` from 5.0.7 to 5.0.8 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/redis/redis-py/releases">redis's releases</a>.</em></p> <blockquote> <h2>5.0.8</h2> <h1>Changes</h1> <ul> <li>Resolve some docs warnings (<a href="https://redirect.github.com/redis/redis-py/issues/3322">#3322</a>)</li> <li>Add missing type hints for retry.py (<a href="https://redirect.github.com/redis/redis-py/issues/3250">#3250</a>)</li> </ul> <h2>🔥 Breaking Changes</h2> <ul> <li>Timeseries insertion filters for close samples (<a href="https://redirect.github.com/redis/redis-py/issues/3228">#3228</a>)</li> </ul> <h2>🚀 New Features</h2> <ul> <li>Hash field expiration commands (<a href="https://redirect.github.com/redis/redis-py/issues/3218">#3218</a>)</li> <li>Support the MAXAGE option for CLIENT KILL (<a href="https://redirect.github.com/redis/redis-py/issues/3187">#3187</a>)</li> <li>Support NOVALUES parameter for HSCAN (<a href="https://redirect.github.com/redis/redis-py/issues/3157">#3157</a>)</li> <li>Document XREAD of last message (+) (<a href="https://redirect.github.com/redis/redis-py/issues/3187">#3187</a>)</li> <li>Support missing/empty values in search (<a href="https://redirect.github.com/redis/redis-py/issues/3231">#3231</a>)</li> <li>Timeseries insertion filters for close samples (<a href="https://redirect.github.com/redis/redis-py/issues/3228">#3228</a>)</li> </ul> <h2>🧰 Maintenance</h2> <ul> <li>Add extra tests for GEO search (<a href="https://redirect.github.com/redis/redis-py/issues/3244">#3244</a>)</li> <li>Test special characters escaping in search (<a href="https://redirect.github.com/redis/redis-py/issues/3276">#3276</a>)</li> </ul> <h2>🐛 Bug Fixes</h2> <ul> <li>Decode search results at field level (<a href="https://redirect.github.com/redis/redis-py/issues/3309">#3309</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/redis/redis-py/commit/6a2a6368e6a76d0ab2eb7236d4a69ce13730d119"><code>6a2a636</code></a> Decode search results at field level (<a href="https://redirect.github.com/redis/redis-py/issues/3309">#3309</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/e7ef54a0aeb55accc14b72f4faef5fc2e4c9a780"><code>e7ef54a</code></a> Fix bug: client side caching causes unexpected disconnections (async version)...</li> <li><a href="https://github.com/redis/redis-py/commit/0cd0c5dd43cbf0e53fdeae54a6dfa74642c5d1de"><code>0cd0c5d</code></a> Format connection errors in the same way everywhere (<a href="https://redirect.github.com/redis/redis-py/issues/3305">#3305</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/6fedfefb7d22f90ab91a859aee328493192e4deb"><code>6fedfef</code></a> Prepare for Redis 7.4 RC2 (<a href="https://redirect.github.com/redis/redis-py/issues/3303">#3303</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/ed1680ff42f7f6099c9fb2f478e551638a303985"><code>ed1680f</code></a> Add details to the asyncio connection error message (<a href="https://redirect.github.com/redis/redis-py/issues/3211">#3211</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/511fda08ad22b87883500ad85bf18b0ab46844e4"><code>511fda0</code></a> Add missing type hints for <code>retry.py</code> (<a href="https://redirect.github.com/redis/redis-py/issues/3250">#3250</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/c1a6ff7d60a424e0166741a084bdc41237671acd"><code>c1a6ff7</code></a> Bump rojopolis/spellcheck-github-actions from 0.37.0 to 0.38.0 (<a href="https://redirect.github.com/redis/redis-py/issues/3301">#3301</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/338cbfdeb8d9638c7d6d2b70ded08dce35413601"><code>338cbfd</code></a> Re-enable Graph tests (<a href="https://redirect.github.com/redis/redis-py/issues/3287">#3287</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/532bc022d36459a87c5d12084201e031745a4164"><code>532bc02</code></a> Do not restrict pytest dependencies versions (<a href="https://redirect.github.com/redis/redis-py/issues/3286">#3286</a>)</li> <li><a href="https://github.com/redis/redis-py/commit/b6a0f962b2d663a7b62d69b3d956b855689c8cc5"><code>b6a0f96</code></a> Add CODECOV token to CI (<a href="https://redirect.github.com/redis/redis-py/issues/3285">#3285</a>)</li> <li>Additional commits viewable in <a href="https://github.com/redis/redis-py/compare/v5.0.7...v5.0.8">compare view</a></li> </ul> </details> <br /> Updates `sqlalchemy[asyncio]` from 2.0.31 to 2.0.32 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sqlalchemy/sqlalchemy/releases">sqlalchemy[asyncio]'s releases</a>.</em></p> <blockquote> <h1>2.0.32</h1> <p>Released: August 5, 2024</p> <h2>general</h2> <ul> <li> <p><strong>[general] [bug] [regression]</strong> Restored legacy class names removed from <code>sqlalalchemy.orm.collections.*</code>, including <code>_orm.MappedCollection</code>, <code>_orm.mapped_collection()</code>, <code>_orm.column_mapped_collection()</code>, <code>_orm.attribute_mapped_collection()</code>. Pull request courtesy Takashi Kajinami.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11435">#11435</a></p> </li> </ul> <h2>orm</h2> <ul> <li> <p><strong>[orm] [usecase]</strong> The <code>_orm.aliased.name</code> parameter to <code>_orm.aliased()</code> may now be combined with the <code>_orm.aliased.flat</code> parameter, producing per-table names based on a name-prefixed naming convention. Pull request courtesy Eric Atkin.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11575">#11575</a></p> </li> <li> <p><strong>[orm] [bug] [regression]</strong> Fixed regression going back to 1.4 where accessing a collection using the "dynamic" strategy on a transient object and attempting to query would raise an internal error rather than the expected <code>NoResultFound</code> that occurred in 1.3.</p> <p>This change is also <strong>backported</strong> to: 1.4.53</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11562">#11562</a></p> </li> <li> <p><strong>[orm] [bug]</strong> Fixed issue where using the <code>_orm.Query.enable_eagerloads()</code> and <code>_orm.Query.yield_per()</code> methods at the same time, in order to disable eager loading that's configured on the mapper directly, would be silently ignored, leading to errors or unexpected eager population of attributes.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/10834">#10834</a></p> </li> <li> <p><strong>[orm] [bug] [regression]</strong> Fixed regression appearing in 2.0.21 caused by <a href="https://www.sqlalchemy.org/trac/ticket/10279">#10279</a> where using a <code>_sql.delete()</code> or <code>_sql.update()</code> against an ORM class that is the base of an inheritance hierarchy, while also specifying that subclasses should be loaded polymorphically, would leak the polymorphic joins into the UPDATE or DELETE statement as well creating incorrect SQL.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/11625">#11625</a></p> </li> <li> <p><strong>[orm] [bug] [regression]</strong> Fixed regression from version 1.4 in</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/sqlalchemy/sqlalchemy/commits">compare view</a></li> </ul> </details> <br /> Updates `pytest-alembic` from 0.11.0 to 0.11.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/schireson/pytest-alembic/releases">pytest-alembic's releases</a>.</em></p> <blockquote> <h2>v0.11.1</h2> <h2>What's Changed</h2> <ul> <li>Create dependabot.yaml by <a href="https://github.com/tschm"><code>@tschm</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/103">schireson/pytest-alembic#103</a></li> <li>chore(deps): bump actions/checkout from 1 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/108">schireson/pytest-alembic#108</a></li> <li>chore(deps): bump softprops/action-gh-release from 1 to 2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/107">schireson/pytest-alembic#107</a></li> <li>chore(deps): bump actions/cache from 3 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/106">schireson/pytest-alembic#106</a></li> <li>chore(deps): bump abatilo/actions-poetry from 2.0.0 to 3.0.0 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/105">schireson/pytest-alembic#105</a></li> <li>chore(deps): bump actions/upload-artifact from 3 to 4 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/104">schireson/pytest-alembic#104</a></li> <li>Update build.yml by <a href="https://github.com/tschm"><code>@tschm</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/109">schireson/pytest-alembic#109</a></li> <li>chore(deps): bump actions/setup-python from 4 to 5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/111">schireson/pytest-alembic#111</a></li> <li>Updated pyproject.toml to be more flexible with poetry_core versioning by <a href="https://github.com/imadnyc"><code>@imadnyc</code></a> in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/112">schireson/pytest-alembic#112</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/tschm"><code>@tschm</code></a> made their first contribution in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/103">schireson/pytest-alembic#103</a></li> <li><a href="https://github.com/dependabot"><code>@dependabot</code></a> made their first contribution in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/108">schireson/pytest-alembic#108</a></li> <li><a href="https://github.com/imadnyc"><code>@imadnyc</code></a> made their first contribution in <a href="https://redirect.github.com/schireson/pytest-alembic/pull/112">schireson/pytest-alembic#112</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/schireson/pytest-alembic/compare/v0.11.0...v0.11.1">https://github.com/schireson/pytest-alembic/compare/v0.11.0...v0.11.1</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/schireson/pytest-alembic/blob/main/CHANGELOG.md">pytest-alembic's changelog</a>.</em></p> <blockquote> <h3><a href="https://github.com/schireson/pytest-alembic/compare/v0.11.0...v0.11.1">v0.11.1</a> (2024-07-29)</h3> <h4>Fixes</h4> <ul> <li>Updated pyproject.toml to be more flexible with poetry_core versioning. (<a href="https://github.com/schireson/pytest-alembic/commit/a64ffa57a3229863ec53d5a358bb5cf5699ce2c0">a64ffa5</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/schireson/pytest-alembic/commit/488a14babd6938319bdc1fa6e3dadb899161c8ca"><code>488a14b</code></a> Merge pull request <a href="https://redirect.github.com/schireson/pytest-alembic/issues/112">#112</a> from imadnyc/main</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/c7f25c39a795591a794f1ab89203f4a992012319"><code>c7f25c3</code></a> fix: Updated pyproject.toml to be more flexible with poetry_core versioning.</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/a518d45647394d1541ca9ff61bfac2655d90720f"><code>a518d45</code></a> Updated pyproject.toml to be more flexible with poetry_core versioning</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/8e38e10d604a624484bfe1d6ccc4a20c94d9c4ec"><code>8e38e10</code></a> Merge pull request <a href="https://redirect.github.com/schireson/pytest-alembic/issues/111">#111</a> from schireson/dependabot/github_actions/actions/setu...</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/15c3aeac62478882eb8a4017cdab509407621ddf"><code>15c3aea</code></a> chore(deps): bump actions/setup-python from 4 to 5</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/b19fbb64149541a703ea2a1ccf6d9edcf3b990f4"><code>b19fbb6</code></a> Merge pull request <a href="https://redirect.github.com/schireson/pytest-alembic/issues/109">#109</a> from tschm/patch-2</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/f241b9608d31436ced9843a05e0c7b8acec90ee1"><code>f241b96</code></a> Update build.yml</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/e2496582a1514f10b2f20d8387fd80ebe4f3c425"><code>e249658</code></a> Merge pull request <a href="https://redirect.github.com/schireson/pytest-alembic/issues/104">#104</a> from schireson/dependabot/github_actions/actions/uplo...</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/c72fab8299389a65aa630f574497b2391d781355"><code>c72fab8</code></a> chore(deps): bump actions/upload-artifact from 3 to 4</li> <li><a href="https://github.com/schireson/pytest-alembic/commit/37a6fb9723cb5e18d1dacaeb59a59a0549f4dff1"><code>37a6fb9</code></a> Merge pull request <a href="https://redirect.github.com/schireson/pytest-alembic/issues/105">#105</a> from schireson/dependabot/github_actions/abatilo/acti...</li> <li>Additional commits viewable in <a href="https://github.com/schireson/pytest-alembic/compare/v0.11.0...v0.11.1">compare view</a></li> </ul> </details> <br /> Updates `pytest-asyncio` from 0.23.7 to 0.23.8 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio 0.23.8</h2> <h1>0.23.8 (2024-07-17)</h1> <ul> <li>Fixes a bug that caused duplicate markers in async tests <a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/813">#813</a></li> </ul> <h2>Known issues</h2> <p>As of v0.23, pytest-asyncio attaches an asyncio event loop to each item of the test suite (i.e. session, packages, modules, classes, functions) and allows tests to be run in those loops when marked accordingly. Pytest-asyncio currently assumes that async fixture scope is correlated with the new event loop scope. This prevents fixtures from being evaluated independently from the event loop scope and breaks some existing test suites (see <a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/706">#706</a>). For example, a test suite may require all fixtures and tests to run in the same event loop, but have async fixtures that are set up and torn down for each module. If you're affected by this issue, please continue using the v0.21 release, until it is resolved.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4be86a5174f864f6098872fc9fdf0a557a1b50f8"><code>4be86a5</code></a> docs: Prepare release of v0.23.8.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/74b3a0a2057b6faaaf2dfc2d1de785abcf145bcb"><code>74b3a0a</code></a> Build(deps): Bump exceptiongroup in /dependencies/default</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b0009ca36ad66ec0bf40b2ad97edaa96fa39e510"><code>b0009ca</code></a> [build] Declare support for Python 3.13.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/c747c7db7837d7cb7fef029af92092e20759e217"><code>c747c7d</code></a> Build(deps): Bump coverage from 7.5.4 to 7.6.0 in /dependencies/default</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/5c40a1cf8b6f47f47596fcf1117420585517c627"><code>5c40a1c</code></a> Build(deps): Bump hypothesis in /dependencies/default</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b735e8a8ef3118109521c7b058596cf7decb03d0"><code>b735e8a</code></a> build: Remove development dependency on Docker.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/91171b41c2bd6714955cd3d72e07bd9091f909e2"><code>91171b4</code></a> ci: Test with CPython 3.13.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/d572138e097f493c07c84151649d191df5e09ee0"><code>d572138</code></a> Build(deps): Bump hypothesis in /dependencies/default</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/a89e4d7a899d7587e1efa6cafe9e181b3e2a1d69"><code>a89e4d7</code></a> Build(deps): Bump certifi in /dependencies/docs</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b646cc18a222c8043433c38a42c07245fe9735ce"><code>b646cc1</code></a> [fix] Fixed a bug that causes markers to be duplicated for async test functions.</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-asyncio/compare/v0.23.7...v0.23.8">compare view</a></li> </ul> </details> <br /> Updates `ruff` from 0.5.2 to 0.5.6 <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.5.6</h2> <h2>Release Notes</h2> <p>Ruff 0.5.6 automatically enables linting and formatting of notebooks in <em>preview mode</em>. You can opt-out of this behavior by adding <code>*.ipynb</code> to the <code>extend-exclude</code> setting.</p> <pre lang="toml"><code>[tool.ruff] extend-exclude = ["*.ipynb"] </code></pre> <h3>Preview features</h3> <ul> <li>Enable notebooks by default in preview mode (<a href="https://redirect.github.com/astral-sh/ruff/pull/12621">#12621</a>)</li> <li>[<code>flake8-builtins</code>] Implement import, lambda, and module shadowing (<a href="https://redirect.github.com/astral-sh/ruff/pull/12546">#12546</a>)</li> <li>[<code>pydoclint</code>] Add <code>docstring-missing-returns</code> (<code>DOC201</code>) and <code>docstring-extraneous-returns</code> (<code>DOC202</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12485">#12485</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[<code>flake8-return</code>] Exempt cached properties and other property-like decorators from explicit return rule (<code>RET501</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12563">#12563</a>)</li> </ul> <h3>Server</h3> <ul> <li>Make server panic hook more error resilient (<a href="https://redirect.github.com/astral-sh/ruff/pull/12610">#12610</a>)</li> <li>Use <code>$/logTrace</code> for server trace logs in Zed and VS Code (<a href="https://redirect.github.com/astral-sh/ruff/pull/12564">#12564</a>)</li> <li>Keep track of deleted cells for reorder change request (<a href="https://redirect.github.com/astral-sh/ruff/pull/12575">#12575</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>[<code>flake8-implicit-str-concat</code>] Always allow explicit multi-line concatenations when implicit concatenations are banned (<a href="https://redirect.github.com/astral-sh/ruff/pull/12532">#12532</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>[<code>flake8-async</code>] Avoid flagging <code>asyncio.timeout</code>s as unused when the context manager includes <code>asyncio.TaskGroup</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12605">#12605</a>)</li> <li>[<code>flake8-slots</code>] Avoid recommending <code>__slots__</code> for classes that inherit from more than <code>namedtuple</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12531">#12531</a>)</li> <li>[<code>isort</code>] Avoid marking required imports as unused (<a href="https://redirect.github.com/astral-sh/ruff/pull/12537">#12537</a>)</li> <li>[<code>isort</code>] Preserve trailing inline comments on import-from statements (<a href="https://redirect.github.com/astral-sh/ruff/pull/12498">#12498</a>)</li> <li>[<code>pycodestyle</code>] Add newlines before comments (<code>E305</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12606">#12606</a>)</li> <li>[<code>pycodestyle</code>] Don't attach comments with mismatched indents (<a href="https://redirect.github.com/astral-sh/ruff/pull/12604">#12604</a>)</li> <li>[<code>pyflakes</code>] Fix preview-mode bugs in <code>F401</code> when attempting to autofix unused first-party submodule imports in an <code>__init__.py</code> file (<a href="https://redirect.github.com/astral-sh/ruff/pull/12569">#12569</a>)</li> <li>[<code>pylint</code>] Respect start index in <code>unnecessary-list-index-lookup</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12603">#12603</a>)</li> <li>[<code>pyupgrade</code>] Avoid recommending no-argument super in <code>slots=True</code> dataclasses (<a href="https://redirect.github.com/astral-sh/ruff/pull/12530">#12530</a>)</li> <li>[<code>pyupgrade</code>] Use colon rather than dot formatting for integer-only types (<a href="https://redirect.github.com/astral-sh/ruff/pull/12534">#12534</a>)</li> <li>Fix NFKC normalization bug when removing unused imports (<a href="https://redirect.github.com/astral-sh/ruff/pull/12571">#12571</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Consider more stdlib decorators to be property-like (<a href="https://redirect.github.com/astral-sh/ruff/pull/12583">#12583</a>)</li> <li>Improve handling of metaclasses in various linter rules (<a href="https://redirect.github.com/astral-sh/ruff/pull/12579">#12579</a>)</li> <li>Improve consistency between linter rules in determining whether a function is property (<a href="https://redirect.github.com/astral-sh/ruff/pull/12581">#12581</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.5.6</h2> <p>Ruff 0.5.6 automatically enables linting and formatting of notebooks in <em>preview mode</em>. You can opt-out of this behavior by adding <code>*.ipynb</code> to the <code>extend-exclude</code> setting.</p> <pre lang="toml"><code>[tool.ruff] extend-exclude = ["*.ipynb"] </code></pre> <h3>Preview features</h3> <ul> <li>Enable notebooks by default in preview mode (<a href="https://redirect.github.com/astral-sh/ruff/pull/12621">#12621</a>)</li> <li>[<code>flake8-builtins</code>] Implement import, lambda, and module shadowing (<a href="https://redirect.github.com/astral-sh/ruff/pull/12546">#12546</a>)</li> <li>[<code>pydoclint</code>] Add <code>docstring-missing-returns</code> (<code>DOC201</code>) and <code>docstring-extraneous-returns</code> (<code>DOC202</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12485">#12485</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[<code>flake8-return</code>] Exempt cached properties and other property-like decorators from explicit return rule (<code>RET501</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12563">#12563</a>)</li> </ul> <h3>Server</h3> <ul> <li>Make server panic hook more error resilient (<a href="https://redirect.github.com/astral-sh/ruff/pull/12610">#12610</a>)</li> <li>Use <code>$/logTrace</code> for server trace logs in Zed and VS Code (<a href="https://redirect.github.com/astral-sh/ruff/pull/12564">#12564</a>)</li> <li>Keep track of deleted cells for reorder change request (<a href="https://redirect.github.com/astral-sh/ruff/pull/12575">#12575</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>[<code>flake8-implicit-str-concat</code>] Always allow explicit multi-line concatenations when implicit concatenations are banned (<a href="https://redirect.github.com/astral-sh/ruff/pull/12532">#12532</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>[<code>flake8-async</code>] Avoid flagging <code>asyncio.timeout</code>s as unused when the context manager includes <code>asyncio.TaskGroup</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12605">#12605</a>)</li> <li>[<code>flake8-slots</code>] Avoid recommending <code>__slots__</code> for classes that inherit from more than <code>namedtuple</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12531">#12531</a>)</li> <li>[<code>isort</code>] Avoid marking required imports as unused (<a href="https://redirect.github.com/astral-sh/ruff/pull/12537">#12537</a>)</li> <li>[<code>isort</code>] Preserve trailing inline comments on import-from statements (<a href="https://redirect.github.com/astral-sh/ruff/pull/12498">#12498</a>)</li> <li>[<code>pycodestyle</code>] Add newlines before comments (<code>E305</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/12606">#12606</a>)</li> <li>[<code>pycodestyle</code>] Don't attach comments with mismatched indents (<a href="https://redirect.github.com/astral-sh/ruff/pull/12604">#12604</a>)</li> <li>[<code>pyflakes</code>] Fix preview-mode bugs in <code>F401</code> when attempting to autofix unused first-party submodule imports in an <code>__init__.py</code> file (<a href="https://redirect.github.com/astral-sh/ruff/pull/12569">#12569</a>)</li> <li>[<code>pylint</code>] Respect start index in <code>unnecessary-list-index-lookup</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/12603">#12603</a>)</li> <li>[<code>pyupgrade</code>] Avoid recommending no-argument super in <code>slots=True</code> dataclasses (<a href="https://redirect.github.com/astral-sh/ruff/pull/12530">#12530</a>)</li> <li>[<code>pyupgrade</code>] Use colon rather than dot formatting for integer-only types (<a href="https://redirect.github.com/astral-sh/ruff/pull/12534">#12534</a>)</li> <li>Fix NFKC normalization bug when removing unused imports (<a href="https://redirect.github.com/astral-sh/ruff/pull/12571">#12571</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Consider more stdlib decorators to be property-like (<a href="https://redirect.github.com/astral-sh/ruff/pull/12583">#12583</a>)</li> <li>Improve handling of metaclasses in various linter rules (<a href="https://redirect.github.com/astral-sh/ruff/pull/12579">#12579</a>)</li> <li>Improve consistency between linter rules in determining whether a function is property (<a href="https://redirect.github.com/astral-sh/ruff/pull/12581">#12581</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/da824ba316bd11de349479aaab06b6ab06560d38"><code>da824ba</code></a> Release Ruff 0.5.6 (<a href="https://redirect.github.com/astral-sh/ruff/issues/12629">#12629</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/012198a1b0f4870902992218c04aac3f07ee76c8"><code>012198a</code></a> Enable notebooks by default in preview mode (<a href="https://redirect.github.com/astral-sh/ruff/issues/12621">#12621</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/fbab04fbe1ea9ab08540c4e6a0b3ab7b9e19d637"><code>fbab04f</code></a> [red-knot] Allow multiple <code>site-packages</code> search paths (<a href="https://redirect.github.com/astral-sh/ruff/issues/12609">#12609</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/9aa43d5f911f5f46b77bf4d9b72b52ad2d4b9e11"><code>9aa43d5</code></a> Separate <code>red_knot</code> into CLI and <code>red_knot_workspace</code> crates (<a href="https://redirect.github.com/astral-sh/ruff/issues/12623">#12623</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/966563c79b2810371728c302fef2e97569ba5ba0"><code>966563c</code></a> Add tests for hard and soft links (<a href="https://redirect.github.com/astral-sh/ruff/issues/12590">#12590</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/27edadec2953d8816a742f32c41695d1b03534c6"><code>27edade</code></a> Make server panic hook more error resilient (<a href="https://redirect.github.com/astral-sh/ruff/issues/12610">#12610</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/2e2b1b460f4de25e630cde69b4b49577bc5134b4"><code>2e2b1b4</code></a> Fix a typo in <code>docs/editors/settings.md</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/12614">#12614</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/a3e67abf4ce7b519152c03ff441424c18e4c18ee"><code>a3e67ab</code></a> Add newlines before comments in E305 (<a href="https://redirect.github.com/astral-sh/ruff/issues/12606">#12606</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ee0518e8f71cb0bc4d5cc3afc28a54a0bbc78247"><code>ee0518e</code></a> [red-knot] implement attribute of union (<a href="https://redirect.github.com/astral-sh/ruff/issues/12601">#12601</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/d774a3bd48bbf8b697190b7d68251195cdc6c64b"><code>d774a3b</code></a> Avoid unused async when context manager includes <code>TaskGroup</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/12605">#12605</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.5.2...0.5.6">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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@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>
Description of the bug
Maybe a duplicate or at least related to #3470. When I use
insert_pdf
to copy a page from one PDF to a new document, then usesubset_fonts
on the new document, I get spurious letters. In my example below, its an "E". But we've also seen "M".How to reproduce the bug
MWE:
version1.pdf
is: version1.pdfPyMuPDF version
1.24.3
Operating system
Linux
Python version
3.12
The text was updated successfully, but these errors were encountered: