I've read the recent discussions
<https://mail.python.org/archives/list/python-dev@python.org/thread/QSASX6PZ3LIIFIANHQQFS752BJYFUFPY/#UITB2A657TAINAGWGRD6GCKWFC5PEBIZ>
regarding PEP 649 and PEP 563 with interest, Larry Hastings recently
contacted me when prompted
<https://mail.python.org/archives/list/python-dev@python.org/message/YKVYJMLUWUVT4KMLUNEQYVBZWNAPR4GV/>
to do so in a related discussion.

I maintain pydantic <https://pydantic-docs.helpmanual.io/> which uses type
annotations to provide runtime data validation.

I'm extremely worried that if PEP 649 gets rejected, pydantic will not be
able to fully support python 3.10 and may even end up getting abandoned, at
best it will be much slower and more brittle.

Please, please put pragmatism over principle and accept PEP 649. As
discussed in this issue
<https://github.com/samuelcolvin/pydantic/issues/2678>, using
`typing.get_type_hints()` is not a good replacement for type annotations
that are accessible as python objects.

I know this is not a popularity contest, but I think it's worth explaining
how widely used pydantic is for those who don't use it or haven't heard of
it:

   - it's downloaded ~7m times a month and is the most popular standalone
   python data validation library by stars
   - it's used (in production and open source projects) by most of the big
   tech companies you've heard of - it's widely used both in web development
   and data science
   - it is one of the foundations of FastAPI
<https://fastapi.tiangolo.com/> which
   is by far the fastest growing python web framework and recently came third
   (behind django and flask) in web frameworks by usage in the python
   developer survey
   <https://www.jetbrains.com/lp/python-developers-survey-2020/>

Pydantic is not the only one, there are numerous other libraries that use
type annotations at runtime.

In short, you may not like it, but runtime inspection of type annotations
makes python better, and a massive and growing number of people rely on
that.

Rejecting PEP 649 would put that in peril, please accept it.

Samuel
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-le...@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at 
https://mail.python.org/archives/list/python-dev@python.org/message/7VMJWFGHVXDSRQFHMXVJKDDOVT47B54T/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to