Closed bayandin closed 4 years ago
Thanks for the hard work here. Some feedback from a user who lost more time than he likes because this work was hidden to me. My vimrc stopped loading correctly because powerline-status was not found by the python used by vim. I had triple checked that I had not corrupted something in the setup before checking something was not wrong with python3 in vim. This is when I discovered that it was a different version than what installed by the python formula. When I upgrade formulae I review the caveats and I did not see any warning about vim upgrading the version of python being used. But I might have missed that.
Sorry if we broke some stuff along the way. There was no specific warning about this. It's quite hard for us to make sure everything survives an update, especially plugins and internal stuff which is not installed by us. We can provide support on a best effort for these cases, but rely mostly on pull requests to improve these kind of migrations.
Is it possible to add the "alt-install" style links, python3.8 and friends, to the python@3.8 formula? Sort of an alt-install like link to /usr/local
. It seems like it would much easier to fix things (like adding black into my environment so macvim works again) if I could just do python3.8 -m pip install black
instead of brew info python@3.8
followed by copy and pastes of the full paths of things.
Note: in this case, it looks like black has a brew formula. Though I do use this all the time:
/usr/local/opt/python@3.8/bin/python3 -m venv .env
@iMichka looks like all the formulae in homebrew that support Python 3.8 have been converted, leaving salt
, ansible@2.8
, bzt
, aurora-cli
, protobuf@3.7
, jupyterlab
, and gradio
. Is there a draft PR or discussion somewhere concerning homebrew-core's upgrading python
to python3.8
, or should a new PR be opened for it?
I suppose this draft is outdated - https://github.com/Homebrew/homebrew-core/pull/54912
Salt was just migrated with their last release.
Silently converting python
to python@3.8
without an intervening uninstall has left thousands of broken symlinks to now-removed python files installed by pip3.7 in /usr/local/bin
.
We just released a new version of brew with improvements to the upgrade process. Can you upgrade again and see if things get sorted out?
I did a brew upgrade
, and then pre-commit broke again, I had to reinstall with brew. (That happened on the 3.7 -> 3.8 change, too, yesterday)
pre-commit
installed through pip or brew?
Brew always.
It's possible it would have been fine if I went from the 3.7 to the newest version without reinstalling it after the initial 3.8 upgrade. I tried Jupyter lab and black just now, and those work. Also, pre-commit has a tendency to break on upgrades, IIRC - I'm pretty sure I've brew reinstalled it a few times.
If you re-installed it between yesterday and today there might have been some issues. Especially if you re-installed with a from-source build. I could not reproduce the error on my side. If a uninstall/install fixed it for you, then we are all good. Migrations are tricky and we are trying to do our best. The python 3.7 to 3.8 was especially difficult for us this time.
left thousands of broken symlinks to now-removed python files installed by pip3.7 in /usr/local/bin.
If you first upgraded prior to brew 2.4.5's release, run brew cleanup
now (after a brew update
) and the sylinks which are Homebrew's responsibility should be gone.
Closing here, migration is done.
27 Nov 2019 - 9 July 2020
Homebrew has a lot of formulae that depend on
python
and migration at one go ended up with lack of disk space on CI agents (https://github.com/Homebrew/homebrew-core/pull/45337), so this time we're trying to do the migration in several PRs.The first one PR adds
python@3.8
(https://github.com/Homebrew/homebrew-core/pull/47273)Here is the whole (long) list formulae with total stats for 90 days: