Skip to content
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

3.5? #22

Closed
nedbat opened this issue Aug 30, 2015 · 13 comments
Closed

3.5? #22

nedbat opened this issue Aug 30, 2015 · 13 comments

Comments

@nedbat
Copy link
Contributor

nedbat commented Aug 30, 2015

3.5rc2 is provided as .exe's, with no .msi's. Any chance you'll add support for downloading and installing it?

@ariddell
Copy link

I was going to ask about this as well -- will it be possible to use a more recent compiler for C extensions now that 3.5 is compiled using Visual Studio 2015?

@ogrisel
Copy link
Owner

ogrisel commented Aug 31, 2015

Maybe you should ask the Python release manager to generate a .msi as well?

Building against 3.5 will require significant changes in the build environment (basically do not execute the cmd script and hope that the version of VS installed on the appveyor host is recent enough):

http://stevedower.id.au/blog/building-for-python-3-5/

I won't have time to investigate this myself but I would be glad to review and merge pull requests to add support for this.

@ariddell
Copy link

That's a great blog post. Thanks.

I wish I were more knowledgeable about Windows and could help here. I'm certainly willing to test proposed changes in the scripts.

@nedbat
Copy link
Contributor Author

nedbat commented Sep 2, 2015

@zooba: Would you be able to help us with this transition? 3.5 is different than previous releases, but we want to keep Appveyor working well with it. Any advice you can give us will be appreciated! :)

@nedbat
Copy link
Contributor Author

nedbat commented Sep 2, 2015

Chatting about this with a fellow Pythonista, we were lamenting our lack of Powershell expertise to solve this problem. And we wondered: why are we scripting this with Powershell at all? Appveyor provides Python 2.7, so why don't we write these scripts in Python?

@zooba
Copy link

zooba commented Sep 3, 2015

PR #24 looks like it's covered it. You could speed things up a bit by adding options like Include_doc=0 and Include_test=0 (full list here). Let me know if there are more options you'd like - I can look into it for 3.5.1.

Otherwise, 3.5 should work better than the earlier releases :). If VS 2015 (any version from Express for Desktop up to Enterprise) is installed it will be detected automatically.

(As an aside, the EXE installer is actually a bundle of between about 5 and 20 MSIs, depending on which options you select. There's no way to make a single MSI that is compatible with these, so I'm very hesitant to release one or it will lead to broken installs and complaints. But to see how nice the new model is - get a Windows VM, install 3.5.0rc1 with some options customized, then install 3.5.0rc2 on top :) )

@ogrisel
Copy link
Owner

ogrisel commented Sep 4, 2015

Chatting about this with a fellow Pythonista, we were lamenting our lack of Powershell expertise to solve this problem. And we wondered: why are we scripting this with Powershell at all? Appveyor provides Python 2.7, so why don't we write these scripts in Python?

Python was not installed by default on appveyor when I started the python-appveyor-demo project. I had to bootstrap. Besides this powershell script is really useful to bootstrap a windows VM on Azure or Rackspace :)

@ogrisel
Copy link
Owner

ogrisel commented Sep 4, 2015

To get the Python 3.5 build work in 64bit, we also need to update the run_with_env.cmd batch script to not try to setup the SDK env and just use the default env, assuming VS 2015 is properly installed.

I don't have windows machine with VS 2015 at hand to try to change it. Any taker? Maybe @zooba?

(By the way be warned, this run_with_env.cmd script is from hell, I thought I would loose my sanity trying to write those 20 lines mostly via trial and error).

@ogrisel
Copy link
Owner

ogrisel commented Sep 4, 2015

There's no way to make a single MSI that is compatible with these, so I'm very hesitant to release one or it will lead to broken installs and complaints.

Alright, thanks for the explanation. As long as the install can be easily scripted I am fine with it :)

@zooba
Copy link

zooba commented Sep 4, 2015

If the build is going through distutils (including numpy.distutils) and VS 2015 is installed properly (i.e. not just copied onto the machine) then you don't need run_with_env.cmd at all.

If it's easier to modify run_with_env.cmd, then the line you want is IF %PYTHON_VERSION:~0,3%==3.5 EXIT 0 at some point before the =="3" branch.

(It's actually one of the nicer batch scripts I've seen - check out testrelease.bat for some of my "finest" work ;) )

@nedbat
Copy link
Contributor Author

nedbat commented Sep 13, 2015

This is now fixed.

@nedbat nedbat closed this as completed Sep 13, 2015
@hickford
Copy link
Contributor

Hi. Can you help? Python Packaging User Guide's appveyor.yml is missing Python 3.5 too. pypa/packaging.python.org#174

@ogrisel
Copy link
Owner

ogrisel commented Sep 26, 2015

The appveyor.yml file and companion .ps1 and .cmd scripts in the master branch of this repo are up to date. The documentation on python.org needs to be updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants