mirror of
https://github.com/evroon/bracket.git
synced 2026-09-15 07:29:41 -04:00
Bumps [mypy](https://github.com/python/mypy) from 2.1.0 to 2.2.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/python/mypy/blob/master/CHANGELOG.md">mypy's changelog</a>.</em></p> <blockquote> <h1>Mypy Release Notes</h1> <h2>Next Release</h2> <h3>Packaging changes</h3> <ul> <li>No longer provide mypyc-accelerated wheels for macOS x86_64 [mypyc-wheels <a href="https://redirect.github.com/python/mypy/issues/119">#119</a>](<a href="https://redirect.github.com/mypyc/mypy_mypyc-wheels/pull/119">mypyc/mypy_mypyc-wheels#119</a>)</li> </ul> <h2>Mypy 2.3</h2> <p>We've just uploaded mypy 2.3.0 to the Python Package Index (<a href="https://pypi.org/project/mypy/">PyPI</a>). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:</p> <pre><code>python3 -m pip install -U mypy </code></pre> <p>You can read the full documentation for this release on <a href="http://mypy.readthedocs.io">Read the Docs</a>.</p> <h3>The Upcoming Switch to the New Native Parser</h3> <p>We are planning to enable the new native parser (<code>--native-parser</code>) by default soon. We recommend that you test the native parser in your projects and report any issues in the <a href="https://github.com/python/mypy/issues">mypy issue tracker</a>.</p> <h3>Mypyc Free-threading Memory Safety</h3> <p>Free-threaded Python builds that don't have the GIL require additional synchronization primitives or lock-free algorithms to ensure memory safety when there are race conditions (for example, when a thread reads a list item while another thread writes the same list item concurrently). This release greatly improves memory safety of free threading.</p> <p>List operations are now memory-safe on free threaded Python builds, even in the presence of race conditions. This has some performance cost. For list-heavy workloads, using <code>librt.vecs.vec</code> instead of list is often significantly faster, but note that <code>vec</code> is not (and likely won't be) fully memory safe, and the user is expected to avoid race conditions. The newly introduced <code>librt.threading.Lock</code> helps with this. Using variable-length tuples can also be more efficient than lists, since tuples are immutable and don't require expensive synchronization to ensure memory safety.</p> <p>Instance attribute access is also (mostly) memory safe now on free-threaded builds in the presence of race conditions. We are planning to fix the remaining unsafe cases in a future release.</p> <p>Full list of changes:</p> <ul> <li>Make attribute access memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21705">21705</a>)</li> <li>Fix unsafe borrowing of instance attributes with free-threading (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21688">21688</a>)</li> <li>Make list get/set item more memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21683">21683</a>)</li> <li>Don't borrow list items on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21679">21679</a>)</li> <li>Make multiple assignment from list memory-safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21684">21684</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/b3c4a5b93adb49f979ab553fffebae7179cefa74"><code>b3c4a5b</code></a> Mark release</li> <li><a href="https://github.com/python/mypy/commit/396f5082ac677a5115fbd6a0122328a6711f73dd"><code>396f508</code></a> [Chore] Update changelog for 2.2 (<a href="https://redirect.github.com/python/mypy/issues/21691">#21691</a>)</li> <li><a href="https://github.com/python/mypy/commit/9592a9ea65a9502b14ac3094b28f9e0e3a2e500a"><code>9592a9e</code></a> Upload wasm wheels to PyPI (<a href="https://redirect.github.com/python/mypy/issues/21671">#21671</a>)</li> <li><a href="https://github.com/python/mypy/commit/1dc69620d9e827b015e6486114e0aaff7ec2d990"><code>1dc6962</code></a> Bump ast-serialize to 0.6.0 (<a href="https://redirect.github.com/python/mypy/issues/21664">#21664</a>)</li> <li><a href="https://github.com/python/mypy/commit/96a791310d47575827e44d10360505d8e23807b0"><code>96a7913</code></a> Bump librt to 0.12.0 (<a href="https://redirect.github.com/python/mypy/issues/21663">#21663</a>)</li> <li><a href="https://github.com/python/mypy/commit/5ef090270579013c337a9bcc79e2c58417f09538"><code>5ef0902</code></a> Fix the exportjson tool (.ff cache to .json conversion) (<a href="https://redirect.github.com/python/mypy/issues/21628">#21628</a>)</li> <li><a href="https://github.com/python/mypy/commit/8d621adb954731ba76b25bf7130275f3cadbb81a"><code>8d621ad</code></a> Support --shadow-file with --native-parser (<a href="https://redirect.github.com/python/mypy/issues/21623">#21623</a>)</li> <li><a href="https://github.com/python/mypy/commit/74ecdd8ecc9bee271eab49948436af63751ed1ff"><code>74ecdd8</code></a> Sync typeshed (<a href="https://redirect.github.com/python/mypy/issues/21612">#21612</a>)</li> <li><a href="https://github.com/python/mypy/commit/0cd154158ab2829a2f8c7a2728c7d4ed55e8f193"><code>0cd1541</code></a> [mypyc] Make function wrappers thread-safe on free-threaded builds (<a href="https://redirect.github.com/python/mypy/issues/21620">#21620</a>)</li> <li><a href="https://github.com/python/mypy/commit/22a9cfd1595798810e27ef145ea4c989ccdcc883"><code>22a9cfd</code></a> [mypyc] Make list remove and index thread-safe on free-threaded builds (<a href="https://redirect.github.com/python/mypy/issues/21614">#21614</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v2.1.0...v2.2.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>