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
Decent dependency management please? #4811
Comments
Regardless of where this issue goes in terms of changes being implemented, you may find And I would argue that this is not standard behavior in a package manager; when you uninstall a package in |
That's not the purpose of
apt-get doesn't automatically remove dependencies; you need to run
This wording, intentional or not, is rude about the Homebrew project implying that it is not good, providing decent dependency management or standard features. In addition, you didn't fill out the issue template. Please reconsider your language in future issues and comments on this issue tracker; as-is it's demotivating and rude. |
No. Some build-time dependencies will get used again when building something else. E.g., |
@chdiza Common build-time dependencies like @alebcay @MikeMcQuaid Yes, I agree. Let's stay on topic and discuss technical details. No one is getting paid for arguing or rants. Your suggestion implied there is already a way to implement what I was suggesting. I tried, but it seems something isn't working. ~ $ brew leaves
Error: No available formula with the name "ecj"
~ $ brew info ecj
Error: No available formula with the name "ecj"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Error: No previously deleted formula found.
~ $ brew bundle dump
==> Tapping homebrew/bundle
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-bundle'...
remote: Counting objects: 70, done.
remote: Compressing objects: 100% (65/65), done.
remote: Total 70 (delta 5), reused 20 (delta 2), pack-reused 0
Unpacking objects: 100% (70/70), done.
Tapped 1 command (153 files, 219.5KB).
~ $ # Would be nice to explicitly tell the user where the output file is stored here,
~ $ # instead of in the man page |
The work that would go into a metapackage could just be put into an external command that does what you want. An external command is no harder to type than |
So long as you are able to avoid being rude: lets. The tone used in messages, however, does matter; it cannot be divorced from technical details.
We're not going to do this. Let's stop discussing it, please.
This is an issue with your installation unrelated to your feature request here. The command produces an error so it is not behaving as documented.
Note you did not run |
It seems something requires ~ $ brew install ecj
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
metabase
Error: No available formula with the name "ecj"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Error: No previously deleted formula found.
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.
~ $ brew bundle cleanup
Error: No Brewfile found
~ $ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!
Warning: Putting non-prefixed findutils in your path can cause python builds to fail.
Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
ghostscript
suite-sparse I don't seem to be able to persuade you that this feature is worth considering (now it is virtually in a will not implement status), and am not interested anymore. I guess you'd like to close this issue at this point. |
It's not that it's not worth considering, it's that it already exists. Check out the |
The two years old issues #634, #3534 were closed without much discussion, leaving small ground for people who might be interested to start working on a pull request. Two years from that, many core mechanisms in Homebrew changed along with the transition from OSX to macOS. Let's re-open this issue and discuss possible ways to implement a decent dependency management.
A good package management system should take care of orphan packages (that are not currently needed by anything, but was only temporarily needed sometime in the past). Build time dependencies should definitely be cleared when
brew cleanup
is run (unless installed explicitly by the user), maybe with some additional flag--remove-build-dependencies
, and runtime dependencies for packages that are no longer needed and thus removed from the system.This feature isn't a goal, but a standard (e.g.
apt-get
,yum
,pacman
,zypper
,pkg
andnix
to name a few.The text was updated successfully, but these errors were encountered: