Skip to content
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

TypeCheckError when tuple unpacking to properties of method parameter #506

Closed
2 tasks done
nachos5 opened this issue Jan 14, 2025 · 3 comments
Closed
2 tasks done
Labels

Comments

@nachos5
Copy link

nachos5 commented Jan 14, 2025

Things to check first

  • I have searched the existing issues and didn't find my bug already reported there

  • I have checked that my bug is still present in the latest release

Typeguard version

4.4.1

Python version

3.12.2

What happened?

When using Typeguard 4.4.1 (does not happen in 4.4.0), tuple unpacking to attributes of an object that was passed as a parameter raises an incorrect TypeCheckError:

typeguard.TypeCheckError: value assigned to <param>. <attr> (<type>) is not an instance of <class>

The error message incorrectly claims we're trying to assign a value to the entire object, when we're actually assigning to one of its attributes.

The same operation works correctly:

  • When using individual attribute assignments (<param>.<attr> = <value>)
  • When tuple unpacking to attributes of locally created objects
  • In Typeguard version 4.4.0

How can we reproduce the bug?

"""Bug in Typeguard 4.4.1. Does not happen in 4.4.0."""

from dataclasses import dataclass
from typeguard import typechecked


@dataclass
class Foo:
    bar: str = "bar"
    baz: int = 123


@typechecked
def run() -> None:
    foo = Foo()

    # Case 1: Direct attribute assignment works fine.
    foo.bar = "bar"
    foo.baz = 123

    # Case 2: Tuple unpacking in main scope works fine.
    foo.bar, foo.baz = ("bar", 123)

    mutate(foo)


@typechecked
def mutate(obj: Foo) -> None:
    # Case 3: Direct attribute assignment in method works fine.
    obj.bar = "bar"
    obj.baz = 123

    # Case 4: BUG - Tuple unpacking in method raises incorrect error.
    # Expected: Should work like Case 2.
    # Actual: Raises typeguard.TypeCheckError claiming str is not an instance of Foo.
    obj.bar, obj.baz = ("bar", 123)


if __name__ == "__main__":
    run()
@Apakottur
Copy link

@agronholm Can a release be created to include this bugfix?

@agronholm
Copy link
Owner

@agronholm Can a release be created to include this bugfix?

I have a one or two more bugs to fix, and then I'll cut a release.

@agronholm
Copy link
Owner

Done.

github-actions bot added a commit to Jij-Inc/Playground that referenced this issue Feb 17, 2025
Bumps [typeguard](https://github.com/agronholm/typeguard) from 4.4.1 to
4.4.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/agronholm/typeguard/releases">typeguard's
releases</a>.</em></p>
<blockquote>
<h2>4.4.2</h2>
<ul>
<li>Fixed <code>TypeCheckError</code> in unpacking assignment involving
properties of a parameter of the function (<a
href="https://redirect.github.com/agronholm/typeguard/issues/506">#506</a>;
regression introduced in v4.4.1)</li>
<li>Fixed display of module name for forward references (<a
href="https://redirect.github.com/agronholm/typeguard/pull/492">#492</a>;
PR by <a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
<li>Fixed <code>TypeError</code> when using an assignment expression (<a
href="https://redirect.github.com/agronholm/typeguard/issues/510">#510</a>;
PR by <a
href="https://github.com/JohannesK71083"><code>@​JohannesK71083</code></a>)</li>
<li>Fixed <code>ValueError: no signature found for builtin</code> when
checking against a protocol and a matching attribute in the subject is a
built-in function (<a
href="https://redirect.github.com/agronholm/typeguard/issues/504">#504</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/agronholm/typeguard/blob/master/docs/versionhistory.rst">typeguard's
changelog</a>.</em></p>
<blockquote>
<h1>Version history</h1>
<p>This library adheres to
<code>Semantic Versioning 2.0
&lt;https://semver.org/#semantic-versioning-200&gt;</code>_.</p>
<p><strong>4.4.2</strong> (2025-02-16)</p>
<ul>
<li>Fixed <code>TypeCheckError</code> in unpacking assignment involving
properties of a parameter
of the function
(<code>[#506](agronholm/typeguard#506)
&lt;https://github.com/agronholm/typeguard/issues/506&gt;</code>_;
regression introduced in v4.4.1)</li>
<li>Fixed display of module name for forward references
(<code>[#492](agronholm/typeguard#492)
&lt;https://github.com/agronholm/typeguard/pull/492&gt;</code>_; PR by
<a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
<li>Fixed <code>TypeError</code> when using an assignment expression
(<code>[#510](agronholm/typeguard#510)
&lt;https://github.com/agronholm/typeguard/issues/510&gt;</code>_; PR by
<a
href="https://github.com/JohannesK71083"><code>@​JohannesK71083</code></a>)</li>
<li>Fixed <code>ValueError: no signature found for builtin</code> when
checking against a protocol
and a matching attribute in the subject is a built-in function
(<code>[#504](agronholm/typeguard#504)
&lt;https://github.com/agronholm/typeguard/issues/504&gt;</code>_)</li>
</ul>
<p><strong>4.4.1</strong> (2024-11-03)</p>
<ul>
<li>Dropped Python 3.8 support</li>
<li>Changed the signature of <code>typeguard_ignore()</code> to be
compatible with
<code>typing.no_type_check()</code> (PR by <a
href="https://github.com/jolaf"><code>@​jolaf</code></a>)</li>
<li>Avoid creating reference cycles when type checking uniontypes and
classes</li>
<li>Fixed checking of variable assignments involving tuple unpacking
(<code>[#486](agronholm/typeguard#486)
&lt;https://github.com/agronholm/typeguard/issues/486&gt;</code>_)</li>
<li>Fixed <code>TypeError</code> when checking a class against
<code>type[Self]</code>
(<code>[#481](agronholm/typeguard#481)
&lt;https://github.com/agronholm/typeguard/issues/481&gt;</code>_)</li>
<li>Fixed checking of protocols on the class level (against
<code>type[SomeProtocol]</code>)
(<code>[#498](agronholm/typeguard#498)
&lt;https://github.com/agronholm/typeguard/issues/498&gt;</code>_)</li>
<li>Fixed <code>Self</code> checks in instance/class methods that have
positional-only arguments</li>
<li>Fixed explicit checks of PEP 604 unions against
<code>types.UnionType</code>
(<code>[#467](agronholm/typeguard#467)
&lt;https://github.com/agronholm/typeguard/issues/467&gt;</code>_)</li>
<li>Fixed checks against annotations wrapped in <code>NotRequired</code>
not being run unless the
<code>NotRequired</code> is a forward reference
(<code>[#454](agronholm/typeguard#454)
&lt;https://github.com/agronholm/typeguard/issues/454&gt;</code>_)</li>
</ul>
<p><strong>4.4.0</strong> (2024-10-27)</p>
<ul>
<li>Added proper checking for method signatures in protocol checks
(<code>[#465](agronholm/typeguard#465)
&lt;https://github.com/agronholm/typeguard/pull/465&gt;</code>_)</li>
<li>Fixed basic support for intersection protocols
(<code>[#490](agronholm/typeguard#490)
&lt;https://github.com/agronholm/typeguard/pull/490&gt;</code>_; PR by
<a
href="https://github.com/antonagestam"><code>@​antonagestam</code></a>)</li>
</ul>
<p><strong>4.3.0</strong> (2024-05-27)</p>
<ul>
<li>Added support for checking against static protocols</li>
<li>Fixed some compatibility problems when running on Python 3.13
(<code>[#460](agronholm/typeguard#460)
&lt;https://github.com/agronholm/typeguard/issues/460&gt;</code>_; PR by
<a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/agronholm/typeguard/commit/7f63619e75a2500fb150c12a75d7da1003acbf0e"><code>7f63619</code></a>
Added release date</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/056a9a8f65620447c8cc76c67d87f7fad4a1a66f"><code>056a9a8</code></a>
Fixed signature check raising ValueError for a built-in function</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/855991147c66437319b43048e207b70b13056005"><code>8559911</code></a>
Switched to JSON output when running mypy</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/447ee40a1b35c1273f83e3c1ddf48c04745f021d"><code>447ee40</code></a>
Fixed checking of assignment expressions (<a
href="https://redirect.github.com/agronholm/typeguard/issues/511">#511</a>)</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/95ef60d9f0d50c00a7027928d8ab0fd6170f0da3"><code>95ef60d</code></a>
Fixes for Python 3.14 and PEP 649 (<a
href="https://redirect.github.com/agronholm/typeguard/issues/492">#492</a>)</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/f282802f7f1e3b8530df3104a15ae67838ad567e"><code>f282802</code></a>
Fixed TypeCheckError in unpacking assignment involving properties</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/91b0cbd6b969689353f3345879ec28e64619ad72"><code>91b0cbd</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/agronholm/typeguard/issues/505">#505</a>)</li>
<li><a
href="https://github.com/agronholm/typeguard/commit/b6a7e4387c30a9f7d635712157c889eb073c1ea3"><code>b6a7e43</code></a>
Removed changelog entry that was in fact not a user-facing change</li>
<li>See full diff in <a
href="https://github.com/agronholm/typeguard/compare/4.4.1...4.4.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=typeguard&package-manager=pip&previous-version=4.4.1&new-version=4.4.2)](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 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 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>
dionhaefner added a commit to pasteurlabs/tesseract-core that referenced this issue Feb 26, 2025
Bumps the deps group with 12 updates:

| Package | From | To |
| --- | --- | --- |
| [jinja2](https://github.com/pallets/jinja) | `3.1.4` | `3.1.5` |
| [typer](https://github.com/fastapi/typer) | `0.15.0` | `0.15.1` |
| [rich](https://github.com/Textualize/rich) | `13.9.1` | `13.9.4` |
| [pydantic](https://github.com/pydantic/pydantic) | `2.10.0` | `2.10.6`
|
| [numpy](https://github.com/numpy/numpy) | `2.2.0` | `2.2.3` |
| [fastapi](https://github.com/fastapi/fastapi) | `0.115.0` | `0.115.8`
|
| [click](https://github.com/pallets/click) | `8.1.7` | `8.1.8` |
| [httpx](https://github.com/encode/httpx) | `0.28.0` | `0.28.1` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.3.1` | `8.3.4` |
| [typeguard](https://github.com/agronholm/typeguard) | `4.4.1` |
`4.4.2` |
| [sphinx](https://github.com/sphinx-doc/sphinx) | `8.2.0` | `8.2.1` |
| [myst-parser](https://github.com/executablebooks/MyST-Parser) |
`4.0.0` | `4.0.1` |

Updates `jinja2` from 3.1.4 to 3.1.5
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/jinja/releases">jinja2's
releases</a>.</em></p>
<blockquote>
<h2>3.1.5</h2>
<p>This is the Jinja 3.1.5 security fix release, which fixes security
issues and bugs but does not otherwise change behavior and should not
result in breaking changes compared to the latest feature release.</p>
<p>PyPI: <a
href="https://pypi.org/project/Jinja2/3.1.5/">https://pypi.org/project/Jinja2/3.1.5/</a>
Changes: <a
href="https://jinja.palletsprojects.com/changes/#version-3-1-5">https://jinja.palletsprojects.com/changes/#version-3-1-5</a>
Milestone: <a
href="https://github.com/pallets/jinja/milestone/16?closed=1">https://github.com/pallets/jinja/milestone/16?closed=1</a></p>
<ul>
<li>The sandboxed environment handles indirect calls to
<code>str.format</code>, such as by passing a stored reference to a
filter that calls its argument. <a
href="https://github.com/pallets/jinja/security/advisories/GHSA-q2x7-8rv6-6q7h">GHSA-q2x7-8rv6-6q7h</a></li>
<li>Escape template name before formatting it into error messages, to
avoid issues with names that contain f-string syntax. <a
href="https://redirect.github.com/pallets/jinja/issues/1792">#1792</a>,
<a
href="https://github.com/pallets/jinja/security/advisories/GHSA-gmj6-6f8f-6699">GHSA-gmj6-6f8f-6699</a></li>
<li>Sandbox does not allow <code>clear</code> and <code>pop</code> on
known mutable sequence types. <a
href="https://redirect.github.com/pallets/jinja/issues/2032">#2032</a></li>
<li>Calling sync <code>render</code> for an async template uses
<code>asyncio.run</code>. <a
href="https://redirect.github.com/pallets/jinja/issues/1952">#1952</a></li>
<li>Avoid unclosed <code>auto_aiter</code> warnings. <a
href="https://redirect.github.com/pallets/jinja/issues/1960">#1960</a></li>
<li>Return an <code>aclose</code>-able <code>AsyncGenerator</code> from
<code>Template.generate_async</code>. <a
href="https://redirect.github.com/pallets/jinja/issues/1960">#1960</a></li>
<li>Avoid leaving <code>root_render_func()</code> unclosed in
<code>Template.generate_async</code>. <a
href="https://redirect.github.com/pallets/jinja/issues/1960">#1960</a></li>
<li>Avoid leaving async generators unclosed in blocks, includes and
extends. <a
href="https://redirect.github.com/pallets/jinja/issues/1960">#1960</a></li>
<li>The runtime uses the correct <code>concat</code> function for the
current environment when calling block references. <a
href="https://redirect.github.com/pallets/jinja/issues/1701">#1701</a></li>
<li>Make <code>|unique</code> async-aware, allowing it to be used after
another async-aware filter. <a
href="https://redirect.github.com/pallets/jinja/issues/1781">#1781</a></li>
<li><code>|int</code> filter handles <code>OverflowError</code> from
scientific notation. <a
href="https://redirect.github.com/pallets/jinja/issues/1921">#1921</a></li>
<li>Make compiling deterministic for tuple unpacking in a <code>{% set
... %}</code> call. <a
href="https://redirect.github.com/pallets/jinja/issues/2021">#2021</a></li>
<li>Fix dunder protocol (<code>copy</code>/<code>pickle</code>/etc)
interaction with <code>Undefined</code> objects. <a
href="https://redirect.github.com/pallets/jinja/issues/2025">#2025</a></li>
<li>Fix <code>copy</code>/<code>pickle</code> support for the internal
<code>missing</code> object. <a
href="https://redirect.github.com/pallets/jinja/issues/2027">#2027</a></li>
<li><code>Environment.overlay(enable_async)</code> is applied correctly.
<a
href="https://redirect.github.com/pallets/jinja/issues/2061">#2061</a></li>
<li>The error message from <code>FileSystemLoader</code> includes the
paths that were searched. <a
href="https://redirect.github.com/pallets/jinja/issues/1661">#1661</a></li>
<li><code>PackageLoader</code> shows a clearer error message when the
package does not contain the templates directory. <a
href="https://redirect.github.com/pallets/jinja/issues/1705">#1705</a></li>
<li>Improve annotations for methods returning copies. <a
href="https://redirect.github.com/pallets/jinja/issues/1880">#1880</a></li>
<li><code>urlize</code> does not add <code>mailto:</code> to values like
<code>@a@b</code>. <a
href="https://redirect.github.com/pallets/jinja/issues/1870">#1870</a></li>
<li>Tests decorated with <code>@pass_context</code> can be used with the
<code>|select</code> filter. <a
href="https://redirect.github.com/pallets/jinja/issues/1624">#1624</a></li>
<li>Using <code>set</code> for multiple assignment (<code>a, b = 1,
2</code>) does not fail when the target is a namespace attribute. <a
href="https://redirect.github.com/pallets/jinja/issues/1413">#1413</a></li>
<li>Using <code>set</code> in all branches of <code>{% if %}{% elif %}{%
else %}</code> blocks does not cause the variable to be considered
initially undefined. <a
href="https://redirect.github.com/pallets/jinja/issues/1253">#1253</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/jinja/blob/main/CHANGES.rst">jinja2's
changelog</a>.</em></p>
<blockquote>
<h2>Version 3.1.5</h2>
<p>Released 2024-12-21</p>
<ul>
<li>The sandboxed environment handles indirect calls to
<code>str.format</code>, such as
by passing a stored reference to a filter that calls its argument.
:ghsa:<code>q2x7-8rv6-6q7h</code></li>
<li>Escape template name before formatting it into error messages, to
avoid
issues with names that contain f-string syntax.
:issue:<code>1792</code>, :ghsa:<code>gmj6-6f8f-6699</code></li>
<li>Sandbox does not allow <code>clear</code> and <code>pop</code> on
known mutable sequence
types. :issue:<code>2032</code></li>
<li>Calling sync <code>render</code> for an async template uses
<code>asyncio.run</code>.
:pr:<code>1952</code></li>
<li>Avoid unclosed <code>auto_aiter</code> warnings.
:pr:<code>1960</code></li>
<li>Return an <code>aclose</code>-able <code>AsyncGenerator</code> from
<code>Template.generate_async</code>. :pr:<code>1960</code></li>
<li>Avoid leaving <code>root_render_func()</code> unclosed in
<code>Template.generate_async</code>. :pr:<code>1960</code></li>
<li>Avoid leaving async generators unclosed in blocks, includes and
extends.
:pr:<code>1960</code></li>
<li>The runtime uses the correct <code>concat</code> function for the
current environment
when calling block references. :issue:<code>1701</code></li>
<li>Make <code>|unique</code> async-aware, allowing it to be used after
another
async-aware filter. :issue:<code>1781</code></li>
<li><code>|int</code> filter handles <code>OverflowError</code> from
scientific notation.
:issue:<code>1921</code></li>
<li>Make compiling deterministic for tuple unpacking in a <code>{% set
... %}</code>
call. :issue:<code>2021</code></li>
<li>Fix dunder protocol (<code>copy</code>/<code>pickle</code>/etc)
interaction with <code>Undefined</code>
objects. :issue:<code>2025</code></li>
<li>Fix <code>copy</code>/<code>pickle</code> support for the internal
<code>missing</code> object.
:issue:<code>2027</code></li>
<li><code>Environment.overlay(enable_async)</code> is applied correctly.
:pr:<code>2061</code></li>
<li>The error message from <code>FileSystemLoader</code> includes the
paths that were
searched. :issue:<code>1661</code></li>
<li><code>PackageLoader</code> shows a clearer error message when the
package does not
contain the templates directory. :issue:<code>1705</code></li>
<li>Improve annotations for methods returning copies.
:pr:<code>1880</code></li>
<li><code>urlize</code> does not add <code>mailto:</code> to values like
<code>@a@b</code>. :pr:<code>1870</code></li>
<li>Tests decorated with <code>@pass_context`` can be used with the
``|select`` filter. :issue:</code>1624`</li>
<li>Using <code>set</code> for multiple assignment (<code>a, b = 1,
2</code>) does not fail when the
target is a namespace attribute. :issue:<code>1413</code></li>
<li>Using <code>set</code> in all branches of <code>{% if %}{% elif %}{%
else %}</code> blocks
does not cause the variable to be considered initially undefined.
:issue:<code>1253</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pallets/jinja/commit/877f6e51be8e1765b06d911cfaa9033775f051d1"><code>877f6e5</code></a>
release version 3.1.5</li>
<li><a
href="https://github.com/pallets/jinja/commit/8d588592653b052f957b720e1fc93196e06f207f"><code>8d58859</code></a>
remove test pypi</li>
<li><a
href="https://github.com/pallets/jinja/commit/eda8fe86fd716dfce24910294e9f1fc81fbc740c"><code>eda8fe8</code></a>
update dev dependencies</li>
<li><a
href="https://github.com/pallets/jinja/commit/c8fdce1e0333f1122b244b03a48535fdd7b03d91"><code>c8fdce1</code></a>
Fix bug involving calling set on a template parameter within all
branches of ...</li>
<li><a
href="https://github.com/pallets/jinja/commit/66587ce989e5a478e0bb165371fa2b9d42b7040f"><code>66587ce</code></a>
Fix bug where set would sometimes fail within if</li>
<li><a
href="https://github.com/pallets/jinja/commit/fbc3a696c729d177340cc089531de7e2e5b6f065"><code>fbc3a69</code></a>
Add support for namespaces in tuple parsing (<a
href="https://redirect.github.com/pallets/jinja/issues/1664">#1664</a>)</li>
<li><a
href="https://github.com/pallets/jinja/commit/b8f4831d41e6a7cb5c40d42f074ffd92d2daccfc"><code>b8f4831</code></a>
more comments about nsref assignment</li>
<li><a
href="https://github.com/pallets/jinja/commit/ee832194cd9f55f75e5a51359b709d535efe957f"><code>ee83219</code></a>
Add support for namespaces in tuple assignment</li>
<li><a
href="https://github.com/pallets/jinja/commit/1d55cddbb28e433779511f28f13a2d8c4ec45826"><code>1d55cdd</code></a>
Triple quotes in docs (<a
href="https://redirect.github.com/pallets/jinja/issues/2064">#2064</a>)</li>
<li><a
href="https://github.com/pallets/jinja/commit/8a8eafc6b992ba177f1d3dd483f8465f18a11116"><code>8a8eafc</code></a>
edit block assignment section</li>
<li>Additional commits viewable in <a
href="https://github.com/pallets/jinja/compare/3.1.4...3.1.5">compare
view</a></li>
</ul>
</details>
<br />

Updates `typer` from 0.15.0 to 0.15.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/fastapi/typer/releases">typer's
releases</a>.</em></p>
<blockquote>
<h2>0.15.1</h2>
<h3>Features</h3>
<ul>
<li>🗑️ Deprecate <code>shell_complete</code> and continue to use
<code>autocompletion</code> for CLI parameters. PR <a
href="https://redirect.github.com/fastapi/typer/pull/974">#974</a> by <a
href="https://github.com/svlandeg"><code>@​svlandeg</code></a>.</li>
</ul>
<h3>Docs</h3>
<ul>
<li>✏️ Fix a few typos in the source and documentation. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1028">#1028</a> by
<a href="https://github.com/kkirsche"><code>@​kkirsche</code></a>.</li>
<li>📝 Fix minor inconsistencies and typos in tutorial. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1067">#1067</a> by
<a href="https://github.com/tvoirand"><code>@​tvoirand</code></a>.</li>
<li>✏️ Fix a few small typos in the documentation. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1077">#1077</a> by
<a href="https://github.com/svlandeg"><code>@​svlandeg</code></a>.</li>
</ul>
<h3>Internal</h3>
<ul>
<li>🔧 Update build-docs filter patterns. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1080">#1080</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔨 Update deploy docs preview script. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1079">#1079</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔧 Update members. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1078">#1078</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>⬆ [pre-commit.ci] pre-commit autoupdate. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1071">#1071</a> by
<a
href="https://github.com/apps/pre-commit-ci"><code>@​pre-commit-ci[bot]</code></a>.</li>
<li>⬆ Update httpx requirement from <!-- raw HTML omitted
-->=0.27.0,&lt;0.29.0. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1065">#1065</a> by
<a
href="https://github.com/apps/dependabot"><code>@​dependabot[bot]</code></a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/fastapi/typer/blob/master/docs/release-notes.md">typer's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.1</h2>
<h3>Features</h3>
<ul>
<li>🗑️ Deprecate <code>shell_complete</code> and continue to use
<code>autocompletion</code> for CLI parameters. PR <a
href="https://redirect.github.com/fastapi/typer/pull/974">#974</a> by <a
href="https://github.com/svlandeg"><code>@​svlandeg</code></a>.</li>
</ul>
<h3>Docs</h3>
<ul>
<li>✏️ Fix a few typos in the source and documentation. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1028">#1028</a> by
<a href="https://github.com/kkirsche"><code>@​kkirsche</code></a>.</li>
<li>📝 Fix minor inconsistencies and typos in tutorial. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1067">#1067</a> by
<a href="https://github.com/tvoirand"><code>@​tvoirand</code></a>.</li>
<li>✏️ Fix a few small typos in the documentation. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1077">#1077</a> by
<a href="https://github.com/svlandeg"><code>@​svlandeg</code></a>.</li>
</ul>
<h3>Internal</h3>
<ul>
<li>🔧 Update build-docs filter patterns. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1080">#1080</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔨 Update deploy docs preview script. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1079">#1079</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔧 Update members. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1078">#1078</a> by
<a href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>⬆ [pre-commit.ci] pre-commit autoupdate. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1071">#1071</a> by
<a
href="https://github.com/apps/pre-commit-ci"><code>@​pre-commit-ci[bot]</code></a>.</li>
<li>⬆ Update httpx requirement from <!-- raw HTML omitted
-->=0.27.0,&lt;0.29.0. PR <a
href="https://redirect.github.com/fastapi/typer/pull/1065">#1065</a> by
<a
href="https://github.com/apps/dependabot"><code>@​dependabot[bot]</code></a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/fastapi/typer/commit/0b89650d1e694f5c936836c9b768d8c023413cf2"><code>0b89650</code></a>
🔖 Release version 0.15.1</li>
<li><a
href="https://github.com/fastapi/typer/commit/bd89bf62f2bfe0af8667e85db341db1f32db694d"><code>bd89bf6</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/typer/commit/3b9ce479086636280271d36e410dc5abdcf318d8"><code>3b9ce47</code></a>
✏️ Fix a few typos in the source and documentation (<a
href="https://redirect.github.com/fastapi/typer/issues/1028">#1028</a>)</li>
<li><a
href="https://github.com/fastapi/typer/commit/95ba85f5b3c8088733e22218d9c87eb38e03ab08"><code>95ba85f</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/typer/commit/dbc335b0824b952c70278cccb5dbcf774cdba9b5"><code>dbc335b</code></a>
📝 Fix minor inconsistencies and typos in tutorial (<a
href="https://redirect.github.com/fastapi/typer/issues/1067">#1067</a>)</li>
<li><a
href="https://github.com/fastapi/typer/commit/b88c327d1c3c94de53280130f787a320f3378f69"><code>b88c327</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/typer/commit/d8e56e275f63446e7d455efc83095ec4d711114d"><code>d8e56e2</code></a>
🗑️ Deprecate <code>shell_complete</code> and continue to use
<code>autocompletion</code> for CLI pa...</li>
<li><a
href="https://github.com/fastapi/typer/commit/5f378eec9d8400960e89a305763572f97237afe4"><code>5f378ee</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/typer/commit/b826dc445162af7d6edd1aebe173fa49c1d683ce"><code>b826dc4</code></a>
✏️ Fix a few small typos in the documentation (<a
href="https://redirect.github.com/fastapi/typer/issues/1077">#1077</a>)</li>
<li><a
href="https://github.com/fastapi/typer/commit/9be60da3aec1693ca787947f8c8154a9b6c9fc5b"><code>9be60da</code></a>
📝 Update release notes</li>
<li>Additional commits viewable in <a
href="https://github.com/fastapi/typer/compare/0.15.0...0.15.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `rich` from 13.9.1 to 13.9.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/Textualize/rich/releases">rich's
releases</a>.</em></p>
<blockquote>
<h2>The Faster is Faster release</h2>
<h2>[13.9.4] - 2024-11-01</h2>
<h3>Changed</h3>
<ul>
<li>Optimizations to cell_len which may speed up Rich / Textual output
<a
href="https://redirect.github.com/Textualize/rich/pull/3546">Textualize/rich#3546</a></li>
</ul>
<h2>The irregular expression release</h2>
<p>Fix a broken regex that resulted in the slow path being chosen for
some operations. This fix should result in notable speedups for some
operations, such as wrapping text.</p>
<h2>[13.9.3] - 2024-10-22</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed broken regex that may have resulted in poor performance. <a
href="https://redirect.github.com/Textualize/rich/pull/3535">Textualize/rich#3535</a></li>
</ul>
<h2>The Splitting segments Release</h2>
<p>A hotfix for highlighting in the table, and a fix for
<code>Segment.split_cells</code></p>
<h2>[13.9.2] - 2024-10-04</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed <code>Table</code> columns not highlighting when added by
<code>add_row</code> <a
href="https://redirect.github.com/Textualize/rich/issues/3517">Textualize/rich#3517</a></li>
<li>Fixed an issue with Segment.split_cells reported in Textual <a
href="https://redirect.github.com/Textualize/textual/issues/5090">Textualize/textual#5090</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/Textualize/rich/blob/master/CHANGELOG.md">rich's
changelog</a>.</em></p>
<blockquote>
<h2>[13.9.4] - 2024-11-01</h2>
<h3>Changed</h3>
<ul>
<li>Optimizations to cell_len which may speed up Rich / Textual output
<a
href="https://redirect.github.com/Textualize/rich/pull/3546">Textualize/rich#3546</a></li>
</ul>
<h2>[13.9.3] - 2024-10-22</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed broken regex that may have resulted in poor performance. <a
href="https://redirect.github.com/Textualize/rich/pull/3535">Textualize/rich#3535</a></li>
</ul>
<h2>[13.9.2] - 2024-10-04</h2>
<h3>Fixed</h3>
<ul>
<li>Fixed <code>Table</code> columns not highlighting when added by
<code>add_row</code> <a
href="https://redirect.github.com/Textualize/rich/issues/3517">Textualize/rich#3517</a></li>
<li>Fixed an issue with Segment.split_cells reported in Textual <a
href="https://redirect.github.com/Textualize/textual/issues/5090">Textualize/textual#5090</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/Textualize/rich/commit/43d3b04725ab9731727fb1126e35980c62f32377"><code>43d3b04</code></a>
Merge pull request <a
href="https://redirect.github.com/Textualize/rich/issues/3548">#3548</a>
from Textualize/bump1394</li>
<li><a
href="https://github.com/Textualize/rich/commit/e440ff23806372ec221fa8f22c57a9d31828de4b"><code>e440ff2</code></a>
bump</li>
<li><a
href="https://github.com/Textualize/rich/commit/12301e3041455cde59f463a8e1522070e16ceb28"><code>12301e3</code></a>
Merge pull request <a
href="https://redirect.github.com/Textualize/rich/issues/3546">#3546</a>
from Textualize/faster-cell-len</li>
<li><a
href="https://github.com/Textualize/rich/commit/02f3d148e8f7143519272ed6404cc6894dc13ec6"><code>02f3d14</code></a>
comment</li>
<li><a
href="https://github.com/Textualize/rich/commit/aaaef278be38ebadea3d6f47dedd89fd910078ca"><code>aaaef27</code></a>
leaner syntax</li>
<li><a
href="https://github.com/Textualize/rich/commit/6cef0bcb0e584eac1eb6021cc2202ecad70b6b11"><code>6cef0bc</code></a>
leaner cell_len</li>
<li><a
href="https://github.com/Textualize/rich/commit/46150cdbf61426c4683c59a0e4f45dca23d38202"><code>46150cd</code></a>
sum and map is faster</li>
<li><a
href="https://github.com/Textualize/rich/commit/9e7f363aebe01542210633dd4027ce777bf31e3c"><code>9e7f363</code></a>
use sets</li>
<li><a
href="https://github.com/Textualize/rich/commit/afcc5c5a957c75b325fd7cc45bd70b3ac6413ef4"><code>afcc5c5</code></a>
Merge pull request <a
href="https://redirect.github.com/Textualize/rich/issues/3535">#3535</a>
from Textualize/regex-error</li>
<li><a
href="https://github.com/Textualize/rich/commit/60f3b615a706949f6ae9734eeaea519573af4522"><code>60f3b61</code></a>
changelog</li>
<li>Additional commits viewable in <a
href="https://github.com/Textualize/rich/compare/v13.9.1...v13.9.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `pydantic` from 2.10.0 to 2.10.6
<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.10.6 2025-01-23</h2>
<h2>What's Changed</h2>
<h3>Fixes</h3>
<ul>
<li>Fix JSON Schema reference collection with <code>'examples'</code>
keys by <a href="https://github.com/Viicos"><code>@​Viicos</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11325">#11325</a></li>
<li>Fix url python serialization by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11331">#11331</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic/compare/v2.10.5...v2.10.6">https://github.com/pydantic/pydantic/compare/v2.10.5...v2.10.6</a></p>
<h2>v2.10.5 2024-12-18</h2>
<h2>What's Changed</h2>
<h3>Fixes</h3>
<ul>
<li>Remove custom MRO implementation of Pydantic models by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11184">#11184</a></li>
<li>Fix URL serialization for unions by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11233">#11233</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic/compare/v2.10.4...v2.10.5">https://github.com/pydantic/pydantic/compare/v2.10.4...v2.10.5</a></p>
<h2>v2.10.4 2024-12-18</h2>
<h2>What's Changed</h2>
<h3>Packaging</h3>
<ul>
<li>Bump <code>pydantic-core</code> to v2.27.2 by <a
href="https://github.com/davidhewitt"><code>@​davidhewitt</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11138">#11138</a></li>
</ul>
<h3>Fixes</h3>
<ul>
<li>Fix for comparison of <code>AnyUrl</code> objects by <a
href="https://github.com/alexprabhat99"><code>@​alexprabhat99</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11082">#11082</a></li>
<li>Properly fetch PEP 695 type params for functions, do not fetch
annotations from signature by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11093">#11093</a></li>
<li>Include JSON Schema input core schema in function schemas by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11085">#11085</a></li>
<li>Add <code>len</code> to <code>_BaseUrl</code> to avoid TypeError by
<a href="https://github.com/Kharianne"><code>@​Kharianne</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11111">#11111</a></li>
<li>Make sure the type reference is removed from the seen references by
<a href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11143">#11143</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/alexprabhat99"><code>@​alexprabhat99</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11082">#11082</a></li>
<li><a href="https://github.com/Kharianne"><code>@​Kharianne</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11111">#11111</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/pydantic/pydantic/compare/v2.10.3...v2.10.4">https://github.com/pydantic/pydantic/compare/v2.10.3...v2.10.4</a></p>
<h2>v2.10.3 2024-12-03</h2>
<h2>What's Changed</h2>
<h3>Fixes</h3>
<ul>
<li>Set fields when <code>defer_build</code> is set on Pydantic
dataclasses by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10984">#10984</a></li>
<li>Do not resolve the JSON Schema reference for <code>dict</code> core
schema keys by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10989">#10989</a></li>
<li>Use the globals of the function when evaluating the return type for
<code>PlainSerializer</code> and <code>WrapSerializer</code> functions
by <a href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11008">#11008</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</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.10.6 (2025-01-23)</h2>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.6">GitHub
release</a></p>
<h3>What's Changed</h3>
<h4>Fixes</h4>
<ul>
<li>Fix JSON Schema reference collection with <code>'examples'</code>
keys by <a href="https://github.com/Viicos"><code>@​Viicos</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11325">#11325</a></li>
<li>Fix url python serialization by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11331">#11331</a></li>
</ul>
<h2>v2.10.5 (2025-01-08)</h2>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.5">GitHub
release</a></p>
<h3>What's Changed</h3>
<h4>Fixes</h4>
<ul>
<li>Remove custom MRO implementation of Pydantic models by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11184">#11184</a></li>
<li>Fix URL serialization for unions by <a
href="https://github.com/sydney-runkle"><code>@​sydney-runkle</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11233">#11233</a></li>
</ul>
<h2>v2.10.4 (2024-12-18)</h2>
<p><a
href="https://github.com/pydantic/pydantic/releases/tag/v2.10.4">GitHub
release</a></p>
<h3>What's Changed</h3>
<h4>Packaging</h4>
<ul>
<li>Bump <code>pydantic-core</code> to v2.27.2 by <a
href="https://github.com/davidhewitt"><code>@​davidhewitt</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11138">#11138</a></li>
</ul>
<h4>Fixes</h4>
<ul>
<li>Fix for comparison of <code>AnyUrl</code> objects by <a
href="https://github.com/alexprabhat99"><code>@​alexprabhat99</code></a>
in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11082">#11082</a></li>
<li>Properly fetch PEP 695 type params for functions, do not fetch
annotations from signature by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11093">#11093</a></li>
<li>Include JSON Schema input core schema in function schemas by <a
href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11085">#11085</a></li>
<li>Add <code>len</code> to <code>_BaseUrl</code> to avoid TypeError by
<a href="https://github.com/Kharianne"><code>@​Kharianne</code></a> in
<a
href="https://redirect.github.com/pydantic/pydantic/pull/11111">#11111</a></li>
<li>Make sure the type reference is removed from the seen references by
<a href="https://github.com/Viicos"><code>@​Viicos</code></a> in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11143">#11143</a></li>
</ul>
<h3>New Contributors</h3>
<ul>
<li><a href="https://github.com/FyZzyss"><code>@​FyZzyss</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10789">#10789</a></li>
<li><a href="https://github.com/tamird"><code>@​tamird</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/10948">#10948</a></li>
<li><a href="https://github.com/felixxm"><code>@​felixxm</code></a> made
their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11077">#11077</a></li>
<li><a
href="https://github.com/alexprabhat99"><code>@​alexprabhat99</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11082">#11082</a></li>
<li><a href="https://github.com/Kharianne"><code>@​Kharianne</code></a>
made their first contribution in <a
href="https://redirect.github.com/pydantic/pydantic/pull/11111">#11111</a></li>
</ul>
<h2>v2.10.3 (2024-12-03)</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pydantic/pydantic/commit/df05e69a8a3fb37628a0e3a33518ca0425334bc9"><code>df05e69</code></a>
Bump version to v2.10.6 (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11334">#11334</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/416082625aed40ce341faf4b13e366f1ef51838d"><code>4160826</code></a>
Fix url python serialization (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11331">#11331</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/f94e842692969168ff8ea7ecefa6815fff2883d8"><code>f94e842</code></a>
Fix JSON Schema reference collection with
<code>&quot;examples&quot;</code> keys (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11325">#11325</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/5d34efda82895b8697649e20616aea385d769eaf"><code>5d34efd</code></a>
Prepare release v2.10.5 (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11237">#11237</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/6e585f925e25f91f365ae6ad6c910a667f9d78e9"><code>6e585f9</code></a>
Fix url serialization for unions (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11233">#11233</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/5a22e026084044acbf6f24e0760d9903be0bfa5a"><code>5a22e02</code></a>
Remove custom MRO implementation of Pydantic models (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11195">#11195</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/5bd3a6507b749fcd4833173fba88b3690ff77170"><code>5bd3a65</code></a>
fix history.md</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/46f094569a071a99b313ec21b36568ceb1615635"><code>46f0945</code></a>
Prepare for v2.10.4 (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11144">#11144</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/ea69e695f27fc8d93934bd07b262189dd7987dd9"><code>ea69e69</code></a>
Make sure the type reference is removed from the seen references (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11145">#11145</a>)</li>
<li><a
href="https://github.com/pydantic/pydantic/commit/a07c31e4a49bd3a01485ed0aabf55c5e0ac83ca7"><code>a07c31e</code></a>
Include JSON Schema input core schema in function schemas (<a
href="https://redirect.github.com/pydantic/pydantic/issues/11142">#11142</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pydantic/pydantic/compare/v2.10.0...v2.10.6">compare
view</a></li>
</ul>
</details>
<br />

Updates `numpy` from 2.2.0 to 2.2.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/numpy/numpy/releases">numpy's
releases</a>.</em></p>
<blockquote>
<h2>2.2.3 (Feb 13, 2025)</h2>
<h1>NumPy 2.2.3 Release Notes</h1>
<p>NumPy 2.2.3 is a patch release that fixes bugs found after the 2.2.2
release. The majority of the changes are typing improvements and fixes
for free threaded Python. Both of those areas are still under
development, so if you discover new problems, please report them.</p>
<p>This release supports Python versions 3.10-3.13.</p>
<h2>Contributors</h2>
<p>A total of 9 people contributed to this release. People with a
&quot;+&quot; by
their names contributed a patch for the first time.</p>
<ul>
<li>!amotzop</li>
<li>Charles Harris</li>
<li>Chris Sidebottom</li>
<li>Joren Hammudoglu</li>
<li>Matthew Brett</li>
<li>Nathan Goldbaum</li>
<li>Raghuveer Devulapalli</li>
<li>Sebastian Berg</li>
<li>Yakov Danishevsky +</li>
</ul>
<h2>Pull requests merged</h2>
<p>A total of 21 pull requests were merged for this release.</p>
<ul>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28185">#28185</a>:
MAINT: Prepare 2.2.x for further development</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28201">#28201</a>:
BUG: fix data race in a more minimal way on stable branch</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28208">#28208</a>:
BUG: Fix <code>from_float_positional</code> errors for huge pads</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28209">#28209</a>:
BUG: fix data race in np.repeat</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28212">#28212</a>:
MAINT: Use VQSORT_COMPILER_COMPATIBLE to determine if we should...</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28224">#28224</a>:
MAINT: update highway to latest</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28236">#28236</a>:
BUG: Add cpp atomic support (<a
href="https://redirect.github.com/numpy/numpy/issues/28234">#28234</a>)</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28237">#28237</a>:
BLD: Compile fix for clang-cl on WoA</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28243">#28243</a>:
TYP: Avoid upcasting <code>float64</code> in the set-ops</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28249">#28249</a>:
BLD: better fix for clang / ARM compiles</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28266">#28266</a>:
TYP: Fix <code>timedelta64.__divmod__</code> and
<code>timedelta64.__mod__</code>...</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28274">#28274</a>:
TYP: Fixed missing typing information of set_printoptions</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28278">#28278</a>:
BUG: backport resource cleanup bugfix from <a
href="https://redirect.github.com/numpy/numpy/issues/28273">gh-28273</a></li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28282">#28282</a>:
BUG: fix incorrect bytes to stringdtype coercion</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28283">#28283</a>:
TYP: Fix scalar constructors</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28284">#28284</a>:
TYP: stub <code>numpy.matlib</code></li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28285">#28285</a>:
TYP: stub the missing <code>numpy.testing</code> modules</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28286">#28286</a>:
CI: Fix the github label for <code>TYP:</code> PR's and issues</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28305">#28305</a>:
TYP: Backport typing updates from main</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28321">#28321</a>:
BUG: fix race initializing legacy dtype casts</li>
<li><a
href="https://redirect.github.com/numpy/numpy/pull/28324">#28324</a>:
CI: update test_moderately_small_alpha</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/numpy/numpy/commit/a27456108104ac11e8564c2f18710997f3a55eb9"><code>a274561</code></a>
Merge pull request <a
href="https://redirect.github.com/numpy/numpy/issues/28322">#28322</a>
from charris/prepare-2.2.3</li>
<li><a
href="https://github.com/numpy/numpy/commit/5ab0f7140ffe48c4e424f13b0207c28dda974547"><code>5ab0f71</code></a>
REL: Prepare for the NumPy 2.2.3 release [wheel build]</li>
<li><a
href="https://github.com/numpy/numpy/commit/010ad9b59799f8d753564441bb53cc1249782168"><code>010ad9b</code></a>
Merge pull request <a
href="https://redirect.github.com/numpy/numpy/issues/28324">#28324</a>
from charris/update-test_dirichlet_moderately_small...</li>
<li><a
href="https://github.com/numpy/numpy/commit/633874632a26e0af9b225608eff7abec31c92a87"><code>6338746</code></a>
CI: update test_moderately_small_alpha [wheel build]</li>
<li><a
href="https://github.com/numpy/numpy/commit/56f8d5b6bef06a1cfbffe77c69ff56a906c938a3"><code>56f8d5b</code></a>
Merge pull request <a
href="https://redirect.github.com/numpy/numpy/issues/28321">#28321</a>
from charris/backport-28290</li>
<li><a
href="https://github.com/numpy/numpy/commit/48515a33c93234a50a5eaa13d8472e159a5d6fa0"><code>48515a3</code></a>
MAINT: Update some testing files from main</li>
<li><a
href="https://github.com/numpy/numpy/commit/96ca7e3b248878b16ad197da395099033d06ddf8"><code>96ca7e3</code></a>
MAINT: respond to code review</li>
<li><a
href="https://github.com/numpy/numpy/commit/c20ac888de1d45c44c8d3a0e972a23e781a322ec"><code>c20ac88</code></a>
MAINT: use a try/finally to make the deadlock protection more
robust</li>
<li><a
href="https://github.com/numpy/numpy/commit/d4946475127870237d692df15edabb27d8fb2ef8"><code>d494647</code></a>
MAINT: fix indentation and clarify comment</li>
<li><a
href="https://github.com/numpy/numpy/commit/3f8fbd6a7494078558897cafcd40c5288452fb72"><code>3f8fbd6</code></a>
MAINT: go back to try/except</li>
<li>Additional commits viewable in <a
href="https://github.com/numpy/numpy/compare/v2.2.0...v2.2.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `fastapi` from 0.115.0 to 0.115.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/fastapi/fastapi/releases">fastapi's
releases</a>.</em></p>
<blockquote>
<h2>0.115.8</h2>
<h3>Fixes</h3>
<ul>
<li>🐛 Fix <code>OAuth2PasswordRequestForm</code> and
<code>OAuth2PasswordRequestFormStrict</code> fixed
<code>grant_type</code> &quot;password&quot; RegEx. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/9783">#9783</a>
by <a
href="https://github.com/skarfie123"><code>@​skarfie123</code></a>.</li>
</ul>
<h3>Refactors</h3>
<ul>
<li>✅ Simplify tests for body_multiple_params . PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13237">#13237</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>♻️ Move duplicated code portion to a static method in the
<code>APIKeyBase</code> super class. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/3142">#3142</a>
by <a
href="https://github.com/ShahriyarR"><code>@​ShahriyarR</code></a>.</li>
<li>✅ Simplify tests for request_files. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13182">#13182</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
</ul>
<h3>Docs</h3>
<ul>
<li>📝 Change the word &quot;unwrap&quot; to &quot;unpack&quot; in
<code>docs/en/docs/tutorial/extra-models.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13061">#13061</a>
by <a
href="https://github.com/timothy-jeong"><code>@​timothy-jeong</code></a>.</li>
<li>📝 Update Request Body's <code>tutorial002</code> to deal with
<code>tax=0</code> case. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13230">#13230</a>
by <a href="https://github.com/togogh"><code>@​togogh</code></a>.</li>
<li>👥 Update FastAPI People - Experts. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13269">#13269</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
</ul>
<h3>Translations</h3>
<ul>
<li>🌐 Add Japanese translation for
<code>docs/ja/docs/environment-variables.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13226">#13226</a>
by <a
href="https://github.com/k94-ishi"><code>@​k94-ishi</code></a>.</li>
<li>🌐 Add Russian translation for
<code>docs/ru/docs/advanced/async-tests.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13227">#13227</a>
by <a
href="https://github.com/Rishat-F"><code>@​Rishat-F</code></a>.</li>
<li>🌐 Update Russian translation for
<code>docs/ru/docs/tutorial/dependencies/dependencies-in-path-operation-decorators.md</code>.
PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13252">#13252</a>
by <a
href="https://github.com/Rishat-F"><code>@​Rishat-F</code></a>.</li>
<li>🌐 Add Russian translation for
<code>docs/ru/docs/tutorial/bigger-applications.md</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13154">#13154</a>
by <a href="https://github.com/alv2017"><code>@​alv2017</code></a>.</li>
</ul>
<h3>Internal</h3>
<ul>
<li>⬆️ Add support for Python 3.13. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13274">#13274</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>⬆️ Upgrade AnyIO max version for tests, new range:
<code>&gt;=3.2.1,&lt;5.0.0</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13273">#13273</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔧 Update Sponsors badges. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13271">#13271</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>♻️ Fix <code>notify_translations.py</code> empty env var handling
for PR label events vs workflow_dispatch. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13272">#13272</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>♻️ Refactor and move <code>scripts/notify_translations.py</code>, no
need for a custom GitHub Action. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13270">#13270</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>🔨 Update FastAPI People Experts script, refactor and optimize data
fetching to handle rate limits. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13267">#13267</a>
by <a
href="https://github.com/tiangolo"><code>@​tiangolo</code></a>.</li>
<li>⬆ Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13251">#13251</a>
by <a
href="https://github.com/apps/dependabot"><code>@​dependabot[bot]</code></a>.</li>
</ul>
<h2>0.115.7</h2>
<h3>Upgrades</h3>
<ul>
<li>⬆️ Upgrade <code>python-multipart</code> to &gt;=0.0.18. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13219">#13219</a>
by <a
href="https://github.com/DanielKusyDev"><code>@​DanielKusyDev</code></a>.</li>
<li>⬆️ Bump Starlette to allow up to 0.45.0:
<code>&gt;=0.40.0,&lt;0.46.0</code>. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13117">#13117</a>
by <a href="https://github.com/Kludex"><code>@​Kludex</code></a>.</li>
<li>⬆️ Upgrade <code>jinja2</code> to &gt;=3.1.5. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13194">#13194</a>
by <a
href="https://github.com/DanielKusyDev"><code>@​DanielKusyDev</code></a>.</li>
</ul>
<h3>Refactors</h3>
<ul>
<li>✅ Simplify tests for websockets. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13202">#13202</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for request_form_models . PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13183">#13183</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for separate_openapi_schemas. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13201">#13201</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for security. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13200">#13200</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for schema_extra_example. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13197">#13197</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for request_model. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13195">#13195</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
<li>✅ Simplify tests for request_forms_and_files. PR <a
href="https://redirect.github.com/fastapi/fastapi/pull/13185">#13185</a>
by <a
href="https://github.com/alejsdev"><code>@​alejsdev</code></a>.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/fastapi/fastapi/commit/7128971f1d61e2e1e6f220a5f66baa925b635278"><code>7128971</code></a>
🔖 Release version 0.115.8</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/55f8a446c7c02ac6bb26e7adcdeb5ade2408a0ba"><code>55f8a44</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/83ab6ac95797395b5664626b66d1c3f1f5b0e8dc"><code>83ab6ac</code></a>
📝 Change the word &quot;unwrap&quot; to &quot;unpack&quot; in
`docs/en/docs/tutorial/extra-models...</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/3d02a920ab7c4b2d26bab67b10e35fc90a923ce1"><code>3d02a92</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/1b00f8ae7821353cc9657797c475e2c0d9acd423"><code>1b00f8a</code></a>
✅ Simplify tests for body_multiple_params (<a
href="https://redirect.github.com/fastapi/fastapi/issues/13237">#13237</a>)</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/d97647fd572169cf0434919464de5406057e32f4"><code>d97647f</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/9667ce87a908eecc2be2a215adcb55c7e1b38040"><code>9667ce8</code></a>
📝 Update Request Body's <code>tutorial002</code> to deal with
<code>tax=0</code> case (<a
href="https://redirect.github.com/fastapi/fastapi/issues/13230">#13230</a>)</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/0541693bc7611da858f71d896a3b9780751c04f8"><code>0541693</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/041b2e1c4643c9837d2e7f8589351492cf76497a"><code>041b2e1</code></a>
📝 Update release notes</li>
<li><a
href="https://github.com/fastapi/fastapi/commit/30b270be9ac9cf931b0efaac549ba0ad8112f547"><code>30b270b</code></a>
♻️ Move duplicated code portion to a static method in the
<code>APIKeyBase</code> super ...</li>
<li>Additional commits viewable in <a
href="https://github.com/fastapi/fastapi/compare/0.115.0...0.115.8">compare
view</a></li>
</ul>
</details>
<br />

Updates `click` from 8.1.7 to 8.1.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/click/releases">click's
releases</a>.</em></p>
<blockquote>
<h2>8.1.8</h2>
<p>This is the Click 8.1.8 fix release, which fixes bugs but does not
otherwise change behavior and should not result in breaking changes
compared to the latest feature release.</p>
<p>PyPI: <a
href="https://pypi.org/project/click/8.1.8/">https://pypi.org/project/click/8.1.8/</a>
Changes: <a
href="https://click.palletsprojects.com/en/stable/changes/#version-8-1-8">https://click.palletsprojects.com/en/stable/changes/#version-8-1-8</a>
Milestone <a
href="https://github.com/pallets/click/milestones/23?closed=1">https://github.com/pallets/click/milestones/23?closed=1</a></p>
<ul>
<li>Fix an issue with type hints for <code>click.open_file()</code>. <a
href="https://redirect.github.com/pallets/click/issues/2717">#2717</a></li>
<li>Fix issue where error message for invalid <code>click.Path</code>
displays on
multiple lines. <a
href="https://redirect.github.com/pallets/click/issues/2697">#2697</a></li>
<li>Fixed issue that prevented a default value of
<code>&quot;&quot;</code> from being displayed in
the help for an option. <a
href="https://redirect.github.com/pallets/click/issues/2500">#2500</a></li>
<li>The test runner handles stripping color consistently on Windows. <a
href="https://redirect.github.com/pallets/click/issues/2705">#2705</a></li>
<li>Show correct value for flag default when using
<code>default_map</code>. <a
href="https://redirect.github.com/pallets/click/issues/2632">#2632</a></li>
<li>Fix <code>click.echo(color=...)</code> passing <code>color</code> to
coloroma so it can be
forced on Windows. <a
href="https://redirect.github.com/pallets/click/issues/2606">#2606</a>.</li>
<li>More robust bash version check, fixing problem on Windows with
git-bash. <a
href="https://redirect.github.com/pallets/click/issues/2638">#2638</a></li>
<li>Cache the help option generated by the
<code>help_option_names</code> setting to
respect its eagerness. <a
href="https://redirect.github.com/pallets/click/issues/2811">#2811</a></li>
<li>Replace uses of <code>os.system</code> with
<code>subprocess.Popen</code>. <a
href="https://redirect.github.com/pallets/click/issues/1476">#1476</a></li>
<li>Exceptions generated during a command will use the context's
<code>color</code>
setting when being displayed. <a
href="https://redirect.github.com/pallets/click/issues/2193">#2193</a></li>
<li>Error message when defining option with invalid name is more
descriptive. <a
href="https://redirect.github.com/pallets/click/issues/2452">#2452</a></li>
<li>Refactor code generating default <code>--help</code> option to
deduplicate code. <a
href="https://redirect.github.com/pallets/click/issues/2563">#2563</a></li>
<li>Test <code>CLIRunner</code> resets patched
<code>_compat.should_strip_ansi</code>. <a
href="https://redirect.github.com/pallets/click/issues/2732">#2732</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/click/blob/main/CHANGES.rst">click's
changelog</a>.</em></p>
<blockquote>
<h2>Version 8.1.8</h2>
<p>Unreleased</p>
<ul>
<li>Fix an issue with type hints for <code>click.open_file()</code>.
:issue:<code>2717</code></li>
<li>Fix issue where error message for invalid <code>click.Path</code>
displays on
multiple lines. :issue:<code>2697</code></li>
<li>Fixed issue that prevented a default value of
<code>&quot;&quot;</code> from being displayed in
the help for an option. :issue:<code>2500</code></li>
<li>The test runner handles stripping color consistently on Windows.
:issue:<code>2705</code></li>
<li>Show correct value for flag default when using
<code>default_map</code>.
:issue:<code>2632</code></li>
<li>Fix <code>click.echo(color=...)</code> passing <code>color</code> to
coloroma so it can be
forced on Windows. :issue:<code>2606</code>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pallets/click/commit/934813e4d421071a1b3db3973c02fe2721359a6e"><code>934813e</code></a>
release version 8.1.8</li>
<li><a
href="https://github.com/pallets/click/commit/c23223b13c847ae472faa258907ffb5c27b504fa"><code>c23223b</code></a>
Add links to third-party projects enhancing Click (<a
href="https://redirect.github.com/pallets/click/issues/2815">#2815</a>)</li>
<li><a
href="https://github.com/pallets/click/commit/822d4fd0bcfcd0ab22c9eec550ee2dae2a3d260c"><code>822d4fd</code></a>
Add links to third-party projects</li>
<li><a
href="https://github.com/pallets/click/commit/8e7bed0466fd49acf8bcf1399f54d7dc783fd6a1"><code>8e7bed0</code></a>
Break up arguments section (<a
href="https://redirect.github.com/pallets/click/issues/2586">#2586</a>)</li>
<li><a
href="https://github.com/pallets/click/commit/3241541fc89fe9c79908a6099fa2235dd20016e8"><code>3241541</code></a>
Remove some typing hints.</li>
<li><a
href="https://github.com/pallets/click/commit/bed037717d5f39cf875d83df4025e62beebc77f4"><code>bed0377</code></a>
remove test pypi</li>
<li><a
href="https://github.com/pallets/click/commit/653459007a15e4d75187acc5a1e1a08cbd787814"><code>6534590</code></a>
update dev dependencies</li>
<li><a
href="https://github.com/pallets/click/commit/b1e392e69b2a32566550aa41c38875e9cafe2456"><code>b1e392e</code></a>
fix typos</li>
<li><a
href="https://github.com/pallets/click/commit/fdc6b020465751d26f9e74a707f2c058b0dd251f"><code>fdc6b02</code></a>
Fix missing reset in isolation function (<a
href="https://redirect.github.com/pallets/click/issues/2733">#2733</a>)</li>
<li><a
href="https://github.com/pallets/click/commit/ffd43e9dc3b90bd698088fc7ebac9dbc6a4444b2"><code>ffd43e9</code></a>
Fixed missing reset on _compat.should_strip_ansi.</li>
<li>Additional commits viewable in <a
href="https://github.com/pallets/click/compare/8.1.7...8.1.8">compare
view</a></li>
</ul>
</details>
<br />

Updates `httpx` from 0.28.0 to 0.28.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/encode/httpx/releases">httpx's
releases</a>.</em></p>
<blockquote>
<h2>Version 0.28.1</h2>
<h2>0.28.1 (6th December, 2024)</h2>
<ul>
<li>Fix SSL case where <code>verify=False</code> together with client
side certificates.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/encode/httpx/blob/master/CHANGELOG.md">httpx's
changelog</a>.</em></p>
<blockquote>
<h2>0.28.1 (6th December, 2024)</h2>
<ul>
<li>Fix SSL case where <code>verify=False</code> together with client
side certificates.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/encode/httpx/commit/26d48e0634e6ee9cdc0533996db289ce4b430177"><code>26d48e0</code></a>
Version 0.28.1 (<a
href="https://redirect.github.com/encode/httpx/issues/3445">#3445</a>)</li>
<li><a
href="https://github.com/encode/httpx/commit/89599a9541af14bcf906fc4ed58ccbdf403802ba"><code>89599a9</code></a>
Fix <code>verify=False</code>, <code>cert=...</code> case. (<a
href="https://redirect.github.com/encode/httpx/issues/3442">#3442</a>)</li>
<li><a
href="https://github.com/encode/httpx/commit/8ecb86f0d74ffc52d4663214fae9526bee89358d"><code>8ecb86f</code></a>
Add test for request params behavior changes (<a
href="https://redirect.github.com/encode/httpx/issues/3364">#3364</a>)
(<a
href="https://redirect.github.com/encode/httpx/issues/3440">#3440</a>)</li>
<li><a
href="https://github.com/encode/httpx/commit/0cb7e5a2e736628e2f506d259fcf0d48cd2bde82"><code>0cb7e5a</code></a>
Bump the python-packages group with 11 updates (<a
href="https://redirect.github.com/encode/httpx/issues/3434">#3434</a>)</li>
<li><a
href="https://github.com/encode/httpx/commit/15e21e9ea3cad4f06e22a7e704aabefdf43d2e29"><code>15e21e9</code></a>
Updating deprecated docstring Client() class (<a
href="https://redirect.github.com/encode/httpx/issues/3426">#3426</a>)</li>
<li>See full diff in <a
href="https://github.com/encode/httpx/compare/0.28.0...0.28.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `pytest` from 8.3.1 to 8.3.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest/releases">pytest's
releases</a>.</em></p>
<blockquote>
<h2>8.3.4</h2>
<h1>pytest 8.3.4 (2024-12-01)</h1>
<h2>Bug fixes</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12592">#12592</a>:
Fixed <code>KeyError</code>{.interpreted-text role=&quot;class&quot;}
crash when using <code>--import-mode=importlib</code> in a directory
layout where a directory contains a child directory with the same
name.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12818">#12818</a>:
Assertion rewriting now preserves the source ranges of the original
instructions, making it play well with tools that deal with the
<code>AST</code>, like <a
href="https://github.com/alexmojaki/executing">executing</a>.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12849">#12849</a>:
ANSI escape codes for colored output now handled correctly in
<code>pytest.fail</code>{.interpreted-text role=&quot;func&quot;} with
[pytrace=False]{.title-ref}.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/9353">#9353</a>:
<code>pytest.approx</code>{.interpreted-text role=&quot;func&quot;} now
uses strict equality when given booleans.</p>
</li>
</ul>
<h2>Improved documentation</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/10558">#10558</a>:
Fix ambiguous docstring of
<code>pytest.Config.getoption</code>{.interpreted-text
role=&quot;func&quot;}.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/10829">#10829</a>:
Improve documentation on the current handling of the
<code>--basetemp</code> option and its lack of retention functionality
(<code>temporary directory location and
retention</code>{.interpreted-text role=&quot;ref&quot;}).</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12866">#12866</a>:
Improved cross-references concerning the
<code>recwarn</code>{.interpreted-text role=&quot;fixture&quot;}
fixture.</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12966">#12966</a>:
Clarify <code>filterwarnings</code>{.interpreted-text
role=&quot;ref&quot;} docs on filter precedence/order when using
multiple <code>@pytest.mark.filterwarnings
&lt;pytest.mark.filterwarnings ref&gt;</code>{.interpreted-text
role=&quot;ref&quot;} marks.</p>
</li>
</ul>
<h2>Contributor-facing changes</h2>
<ul>
<li><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12497">#12497</a>:
Fixed two failing pdb-related tests on Python 3.13.</li>
</ul>
<h2>8.3.3</h2>
<h1>pytest 8.3.3 (2024-09-09)</h1>
<h2>Bug fixes</h2>
<ul>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12446">#12446</a>:
Avoid calling <code>@property</code> (and other instance descriptors)
during fixture discovery -- by <code>asottile</code>{.interpreted-text
role=&quot;user&quot;}</p>
</li>
<li>
<p><a
href="https://redirect.github.com/pytest-dev/pytest/issues/12659">#12659</a>:
Fixed the issue of not displaying assertion failure differences when
using the parameter <code>--import-mode=importlib</code> in
pytest&gt;=8.1.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest/commit/53f8b4e634c5066c4f797a87b20060edbb086240"><code>53f8b4e</code></a>
Update pypa/gh-action-pypi-publish to v1.12.2</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/98dff36c9dc0a44881e9e90daf381f9079adf4cc"><code>98dff36</code></a>
Prepare release version 8.3.4</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/1b474e221d5ced2c8c73924a0087e6e24ab6cd61"><code>1b474e2</code></a>
approx: use exact comparison for bool (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/13013">#13013</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/b541721529feba7fcd0d069fa2437a817f340eba"><code>b541721</code></a>
docs: Fix wrong statement about sys.modules with importlib import mode
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/1298">#1298</a>...</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/16cb87b65036300d74472cd55eebca8fc3f8e703"><code>16cb87b</code></a>
pytest.fail: fix ANSI escape codes for colored output (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12959">#12959</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12990">#12990</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/be6bc812b02454b2915755dd76ce74b877aeafad"><code>be6bc81</code></a>
Issue <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12966">#12966</a>
Clarify filterwarnings docs on precedence when using multiple ma...</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/7aeb72bbc67bd1b8271eee57caa0a4e9b07038fc"><code>7aeb72b</code></a>
Improve docs on basetemp and retention (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12912">#12912</a>)
(<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12928">#12928</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/c8758414cfd1646f273842e8f9292b2c15dcfcfb"><code>c875841</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12917">#12917</a>
from pytest-dev/patchback/backports/8.3.x/ded1f44e5...</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/6502816d977fcdbd65a3f4d8a63c0ce7c1f25649"><code>6502816</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12913">#12913</a>
from jakkdl/dontfailonbadpath</li>
<li><a
href="https://github.com/pytest-dev/pytest/commit/52135b033fb949efbec6aed9dd9000275bb199fd"><code>52135b0</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest/issues/12885">#12885</a>
from The-Compiler/pdb-py311 (<a
href="https://redirect.github.com/pytest-dev/pytest/issues/12887">#12887</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest/compare/8.3.1...8.3.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `typeguard` from 4.4.1 to 4.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/agronholm/typeguard/releases">typeguard's
releases</a>.</em></p>
<blockquote>
<h2>4.4.2</h2>
<ul>
<li>Fixed <code>TypeCheckError</code> in unpacking assignment involving
properties of a parameter of the function (<a
href="https://redirect.github.com/agronholm/typeguard/issues/506">#506</a>;
regression introduced in v4.4.1)</li>
<li>Fixed display of module name for forward references (<a
href="https://redirect.github.com/agronholm/typeguard/pull/492">#492</a>;
PR by <a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
<li>Fixed <code>TypeError</code> when using an assignment expression (<a
href="https://redirect.github.com/agronholm/typeguard/issues/510">#510</a>;
PR by <a
href="https://github.com/JohannesK71083"><code>@​JohannesK71083</code></a>)</li>
<li>Fixed <code>ValueError: no signature found for builtin</code> when
checking against a protocol and a matching attribute in the subject is a
built-in function (<a
href="https://redirect.github.com/agronholm/typeguard/issues/504">#504</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/agronholm/typeguard/blob/master/docs/versionhistory.rst">typeguard's
changelog</a>.</em></p>
<blockquote>
<h1>Version history</h1>
<p>This library adheres to
<code>Semantic Versioning 2.0
&lt;https://semver.org/#semantic-versioning-200&gt;</code>_.</p>
<p><strong>4.4.2</strong> (2025-02-16)</p>
<ul>
<li>Fixed <code>TypeCheckError</code> in unpacking assignment involving
properties of a parameter
of the function
(<code>[#506](https://github.com/agronholm/typeguard/issues/506)
&lt;https://github.com/agronholm/typeguard/issues/506&gt;</code>_;
regression introduced in v4.4.1)</li>
<li>Fixed display of module name for forward references
(<code>[#492](https://github.com/agronholm/typeguard/issues/492)
&lt;https://github.com/agronholm/typeguard/pull/492&gt;</code>_; PR by
<a
href="https://github.com/JelleZijlstra"><code>@​JelleZijlstra</code></a>)</li>
<li>Fixed <code>TypeError</code> when using an assignment expression
(<code>[#510](https://github.com/agronholm/typeguard/issues/510)
&lt;https://github.com/agronholm/typeguard/issues/510&gt;</code>_; PR by
<a
href="https://github.com/JohannesK71083"><code>@​JohannesK71083</code></a>)</li>
<li>Fixed <code>ValueError: no signature found for builtin</code> when
checking against a protocol
and a matching attribute in the subject is a built-in function
(<code>[#504](https://github.com/agronholm/typeguard/issues/504)
&lt;https://github.com/agronholm/typeguard/issues/504&gt;</code>_)</li>
</ul>
<p><strong>4.4.1</strong> (2024-11-03)</p>
<ul>
<li>Dropped Python 3.8 support</li>
<li>Changed the signature of <code>…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants