Collection of library stubs for Python, with static types (by python)

Typeshed Alternatives

Similar projects and alternatives to typeshed

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better typeshed alternative or higher similarity.

Suggest an alternative to typeshed

Reviews and mentions

Posts with mentions or reviews of typeshed. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-18.
  • On autoloading: a rant about rails
    1 project | news.ycombinator.com | 5 Nov 2021
    Python these days is sprouting type annotations all over the show, the benefits are too good to ignore.

    And if a given library doesn't use type annotations, people will often create type stubs for it that mypy can consume.


  • Tests aren’t enough: Case study after adding type hints to urllib3
    4 projects | news.ycombinator.com | 18 Oct 2021
    I agree with all the benefits of mypy cited in this article. For me, most important thing for the long-term health of a codebase is its readability/maintainability, and mypy static typing makes such a huge difference for that in large Python codebases. I'm really excited to see large libraries doing this migration.

    I'll add for folks thinking about this transition that we took a pretty different strategy for converting Zulip to be type-checked: https://blog.zulip.com/2016/10/13/static-types-in-python-oh-...

    The post is from 2016 and thus a bit stale in terms of the names of mypy options and the like, but the incremental approach we took involved only using mypy's native exclude tooling, and might be useful for some projects thinking about doing this transition.

    One particular convention that I think many other projects may find useful is how we do `type: ignore` in comments in the Zulip codebase, which is to have a second comment on the line explaining why we needed a `type: ignore`, like so:

    * # type: ignore[type-var] # https://github.com/python/typeshed/issues/4234

    * # type: ignore[attr-defined] # private member missing from stubs

    * # type: ignore[assignment] # Apparent mypy bug with Optional[int] setter.

    * # type: ignore[misc] # This is an undocumented internal API

    We've find this to be a lot more readable than using the commit message to record why we needed a `type: ignore`, and in particular it makes the work of removing these with time feel a lot more manageable to have the information organized this way.

    (And we can have a linter enforce that `type: ignore` always comes with such a comment).

  • Python has some useful commands
    1 project | reddit.com/r/ProgrammerHumor | 16 Jul 2021
    Type stub files usually have plenty.
  • I packaged python typeshed annotations to AUR
    1 project | reddit.com/r/archlinux | 7 Jul 2021
    Typeshed is the python annotation to third party libraries. (for example python-toml) For some reason it was missing from both official or AUR. Probably because it did not come with an install script so I had to create my own.
  • Mypy 0.900 Released
    3 projects | reddit.com/r/Python | 9 Jun 2021
    I have a feeling this is an edge case in how the numbers tower works (unlikely) or I don’t understand how the type hints work for int: https://github.com/python/typeshed/blob/c601d5cf3d8968f3dc1fe792bc1da5b43c6a9ed9/stdlib/builtins.pyi#L169
  • Python 3 Types in the Wild: A Tale of Two Type Systems [pdf]
    6 projects | news.ycombinator.com | 14 Apr 2021
    I wonder if that's a mypy issue or more that the typeshed types are bugged, since type shed versions also get shipped (used to?) with new type checker versions.



Basic typeshed repo stats
4 days ago

python/typeshed is an open source project licensed under Apache License 2.0 which is an OSI approved license.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
Find remote Python jobs at our new job board 99remotejobs.com. There are 10 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.