-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Description
When running stubsabot on the hugovk/top-pypi-packages
list, I noticed some errors that may occur if we attempt to add their stubs to typeshed.
It seems that some of these libraries are no longer maintained and rely either on outdated distribution methods or an incorrect versions dictionary. I’m not sure if it’s worth generalizing stubsabot’s functionality just to support such cases, but similar issues might also appear in other packages outside the top 5000 most popular ones.
(in fact the code was slightly changed, so the whole traceback will be of little use for finding the error)
traceback
Error processing awsretry: Traceback (most recent call last): ... release_info = sorted( ~~~~~~~ releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel") ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ )[-1] ~^^^^ IndexError: list index out of range
Error processing pytest-coverage:
Traceback (most recent call last):
...
release_info = sorted(
~~~~~~~
releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
)[-1]
~^^^^
IndexError: list index out of rangeError processing google-oauth:
Traceback (most recent call last):
...
release_info = sorted(
~~~~~~~
releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
)[-1]
~^^^^
IndexError: list index out of rangeError processing commonregex:
Traceback (most recent call last):
...
release_info = sorted(
~~~~~~~
releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
)[-1]
~^^^^
IndexError: list index out of rangeError processing slack:
Traceback (most recent call last):
...
release_info = sorted(
~~~~~~~
releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
)[-1]
~^^^^
IndexError: list index out of rangeError processing pyrouge:
Traceback (most recent call last):
...
release_info = sorted(
~~~~~~~
releases[version], key=lambda x: bool(x["packagetype"] == "bdist_wheel")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
)[-1]
~^^^^
IndexError: list index out of rangeError processing git-python:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Unknown package type for {release_to_download.distribution}: {packagetype!r}"
)
AssertionError: Unknown package type for git-python: 'bdist_egg'Error processing environ:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Unknown package type for {release_to_download.distribution}: {packagetype!r}"
)
AssertionError: Unknown package type for environ: 'bdist_wininst'Error processing python-constraint:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Package file {release_to_download.filename!r} does not end with '.tar.gz' or '.zip'"
)
AssertionError: Package file 'python-constraint-1.4.0.tar.bz2' does not end with '.tar.gz' or '.zip'Error processing amqplib:
Traceback (most recent call last):
... release_contains_py_typed
raise AssertionError(
f"Package file {release_to_download.filename!r} does not end with '.tar.gz' or '.zip'"
)
AssertionError: Package file 'amqplib-1.0.2.tgz' does not end with '.tar.gz' or '.zip'Error processing mocker:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Package file {release_to_download.filename!r} does not end with '.tar.gz' or '.zip'"
)
AssertionError: Package file 'mocker-1.1.1.tar.bz2' does not end with '.tar.gz' or '.zip'Error processing crcmod:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Unknown package type for {release_to_download.distribution}: {packagetype!r}"
)
AssertionError: Unknown package type for crcmod: 'bdist_msi'Error processing multiprocessing:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Unknown package type for {release_to_download.distribution}: {packagetype!r}"
)
AssertionError: Unknown package type for multiprocessing: 'bdist_wininst'
Error processing fpdf:
Traceback (most recent call last):
... in release_contains_py_typed
raise AssertionError(
f"Unknown package type for {release_to_download.distribution}: {packagetype!r}"
)
AssertionError: Unknown package type for fpdf: 'bdist_wininst'
compact list
pytest-coverage: IndexError
slack: IndexError
awsretry: IndexError
commonregex: IndexError
google-oauth: IndexError
pyrouge: IndexError
fpdf: Unknown package type: 'bdist_wininst'
crcmod: Unknown package type: 'bdist_msi'
git-python: Unknown package type: 'bdist_egg'
multiprocessing: Unknown package type: 'bdist_wininst'
environ: Unknown package type: 'bdist_wininst'
python-constraint: Package file 'python-constraint-1.4.0.tar.bz2' does not end with '.tar.gz' or '.zip'
mocker: Package file 'mocker-1.1.1.tar.bz2' does not end with '.tar.gz' or '.zip'
amqplib: Package file 'amqplib-1.0.2.tgz' does not end with '.tar.gz' or '.zip'
The question is not critical right now, but it seems likely that someone may want to revisit it in the future.