News for hackers. Stuff that matters.
Re:Homebrew 1.1.0 by dancek on Monday November 07, 2016 @10:50AM (#12891948)
There are lots of minor changes, but nothing major IMHO. The reason for bumping the minor version are a couple of breaking changes:

    - Disable SHA-1 checksum support in formulae
    - Disable running Homebrew as the root user (e.g. sudo brew)
    - Bottles with _or_later tags no longer use _or_later in their filenames so the existing bottle can be reused
Re:Homebrew 1.1.0 by sugarraps on Monday November 07, 2016 @11:07AM (#12892100)
Side-topic: Shouldn't the breaking changes be enough reason to bump the version to 2.0?
Re:Homebrew 1.1.0 by thedaniel on Monday November 07, 2016 @11:16AM (#12892173)
Re:Homebrew 1.1.0 by pflats on Monday November 07, 2016 @11:45AM (#12892431)
Of specific interest: "This deprecation was announced and these methods removed/undocumented before 1.0.0 was tagged so arguably it was not part of the public API when 1.0.0 shipped."

I'm ambivalent. If I rev 1.0 - 1.1, then I'm going to assume the API won't change, even if I'm using undocumented and warning-spitting methods.

But I shouldn't be doing that, I shouldn't roll in a minor update without at least reading the change log, it's a FOSS project run by a volunteer staff, and brew never swore an oath to follow the laws of versioning as set by semver.org.

If the brew documentation said, "We use semantic versioning," then I'd say the complainants were correct. Otherwise, versions are just versions, and all you can count on is (Major Changes).(Medium Changes).(Minor Changes).(Tiny Changes).(etc.)

edit: Thoughts:

Years and years ago, I spent a lot of time and energy ranting about the fact that Google called GMail "beta software" when it was clearly not feature complete, and beta has a meaning, and we are just destroying a useful system of names for the software testing and release cycle, and…

But in the end, version numbers and development stages are language, and you cannot force your language on others, irregardless of whether or not you'd like to.

Re:Homebrew 1.1.0 by jffry on Monday November 07, 2016 @12:30PM (#12892889)
> I'm going to assume the API won't change, even if > I'm using undocumented and warning-spitting methods.

And here I disagree, quite strongly. If I'm using "undocumented and warning-spitting methods" then I know what I have done is a hack and those methods could disappear or change at any time and I should proceed at my own peril.

Re:Homebrew 1.1.0 by pflats on Tuesday November 08, 2016 @01:45AM (#12898203)
>And here I disagree, quite strongly. If I'm using "undocumented and warning-spitting methods" then I know what I have done is a hack and those methods could disappear or change at any time and I should proceed at my own peril.

We're in complete agreement, actually. I'm just saying that I generally don't expect things like that to change on a point release, not that it can't, won't, or shouldn't. You're definitely juggling chainsaws if you're in a situation like that.

Re:Homebrew 1.1.0 by Touche on Monday November 07, 2016 @12:45PM (#12893054)
In this case it was documented.
Re:Homebrew 1.1.0 by jzamora on Monday November 07, 2016 @11:08AM (#12892110)
Yes, it should. But that scares people.
Re:Homebrew 1.1.0 by yes_or_gnome on Monday November 07, 2016 @11:13AM (#12892143)
Not really. Signatures should be SHA256 already, you shouldn't be running as root (which as always been frowned upon).
Re:Homebrew 1.1.0 by stephenr on Monday November 07, 2016 @11:26AM (#12892260)
> which as always been frowned upon

Only in the Homebrew backwards-day world is having globally installed software not owned by root "frowned upon".

Re:Homebrew 1.1.0 by matthewmacleod on Monday November 07, 2016 @11:38AM (#12892356)
Hmmm. The UNIX education that's been hammered into me since childhood has said "If you can do it as not-root, don't do it as root".
Re:Homebrew 1.1.0 by stephenr on Monday November 07, 2016 @11:45AM (#12892434)
What part of that UNIX education would cover putting user-owned binaries into /usr/local ?
Re:Homebrew 1.1.0 by dasil003 on Monday November 07, 2016 @11:53AM (#12892517)
Well at least it's in /usr/local/Homebrew now...
Re:Homebrew 1.1.0 by smackfu on Monday November 07, 2016 @06:14PM (#12896141)
Unfortunately most people now consider major versions to indicate major feature additions rather than breaking changes.
Re:Homebrew 1.1.0 by favadi on Monday November 07, 2016 @11:29AM (#12892284)
> Disable running Homebrew as the root user (e.g. sudo brew)

why? Just curious, because I always use macports with sudo.

Re:Homebrew 1.1.0 by mikemcquaid on Monday November 07, 2016 @12:06PM (#12892639)
We don't drop privileges when building (as we're not designed to run as root) and the macOS sandbox has issues with the root user so unfortunately you're giving every package you install root access to write to (almost) anywhere on your system. This is bad so we've stopped it.
Re:Homebrew 1.1.0 by Spivak on Monday November 07, 2016 @12:53PM (#12893146)
> We don't drop privileges when building

So why did you choose to disable running as root altogether rather than dropping privileges when building?

Re:Homebrew 1.1.0 by mikemcquaid on Monday November 07, 2016 @12:56PM (#12893168)
Using the root user like this is used by a tiny minority of our users. The deprecation notice noted we'd happily accept a PR that implemented the privilege dropping but one never came. In a world where Homebrew is run by a full-time, paid staff we'd likely have implemented it but there's too much other, more important stuff that needs done by our understaffed team.
Re:Homebrew 1.1.0 by hkmix on Monday November 07, 2016 @11:31AM (#12892313)
I assume it's because 1) it's not really needed, and 2) it prevents shady packages from executing scripts as root.
Re:Homebrew 1.1.0 by creshal on Monday November 07, 2016 @11:35AM (#12892339)
IIRC because it could cause problems with overwriting system libraries in earlier versions, so it has long been deprecated.