This is an alternative to #2440 (disallowing third-party stubs). The idea is that typeshed remains/becomes a central repository for third-party stubs that are not bundled with the parent package, similar to DefinitelyTyped. In the future I expect type checkers will not want to bundle all third-party stubs for a variety of reasons, so third-party stubs would be distributed as separate PEP 561 stub-only packages, one per upstream package.
(I tried to integrate points raised there into this issue, especially those by @JukkaL in this comment.)
AdvantagesWhat should the generated packages be called? @ethanhs's PEP 561 actually requires stubs-only package to be named <package>-stubs
. typeshed could squat these names and release them (and remove the stubs) on the request of upstream maintainers. Alternatively, typeshed could add a common prefix or suffix (ts
, typeshed
) or in addition to or instead of the -stubs
suffix. This would be in violation of PEP 561, so we'd need to get broader consensus to amend the PEP. My personal favorite would be <package>-ts
.
To guarantee a fairly quick turnaround on stubs, to minimize work for publishing stubs, and to prevent all third-party stub packages to be updated whenever a new typeshed version is released, stubs for a specific third-party package should be published automatically when it changes.
Possible Implementationsetup-tp.py
to typeshed that takes its package name from the directory it's in and uses the current date and time as version number.master
only so that after a successful test run, for every third-party package that was changed since the last successful run, the following is done automatically:
setup-tp.py
into the third-party module directory as setup.py
.blueset, staticdev, hoefling and Garrett-R
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4