Sorry, this is just not true, we hold merging YourLib 2.0 into core until all dependents are upgraded or boneyarded. Maybe you're speaking from your outdated experience with brew years ago.
Also, we do have plans to support multiple versions of libraries, see https://github.com/Homebrew/brew/issues/620 "Handle Versions Better" (although I'm not necessarily a fan of this personally). We also have an [email protected] formula in core already in case you want a sneak peek of the future.
I get that it's all a tradeoff, and it must to help keep complexity down if brew is latest-everything.
New versions stuff looks good. I'll look into the versions tap too.
In core this is true. In your own tap you can vendor your dependencies however you want.
Back to Macports it is. I'll be sure to tell others about this.
When they brought in brew cask i was completely blown away and i use brew exclusively for installing almost everything on my mac.
I tried macports at first, but bailed out of that after i shot myself in the foot inside the hour. Switched to brew and have never looked back since.
every so often i'll try to install something with brew, and it just won't work. the last thing i'm trying to do on planet earth is spend 30 minutes debugging a packager on my workstation (as opposed to on servers, where i do this literally all day long), so i just don't bother.
I didn't even realize Homebrew was sending my info to Google Analytics :(. I am a huge fan of Homebrew, but they really should make this opt-in vs automatic by default.
Edit: To opt out (the second line is just for confirmation):
$ brew analytics off
$ brew analyticsI disagreed in the GitHub issue about this. Debian's Popcorn (package popularity analytics) is opt-in - a choice on install that defaults to "off". That would be the perfect solution. Ultimately those who agreed with me were told that the decision was made and there would be no further discussion - the issue was closed and locked.
> If you feel that way: please use another package manager.
I didn't like how it was handled. I think any sort of analytics, especially by third party companies with real capabilities for correlation and de-anonymisation should be strictly opt-in (off by default).
Opt-in doesn't really hurt users who don't care about privacy and security. Opt-out does hurt users who care about those things. Many organisations have security policies that discourage using software that "calls home". I'd trust the software much more if it didn't have that functionality at all.
The developer's justification was that if it was off by default, no-one would turn it on. I think that speaks volumes about how users feel about analytics these days. Some users suggested a Debian Popcorn style dialog ("We'd love it if you could help us gather some information about package usage, etc etc. Would you like to participate [y/N]", off by default but a question on first run asking the user if they'd like to help). We were told "no".
Overall, I thought it was a bad idea and the situation was handled poorly. For something as integral as a package manager I expect more.
[1] https://github.com/Homebrew/brew/issues/142#issuecomment-214...
Nothing wrong with that viewpoint, but I just disabled it and moved on to enjoying pretty good software.
https://trac.macports.org/wiki/Migration
After going through the migration, it isn't that bad, but it was surprising (horrifying?) to me that ports was completely broken after an OS upgrade.
Probably there would be room for improvement, but there is only little interest by contributors. This only happens once a year and after everybody went through it, they quickly loose interest in contributing anything better for the migration process.
Even a fairly vanilla ROS installation has a deep dependency tree— there are any of several dozen major packages which can at any moment release a new major version and break us.
In the end, most ROS Mac users still choose an Ubuntu, Debian, or Fedora VM— having a stable set of underlying packages is worth the tradeoff in convenience and performance.
How does Homebrew compare to pkgsrc these days?
As a package maintainer, though, one thing surprised me: you can't make your package depend on a specific version -- even a major version -- of a library.
So if MyApp uses YourLib 1.0, everything is fine until YourLib 2.0 comes out, at which point users doing `brew install myapp` will start getting cryptic compiler errors. I have no choice but to drop whatever I'm doing and make MyApp compatible with YourLib 2.0, which may even be impossible.
It's just odd because otherwise Homebrew is so well designed. It seems like a weird omission.
Edit: Some packages get around this by packaging major versions separately (qt, qt5) but most don't.