Skip to content

Python 3.10: pip installs wheel for ancient Python versions #10617

Closed
@albertosottile

Description

@albertosottile

Description

I am the current maintainer of py2exe https://github.com/py2exe/py2exe and I still have not released a version of the package for Python 3.10,

However, users reported that they were able to install the package on their system. When questioned, they reported that pip first tries to install from some old sources (py2exe-0.10.0.2.tar.gz). I am sure this is my fault and setup.py is not proper there, and I intend to delete this rogue release.

Unfortunately, after this failed attempt, pip picks an even older wheel which is not compatible at all with 3.10 (py2exe-0.9.2.2-py33.py34-none-any.whl) and claims that the package was successfully installed.

I can delete the rogue 0.10.0.2 source archive, but I would like not to delete also all the releases before that one. Could you tell me why this is happening and if is there anything, besides deleting all past releases, that I can do?

Thank you for your assistance

Expected behavior

pip should either say that no version compatible with the platform was found or try to install from the source archive and fail due to the lack of dependencies/compiler.

pip version

21.3.1

Python version

3.10.0

OS

Microsoft Windows [Version 10.0.17763.2183]

How to Reproduce

pip install py2exe

Output

C:\>pip install py2exe
Collecting py2exe
  Downloading py2exe-0.10.0.2.tar.gz (104 kB)
     |████████████████████████████████| 104 kB 6.8 MB/s
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'C:\Python\python.exe' -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp\\pip-install-lyc0or4x\\py2exe_b12f490fb2d949
048ed23d41020dcdaf\\setup.py'"'"'; __file__='"'"'C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp\\pip-install-lyc0or4x\\py2exe_b12f490fb2d949048ed23d41020dcdaf\\setup.py'"'"';f = getattr(token
ize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(
compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-pip-egg-info-wcv280uo'
       cwd: C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\
  Complete output (17 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\setup.py", line 17, in <module>
      from py2exe.py2exe_distutils import Dist, Interpreter, BuildInterpreters
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\__init__.py", line 9, in <module>
      patch_distutils()
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\patch_distutils.py", line 68, in patch_distutils
      from . import distutils_buildexe
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\distutils_buildexe.py", line 91, in <module>
      from . import runtime
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\runtime.py", line 3, in <module>
      from .dllfinder import Scanner, pydll
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\dllfinder.py", line 6, in <module>
      from . import pescan
    File "C:\Users\ContainerAdministrator\AppData\Local\Temp\pip-install-lyc0or4x\py2exe_b12f490fb2d949048ed23d41020dcdaf\py2exe\pescan.py", line 12, in <module>
      import pefile
  ModuleNotFoundError: No module named 'pefile'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/7d/2b/5bb512a67aaa465f8629f2c0d759f56b8136a973b355db32870beb5c76af/py2exe-0.10.0.2.tar.gz#sha256=40d785a92c85908c4829bcfd4ae9985d20dcdb805e5
0097c8cba78608b06a81c (from https://pypi.org/simple/py2exe/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Downloading py2exe-0.9.2.2-py33.py34-none-any.whl (270 kB)
     |████████████████████████████████| 270 kB 6.4 MB/s
Installing collected packages: py2exe
Successfully installed py2exe-0.9.2.2

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    type: bugA confirmed bug or unintended behavior

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions