-
-
Notifications
You must be signed in to change notification settings - Fork 296
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
An option to skip transitive dependencies when dumping #1489
Comments
Sorry, passing on this. This is intentional behaviour. Homebrew has no concept of leaves: only things installed on request or as dependencies. As mentioned previously: dependencies that are installed on request must be dumped earlier because they will be installed earlier and otherwise the error messages if they fail to install are unnecessarily confusing.
This metadata was never stored. What is installed on request, however, is not lost: it will still be installed on request on a new system and installed as a dependency when not specified in the Brewfile. |
Wait, I'm confused; it's not lost? As in, if I run one of the new brewfiles (that includes, say, |
I think @MikeMcQuaid's point is that if a formula appears in a Brewfile at all, that's because it's been marked as "installed on request", because that's the primary test used to curate the Brewfile contents in the first place. So if If I'm not mistaken, the relevant code is here: homebrew-bundle/lib/bundle/brew_dumper.rb Lines 54 to 72 in a8a2149
|
This was brought up previously, but closed, due to it not actually being a behaviour at the time. However, since then, it appears to be have been added as an intentional behaviour (i.e.
brew bundle dump
is currently including packages that do not appear inbrew leaves
- in fact, they're sorted non-alphabetically, before their leaf dependants, so it's pretty clear it's an intentional process.)It'd be nice to be able to disable this behaviour optionally. Especially because there's no differentiation in the file between what was a leaf, and what was not; so that metadata is lost upon installation to a new system (or just ... existing for a couple of years, and forgetting what you've installed and why. 😅)
The text was updated successfully, but these errors were encountered: