Typeguard

Latest version: v4.4.2

Safety actively analyzes 722491 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 12

4.4.2

- Fixed ``TypeCheckError`` in unpacking assignment involving properties of a parameter
of the function (`506 <https://github.com/agronholm/typeguard/issues/506>`_;
regression introduced in v4.4.1)
- Fixed display of module name for forward references
(`492 <https://github.com/agronholm/typeguard/pull/492>`_; PR by JelleZijlstra)
- Fixed ``TypeError`` when using an assignment expression
(`510 <https://github.com/agronholm/typeguard/issues/510>`_; PR by JohannesK71083)
- Fixed ``ValueError: no signature found for builtin`` when checking against a protocol
and a matching attribute in the subject is a built-in function
(`504 <https://github.com/agronholm/typeguard/issues/504>`_)

4.4.1

- Dropped Python 3.8 support
- Changed the signature of ``typeguard_ignore()`` to be compatible with
``typing.no_type_check()`` (PR by jolaf)
- Avoid creating reference cycles when type checking uniontypes and classes
- Fixed checking of variable assignments involving tuple unpacking
(`486 <https://github.com/agronholm/typeguard/issues/486>`_)
- Fixed ``TypeError`` when checking a class against ``type[Self]``
(`481 <https://github.com/agronholm/typeguard/issues/481>`_)
- Fixed checking of protocols on the class level (against ``type[SomeProtocol]``)
(`498 <https://github.com/agronholm/typeguard/issues/498>`_)
- Fixed ``Self`` checks in instance/class methods that have positional-only arguments
- Fixed explicit checks of PEP 604 unions against ``types.UnionType``
(`467 <https://github.com/agronholm/typeguard/issues/467>`_)
- Fixed checks against annotations wrapped in ``NotRequired`` not being run unless the
``NotRequired`` is a forward reference
(`454 <https://github.com/agronholm/typeguard/issues/454>`_)

4.4.0

- Added proper checking for method signatures in protocol checks
(`465 <https://github.com/agronholm/typeguard/pull/465>`_)
- Fixed basic support for intersection protocols
(`490 <https://github.com/agronholm/typeguard/pull/490>`_; PR by antonagestam)

4.3.0

- Added support for checking against static protocols
- Fixed some compatibility problems when running on Python 3.13
(`460 <https://github.com/agronholm/typeguard/issues/460>`_; PR by JelleZijlstra)
- Fixed test suite incompatibility with pytest 8.2
(`461 <https://github.com/agronholm/typeguard/issues/461>`_)
- Fixed pytest plugin crashing on pytest version older than v7.0.0 (even if it's just
present) (`343 <https://github.com/agronholm/typeguard/issues/343>`_)

4.2.1

- Fixed missing ``typing_extensions`` dependency for Python 3.12
(`444 <https://github.com/agronholm/typeguard/issues/444>`_)
- Fixed deprecation warning in the test suite on Python 3.13
(`444 <https://github.com/agronholm/typeguard/issues/444>`_)

4.2.0

- Added support for specifying options for the pytest plugin via pytest config files
(`440 <https://github.com/agronholm/typeguard/issues/440>`_)
- Avoid creating reference cycles when type checking unions (PR by Shantanu)
- Fixed ``Optional[...]`` being removed from the AST if it was located within a
subscript (`442 <https://github.com/agronholm/typeguard/issues/442>`_)
- Fixed ``TypedDict`` from ``typing_extensions`` not being recognized as one
(`443 <https://github.com/agronholm/typeguard/issues/443>`_)
- Fixed ``typing`` types (``dict[str, int]``, ``List[str]``, etc.) not passing checks
against ``type`` or ``Type``
(`432 <https://github.com/agronholm/typeguard/issues/432>`_, PR by Yongxin Wang)
- Fixed detection of optional fields (``NotRequired[...]``) in ``TypedDict`` when using
forward references (`424 <https://github.com/agronholm/typeguard/issues/424>`_)
- Fixed mapping checks against Django's ``MultiValueDict``
(`419 <https://github.com/agronholm/typeguard/issues/419>`_)

Page 1 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.