Live data from Hacker News

Homebrew 1.0.0

brew.sh

41–50 of 255 posts

Re: Homebrew 1.0.0

#41
I can see a point in the future where everything is installed via a homebrew-like process.

Forget CPAN, CRAN, ports, pypi, go-get, rpm, apt, cabal, crate, opam, ...

Just get it from github or similar with homebrew.

Re: Homebrew 1.0.0

#44
Homebrew is really great, and I recently discovered cask (I know, lame, but I'm a MacOS noob :) ) and it's so nice. No more downloading freaking dmg, mounting, dragging, clicking a bunch of popups, no more visiting the app store.

How is this thing not integrated in MacOS yet?

Re: Homebrew 1.0.0

#46

I can see a point in the future where everything is installed via a homebrew-like process. Forget CPAN, CRAN, ports, pypi, go-get, rpm, apt, cabal, crate, opam, ... Just get it from github or similar with homebrew.

Doubtful, homebrew doesn't do any kind of dependency management, so it would be a strict downgrade from pip, gem, cabal, etc

Edit: See comment from rogual elsewhere in this thread - https://news.ycombinator.com/item?id=12547076

Re: Homebrew 1.0.0

#47
post #35

As a user, Homebrew is a great experience. 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…

"everything is fine until YourLib 2.0 comes out, at which point users doing `brew install myapp` will start getting cryptic compiler errors."

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 openssl@1.1 formula in core already in case you want a sneak peek of the future.

Re: Homebrew 1.0.0

#48
post #35

As a user, Homebrew is a great experience. 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…

As someone who maintain a ROS installation scheme for Mac based on homebrew (https://github.com/mikepurvis/ros-install-osx), this is a constant source of frustration.

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.

Re: Homebrew 1.0.0

#49
post #4

Among all the software I use, Homebrew must be the one giving me the least trouble. I have 100 installed packages and I don't remember the last time anything didn't work. Plus, for anything I care about, updates seem to always take less than a day, usually it's almost instantaneous. In comparison with MacPorts before, it's like night and day. npm/pip/mix/bundler all seem to periodically conspire to waste a few hours…

So npm is bad in your opinion, because it correctly handles different dependencies on packages with varying versions, screwing up? Or is the problem the vast js ecosystem?

I don't think that "tree X" can be a good argument against using any kind of package manager.

Re: Homebrew 1.0.0

#50
post #47
post #35

As a user, Homebrew is a great experience. 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…

"everything is fine until YourLib 2.0 comes out, at which point users doing `brew install myapp` will start getting cryptic compiler errors." 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…

To be clear: I'm only talking about core here. If you try to compile external software against brewed libraries, of course you may run into problems, but we do have the homebrew/versions tap, and you can always host your own taps for outdated libraries.
Post reply on HN