Comments (13)
In the meantime I put together a quick hack to recursively remove dependencies. Check it out: https://github.com/ggPeti/homebrew-rmrec
from homebrew-rmtree.
Thanks for reporting this, and thanks for the detailed example. I'll look into this
from homebrew-rmtree.
Hi @Argon- My PR was already merged by @beeftornado
Thanks @beeftornado 😄
from homebrew-rmtree.
Unfortunately this repo seems to be dead/inactive. I guess it's best to settle for one of the forks to continue, e.g. https://github.com/jsfaint/homebrew-rmtree as it solves the (as of now probably most important) problem explained in #11
from homebrew-rmtree.
This issue is also a problem in the linked repo. I'd create an issue there as well, if the repo allowed the creation of issues
from homebrew-rmtree.
If you export HOMEBREW_DEVELOPER=1
the errors will be warnings so it at least won't go 💥
from homebrew-rmtree.
I got around this by adding the --ignore-dependencies
flag to this line. I'm not sure if this is a "clean" solution, but it seems to have worked for me.
from homebrew-rmtree.
@metakirby5 Doesn't this mean that the dependencies aren't removed?
from homebrew-rmtree.
No.
If HOMEBREW_DEVELOPER is not set, and there are reverse dependencies using a formula, brew will error out if you try to remove that formula. --ignore-dependencies
will suppress the error.
If HOMEBREW_DEVELOPER is set, and there are reverse dependencies using a formula, brew will issue a warning if you try to remove that formula. --ignore-dependencies
will suppress the warning.
The fact that rmtree needs to use --ignore-dependencies
means that it is in fact removing things that have reverse dependencies.
from homebrew-rmtree.
I'm not sure if this will be the behaviour I'm looking for though, as this might uninstall packages that might be needed for other packages.
from homebrew-rmtree.
@irundaia theoretically it should be fine because the cause is that the packages are being removed in the "wrong" order instead of all at once or in the "right" order. The "correct" fix here is to remove them in a single call to brew uninstall, "brew uninstall A B C D" or to do the uninstalls in an order that always removes a reverse dependency before its dependencies.
from homebrew-rmtree.
@ggPeti, I've tested your work, it seems to work fine :) It does seem to be a tad slow tbh. But I can deal with that. :)
from homebrew-rmtree.
from homebrew-rmtree.
Related Issues (20)
- Feature Request Option to blacklist removal when confirmation is requested HOT 1
- private method `named' called HOT 2
- minor issue: homebrew aliases (e.g., "mc" for "midnight-commander") don't resolve as expected
- What does this error mean? HOT 2
- Error: undefined method `args_includes_ignores' for Homebrew:Module HOT 1
- Error: Calling Homebrew.args is disabled! Use `args = <command>_args.parse` and pass `args` along the call chain instead. HOT 1
- Problem with multiple homebrew installations HOT 3
- Homebrew v.3 install as in README.md not working HOT 2
- Thank you HOT 1
- Unable to remove packages HOT 6
- `--dry-run` broken (regression) ? HOT 1
- Consider upstreaming? HOT 2
- can not use --dry-run command HOT 3
- Error: undefined method `args' for Homebrew:Module HOT 1
- Doesn't work on linuxbrew
- No longer available as a Homebrew Formulae HOT 1
- brew autoremove HOT 1
- --dry-run option broken? HOT 3
- Error: undefined method `uses_args' for Homebrew:Module HOT 9
- undefined method `uses_args' for Homebrew:Module HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from homebrew-rmtree.