python / typeshed

Collection of library stubs for Python, with static types
Other
4.29k stars 1.72k forks source link

Third-party removal policy if upstream types are unsufficient #11955

Open srittau opened 3 months ago

srittau commented 3 months ago

Currently our policy says:

Third-party stubs are generally removed from typeshed when one of the following criteria is met:

  • The upstream package ships a py.typed file for at least six months, or [...]

We've had a few cases recently, where upstream added a py.typed file, but the annotations were clearly sub-par compared to the stubs from typeshed. In an ideal world, we'd contribute back our annotations, but that usually requires quite a bit of effort – even compared with continuing to support the stubs in typeshed. (Even if improving upstream's annotations and removal from typeshed should of course be the ultimate goal.)

I suggest to amend our policy to say:

  • The upstream package ships a py.typed file for at least six months, and the upstream type annotations are of a comparable standard to those in typeshed, [...]

The wording still leaves some wiggle room, and isn't overly specific, but is more specific than "usually" for this case.

srittau commented 3 months ago

And we should probably not mark those stubs as "obsolete_since".