-
-
Notifications
You must be signed in to change notification settings - Fork 9.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
Remove automatic package updates when running "brew install" #9285
Comments
It won’t. You’re either conflating things or bumping against a bug I haven’t seen mentioned, or have something misconfigured. There’s a huge difference between That’s the extent of HB’s autoupdate. It doesn’t upgrade packages for you, it just ensures you’re on the latest package definitions, which makes sense for several reasons. When installing something for the first time, you usually want the latest version, and tons of bugs are solved by running |
First of all, Homebrew is an evergreen package manager which means that we (in most cases) only support the latest version. This has been discussed in issues countless times and isn't going to change. Secondly, are you mixing up Have you tried using In terms of the Python issue, you may not be able to avoid installing a newer version of Python because lots of formulae depend on the latest Python version. However, you can install both Additionally, it's very easy to maintain your own, personal, tap that can contain whatever versions you want. The Lastly, as you mentioned, we do have a |
We’re not going to do this as automatic updates have significantly reduced the amount of support requests that maintainers need to handle. The methods for turning off automatic updates are documented already as you point out in your issue description. |
There is another way that a |
If you do this, though, note that |
|
I hit this today - doing what seemed like a simple
If I wanted this I would have run |
There's a brief explanation of what's happening in the FAQ: https://docs.brew.sh/FAQ#why-does-brew-upgrade-formula-also-upgrade-a-bunch-of-other-stuff Feel free to ask if anything there is unclear. |
Feature suggestion
Lets have brew package manager not update packages everytime you command line "brew install" as default. Remove this having no required environsym, and only update when calling "brew update/upgrade"
A detailed description of the proposed feature
Today by default, everytime you install a new package, brew will go ahead and automatically update all of my system packages to their latest versions. I propose to switch this or remove this completely and only have homebrew update packages when requested. This has caused issues over and over again and im sure im not the only one. The reason this is a bad design is because most of the time development packages are version specific.
I know there is the environsym to tell homebrew to not upgrade but i believe that this shouldn't be a requirement to stop the automatic updates. The package manager should only upgrade when told to! I dont know any other package manager that does this... pip, yum, apt-get ect ect.
Remove the environsym, stop the automatic updates, and only update packages when told to.
The motivation for the feature
When homebrew updates all my system packages, i have to first huntdown what the package was. Next find out what the previous version of the package was, uninstall the newest version, find and install the older version, unlink the newest version and relink the older version. Usually takes about 10 times of the right ordering of this process to get things back to working. But theres a chance, that the older version of the package isn't even available, breaking all APIs and forcing a version update. Not very fun!
Heres an example iv been dealing with over and over... im sitting on python3.7 on my manage macs for automation servers. Everytime i need to use brew to install something new and i leave it running.... the homebrew decides i need to go install python@3.8 because im on 3.7. Why would this ever be a thing? Who would go update a required python version like that? This then breaks all of my python site-packages and i have to spend a couple hours of my day break fixing 60 managed mac computers to get the API's up and running again.
I do have the environsym on macs
HOMEBREW_NO_AUTO_UPDATE=1
, but i do still see this happen time to time when installing via brew.How the feature would be relevant to at least 90% of Homebrew users
I'm sure every user of homebrew has ran into this issue before when they use homebrew for package managing on the darwin systems as a developer. Versions sometimes need to be specific, and when that version gets updated and breaks their APIs, they need to track down and figure out what brew did to cause this. I have seen countless forums on running brew commands to fix broken versioning.
What alternatives to the feature have been considered
I know there is the
HOMEBREW_NO_AUTO_UPDATE=1
environsym available to tell homebrew to skip the updating. Which is fine, but what im requesting is to remove this and have it not auto update by default. To the best of my knowledge i don't know what other alternatives are out there to stop the auto updating.The text was updated successfully, but these errors were encountered: