New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appveyor builds failing due to cli-32.exe missing #861

Closed
jayvdb opened this Issue Nov 26, 2016 · 12 comments

Comments

Projects
None yet
6 participants
@jayvdb
Contributor

jayvdb commented Nov 26, 2016

While running setup.py install for coala-bears on Appveyor Windows, seeing No such file or directory: 'C:\\Python34\\lib\\site-packages\\setuptools\\cli-32.exe

Collecting setuptools>=19.2 (from coala>=0.9->-r requirements.txt (line 2))
  Downloading setuptools-29.0.0-py2.py3-none-any.whl (248kB)
  Saved c:\wheels\setuptools-29.0.0-py2.py3-none-any.whl
...
%CMD_IN_ENV% python setup.py install
...
Searching for safety==0.5.1
Best match: safety 0.5.1
Adding safety 0.5.1 to easy-install.pth file
Installing safety-script.py script to C:\Python34\Scripts
error: [Errno 2] No such file or directory: 'C:\\Python34\\lib\\site-packages\\setuptools\\cli-32.exe'

https://ci.appveyor.com/project/coala/coala-bears/build/1.0.3736/job/63r49dy6q2qpjc62

The same occurs for cli-64.exe on the 64 bit builds.

https://ci.appveyor.com/project/coala/coala-bears/build/job/kqjed946v7wk1fq0

@jayvdb

This comment has been minimized.

Contributor

jayvdb commented Nov 26, 2016

Very maybe related: #851

@akittas

This comment has been minimized.

akittas commented Nov 26, 2016

Same problem for me on installation of various packages from pypi, e.g. twisted

@ghost

This comment has been minimized.

ghost commented Nov 26, 2016

I am having the same issue but for the cli-64.exe.

Dropping the cli-64.exe in solved it for me.

This issue is occurring on both Python 2.7.11 and 3.5.2

Thanks

@akittas

This comment has been minimized.

akittas commented Nov 26, 2016

both cli-32.exe and cli-64.exe don't exist in this version (i.e. 29.0.0)

nicoddemus added a commit to nicoddemus/pytest that referenced this issue Nov 26, 2016

Pin setuptools to < 29 because of AppVeyor failures
Related to pypa/setuptools#861

Remove the pin when we have a new setuptools release

enzbang added a commit to enzbang/e3-core that referenced this issue Nov 26, 2016

@asottile

This comment has been minimized.

asottile commented Nov 26, 2016

This seems to be a bad wheel uploaded to pypi, cloning setuptools and building a wheel against master seems to avoid the cli-32.exe problem.

Diffing the wheel from pypi (vs the wheel created with python bootstrap.py && pip wheel .):

$ diff -ur before after
Only in after/setuptools: cli.exe
Only in after/setuptools: cli-32.exe
Only in after/setuptools: cli-64.exe
Only in after/setuptools/command: launcher manifest.xml
Only in after/setuptools: gui.exe
Only in after/setuptools: gui-32.exe
Only in after/setuptools: gui-64.exe
Only in before: setuptools-29.0.0.dist-info
Only in after: setuptools-29.0.0.post20161126.dist-info
@asottile

This comment has been minimized.

asottile commented Nov 26, 2016

@asottile

This comment has been minimized.

asottile commented Nov 26, 2016

perhaps due to the nonstandard release hinted at in #856?
CC @jaraco ^

@asottile

This comment has been minimized.

asottile commented Nov 26, 2016

I can replicate the bug against master by building a setuptools wheel on linux and then attempting to use it on windows. It appears that the upload to public pypi for setuptools must come from a wheel built on windows. It also seems that despite the wheel being named a py2.py3-none-any wheel, it contains platform specific (windows) binaries in some cases (when built on windows).

@jaraco

This comment has been minimized.

Member

jaraco commented Nov 27, 2016

The issue is that I performed a manual release today, and I forgot to set an environment variable first. If SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES is not set, and the release is cut from a non-Windows system, the files get omitted.

This situation is not suitable. Setuptools should not be defaulting to creating buggy builds. I'm going to change the behavior to release these files by default, and if an environment wants to make a build without these files, it must do so by disabling the behavior.

@jaraco jaraco closed this in de11b12 Nov 27, 2016

@jaraco

This comment has been minimized.

Member

jaraco commented Nov 27, 2016

Released 29.0.1 with the presumed fix.

nicoddemus added a commit to nicoddemus/pytest that referenced this issue Nov 27, 2016

nicoddemus added a commit to nicoddemus/pytest that referenced this issue Nov 27, 2016

@nicoddemus

This comment has been minimized.

Contributor

nicoddemus commented Nov 27, 2016

Thanks for the quick fix!

@mrchaohe

This comment has been minimized.

mrchaohe commented Feb 2, 2018

I had solved this problem. Because it loss the file 'cli-64' or 'cli-32', you get the file to the routh such as 'C:\Python34\lib\site-packages\setuptools\'.
I unziped the file 'setuptools-36.2.7-py2-py3-none-any.whl' , then find 'cli-32', 'cli-64' in folder setuptools. You can copy the files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment