-
-
Notifications
You must be signed in to change notification settings - Fork 12.4k
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
python 3.8.0 #45337
python 3.8.0 #45337
Conversation
cdcd84a
to
e0dbcf5
Compare
Would you add From Python 3.8, the option doesn't take too long time to build. |
Given this is not a default option, probably not, unless it is done in upstream (“official”) binaries. |
@bayandin Major version update, this is going to be a fun ride…
|
I think official binaries uses |
No problem! I'm on it |
Looking at first test results, all |
e0dbcf5
to
30a18ef
Compare
Pushed a bunch of revision bumps (with fixes for Jenkins output from the previous build (just in case): |
This comment has been minimized.
This comment has been minimized.
bb56fd3
to
09338e9
Compare
@bayandin it will run when the CI has a free slot, we have to wait… |
2db3d00
to
a6e27c4
Compare
|
Here are a couple changes I needed to make to dependencies to get them to compile against 3.8: VapourSynth was also failing to link so I added |
It seems offcial macOS binary doesn't use both of But these options have significant performance gains. See https://bugs.python.org/issue38477 for a recent example. |
So we'll stick to not using them.
If it is safe, upstream should enable it by default. It does lead to significant build-time increase (30 minutes instead of 2 minutes, from what I see), and we do have users who build from source. |
It is not safe because we don't know much about the environment. PGO and LTO were unstable in the old GCC and Python may be built on such platforms. That's why we don't enable it by default in On the other hand, we can assume compiler versions on macOS. I don't know why official Python binary doesn't use them. I agree that the official binary should use it too. |
Related discussion about the flags on the python-dev mailing list: https://mail.python.org/archives/list/[email protected]/thread/EILILECNTLTW4VCBCPW37R4QRU7ZBDEU/#VUA2AG6J2QG2GK52DZ4VKZMRUTKJ4DWO |
77276d7
to
e4f0bfc
Compare
d65774e
to
bbf0d6c
Compare
You're right! Bumped revisions and added python tests for these formulas. The whole CI stopped because of From the short run (https://jenkins.brew.sh/job/Homebrew%20Core%20Pull%20Requests/52326/):
|
Bad news, I just find out that haven't bump revisions for the following formulae which requires a
Not sure how I missed all of these, probably their tests never failed for new Python 3.8 or I missed some of them during the rebase |
I'd say let's keep CI running for now, see what it uncovers already. |
alure and dromeaudio are doomed to fail on the CI because they deal with audio. It's difficult writing meaningful tests for those without using audio. I'm having similar issues with fluid-synth. There's a critical bug fix that I tried opening a pull request for (the previous version is simply broken) but even the dumb So yeah, just have to ignore that for now. Not really sure what's happening with |
I've updated #46728 with the non-blockers that can be seen up to now. In addition (excluding those on your list of those to revision bump):
I also have major concerns about disk space. The Mojave node started this build with ~75GB of disk space left and now has just 3GB remaining... |
Is there any grunt work I can help on? Not a lot of experience with contributing to home brew but I'm a python developer by profession and would like to help if I can. |
Me too, though I am a superuser rather than a python developer. |
I think the main issue right now is disk space to build all these formulae on the CI. Will have to cancel the current build because of that. Apart from that we're getting close and a lot of the hard work has already been done. @bayandin apache-arrow: |
My bad attempt to improve the test. Fixed now.
Is there a plan what to do with it? |
I've not heard, but I haven't heard much of anything today. I'll find out because we certainly need to do something if we want this merged. In terms of formulae, I suppose there's one blocker still to fix and that's #47101. Gave up on it yesterday - I'll need to get a Catalina setup to look into it. |
WIP Homebrew#45337 Change dependency to python3
50 days since Python 3.8 shipped. How are things progressing? |
Unfortunately, we can't use this information to help us with migration ¯\_(ツ)_/¯ However, as we find out in this PR It's impossible to migrate everything (all |
Can an owner add the [python] label to this PR? |
@bayandin I agree that kind of message does not help the migration, but I think we got on the wrong way to update to Python3.8. Maybe if we had create a formula to This will also facilitate to parallel work on this issue. |
Unfortunately for you homebrew doesn't run for you, it runs to be useful to as many people as possible. Updating python forcefully because Christofer wants us to isn't really in line with that goal. If you want a python 3.8 version faster you're welcome to make a tap though.
That is pretty much what is happening, except there is a pull request for a |
@SMillerDev don't get me wrong. I love homebrew and it always worked really well, I am here just proposing a difference approach for big changes like this. Usually big bang approses does not go to smoothly and create gigantic PR, like update python and all the dependencies in one-shot. Again I am just proposing a incremental way to achieve those complexes upgrades. |
I just created a thread on the community forum about how to do python updates when there is a large cluster of dependencies that also need updating. I don't think the discussion should happen here on the PR. Traffic here should just be from/for folks actually working on solving the PR. Extra traffic here probably just irritates the volunteers who are trying to solve the problem. https://discourse.brew.sh/t/python-3-8-and-large-python-or-other-large-groups-of-dependencies/6451 |
|
Closed in favour of separate migration in #47274 |
I update PR description from time to time to track the progress of python 3.8 migration.
There is a branch for tracking progress: https://github.com/bayandin/homebrew-core/tree/test-python-3.8.0