Skip to main content

Like `typing._eval_type`, but lets older Python versions use newer typing features.

Project description

eval_type_backport

Build Status Coverage Status Supports Python versions 3.8+, including PyPy Anaconda's conda-forge channel

This is a tiny package providing a replacement for typing._eval_type to support newer typing features in older Python versions.

Yes, that's very specific, and yes, typing._eval_type is a protected function that you shouldn't normally be using. Really this package is specifically made for https://github.com/pydantic/pydantic/issues/7873.

Specifically, this transforms X | Y into typing.Union[X, Y] and list[X] into typing.List[X] etc. (for all the types made generic in PEP 585) if the original syntax is not supported in the current Python version.

Install

From PyPI:

pip install eval-type-backport

or with Conda:

conda install -c conda-forge eval-type-backport

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eval_type_backport-0.2.0.tar.gz (9.0 kB view hashes)

Uploaded Source

Built Distribution

eval_type_backport-0.2.0-py3-none-any.whl (5.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page