zopefoundation / persistent

automatic persistence for Python objects
https://pypi.org/project/persistent/
Other
46 stars 28 forks source link

Python 3.6 Mac #58

Closed jamadden closed 7 years ago

jamadden commented 7 years ago

Added at the top to see if it would change the build order. Turns out it doesn't, they're grouped by OS and the linux builds go first (and faster). (I would move it down with the others, but then there'd have to be another build and it's taking more than an hour now for the mac builds to start.)

jamadden commented 7 years ago

Sigh. Something's wrong. Not with this PR, with the OS X builds in general, I think:

I added python --version for assurances of what python does before python setup.py test, and it turns out that the homebrew 3.5 build is actually running Python 3.6.

So now we have two 3.6 builds and no 3.5 build.

jamadden commented 7 years ago

The comments for get_python_environment imply that homebrew only pays attention to the major version number. So we may not be able to use homebrew to get 3.5 anymore.

I tried using macpython instead for 3.6, which is supposed to download the installer from python.org, but it blew up spectacularly and weirdly. Maybe I'll try that for 3.5...

jamadden commented 7 years ago

Ok, so 'macpython 3.5' and 'homebrew 3' get us Python 3.5 and 3.6, respectively, so this PR has things back in a good state.

I suspect, but did not test, that 'macpython 3.6.0' would also get us 3.6 ('macpython 3.6' currently fails as mentioned above). That might be better than floating with whatever 'homebrew 3' decides to be.

mgedmin commented 7 years ago

How many other zope packages are no longer building python 3.5 wheels for mas os x due to this homebrew thing?

jamadden commented 7 years ago

How many other zope packaged are no longer building python 3.5 wheels for mas os x due to this homebrew thing?

BTrees, ExtensionClass and Acquisition are the only packages I can think of that include C extensions. Of those, only BTrees is building wheels on OS X, and it appears to be impacted.

Which points out another problem: using a 'homebrew' version gets you the wrong wheel tag: you get the restrictive '10_11_x86_64' tag (64-bit only 10.11 or greater) instead of the very general '10_6_intel' (32 and 64-bits, 10.6 and above). So pretty much all wheels should be using 'macpython', not 'homebrew'.

Given how congested the Mac build farm is, hopefully we're not doing builds on it unless necessary (i.e., to upload C extension wheels)

mgedmin commented 7 years ago

For the record

mg@platonas: ~/src/zopefoundation $ grep -l homebrew */.travis.yml
BTrees/.travis.yml
persistent/.travis.yml
zope.index/.travis.yml
zope.interface/.travis.yml