Skip to content
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

Some people think brew installation should give shellenv instructions, but it doesn't #14362

Closed
dabrahams opened this issue Jan 13, 2023 · 6 comments · Fixed by Homebrew/install#727
Labels
outdated PR was locked due to age

Comments

@dabrahams
Copy link

dabrahams commented Jan 13, 2023

There's an inconsistency between what some brew maintainers think the installer is supposed to do on completion and what it actually does on an intel mac. See (#14356) and following comments. If those maintainers are wrong, there's a problem with info installation as noted in that issue. If as I suspect they are right, the installer needs some ❤️

gromgit added a commit to gromgit/homebrew-install that referenced this issue Jan 13, 2023
Currently, Intel macOS installs almost certainly *don't* recommend
`brew shellenv`, because `/usr/local` is in `PATH` by default.

Since `brew shellenv` is designed to be idempotent, and it sets
environment variables like `INFOPATH` which can affect Homebrew
operations in unexpected ways (e.g. Homebrew/brew#14356 (comment)),
I think `brew shellenv` should *always* be recommended.

Closes Homebrew/brew#14362.
@MikeMcQuaid
Copy link
Member

@dabrahams Please don't open new issues when we've already closed them, thanks.

@MikeMcQuaid MikeMcQuaid closed this as not planned Won't fix, can't repro, duplicate, stale Jan 13, 2023
gromgit added a commit to gromgit/homebrew-install that referenced this issue Jan 13, 2023
Currently, Intel macOS installs almost certainly *don't* recommend
`brew shellenv`, because `/usr/local` is in `PATH` by default.

Since `brew shellenv` is designed to be idempotent, and it sets
environment variables like `INFOPATH` which can affect Homebrew
operations in unexpected ways (e.g. Homebrew/brew#14356 (comment)),
I think `brew shellenv` should *always* be recommended.

Closes Homebrew/brew#14362.

Also use `printf` to properly fix the "no trailing newline in profile" case.
@dabrahams
Copy link
Author

@MikeMcQuaid first its arguably a different issue, and second I feel super under appreciated here. Homebrew makes big reporting very difficult, and I put in hours of effort here to get you minimal reproducers for these problems, only to have them summarily closed. I'm not trying to be a nuisance, but to do the work to make the ecosystem better. Can't understand why you'd treat contributors this way

@MikeMcQuaid
Copy link
Member

@dabrahams I'm sorry you feel underappreciated, that was not my intention ❤️

I know you're trying to help but, to flip it around to our perspective: these cases look an awful lot like things that are specific to your particular setup and not typical to most of our users.

Also, hope this doesn't come across as mean: we don't consider opening issues to be a contribution. Ultimately any issue that is opened and needs code to fix it requires someone to write, test, review and merge that code.

@dabrahams
Copy link
Author

dabrahams commented Jan 13, 2023 via email

@MikeMcQuaid
Copy link
Member

How can these cases possibly look specific to my setup

Your setup does not have you running brew shellenv or setting INFOPATH but relying on INFOPATH being used correctly. Ok, this is not specific to only you but it is a niche problem that is not widely raised. We are a small team of volunteers and have to triage and prioritise problems that affect multiple people. If your issues had multiple others jumping in saying "me too!": they would be treated differently.

they don’t know how to fix it or because you treat them as nuisances rather than as contributors

We do not treat them as nuisances. There is a fine line between "support request" and "bug report" and our issue template is designed to balance that and direct more of the prior to Homebrew's discussions.

I’m not qualified to fix every problem I find, and brew itself, besides being written in a language I don’t know

I had never written any Ruby or used Git before I worked on Homebrew. I ended up writing some (poor) Ruby and now I write Ruby for a living. Everyone is different, sure, but: this is open source. If you really want your problems resolved, you are capable of learning what's required to do so. Many high school and college students with dramatically less experience than you are too.

seems to have a very particular culture that creates an extra learning curve for code contributors

Funnily enough: I've had literally hundreds of people say the opposite.

and will affect many more people than those whose reports you reject

I disagree and I've read a few Homebrew issues over the last 13 years working on it.

if you want to continue to improve your project

We are improving the project. Time spent resolving and discussing your INFOPATH issue is time not spent e.g. speeding up Homebrew's update and installation time for everyone. Maintainer time is finite and zero-sum. I'm sorry if it's frustrating to hear that the problems you have experienced are not deemed high enough priority to keep open. The best way to resolve this is, as above, to attempt to fix them yourself.

But, it’s your project, and (you’ve made this quite clear) not mine.

I'm not sure how I've made this quite clear other than to treat you the same as we treat everyone else.

But, yes, you'll notice that I don't make a habit of posting on other project's issue trackers telling their maintainers how they should be running their projects. Perhaps that's something you should consider too.

gromgit added a commit to gromgit/homebrew-install that referenced this issue Jan 14, 2023
Currently, Intel macOS installs almost certainly *don't* recommend
`brew shellenv`, because `/usr/local` is in `PATH` by default.

Since `brew shellenv` is designed to be idempotent, and it sets
environment variables like `INFOPATH` which can affect Homebrew
operations in unexpected ways (e.g. Homebrew/brew#14356 (comment)),
I think `brew shellenv` should *always* be recommended.

Closes Homebrew/brew#14362.

Also fix the "no trailing newline in profile" case by adding our own.
gromgit added a commit to gromgit/homebrew-install that referenced this issue Jan 16, 2023
Currently, Intel macOS installs almost certainly *don't* recommend
`brew shellenv`, because `/usr/local` is in `PATH` by default.

Since `brew shellenv` is designed to be idempotent, and it sets
environment variables like `INFOPATH` which can affect Homebrew
operations in unexpected ways (e.g. Homebrew/brew#14356 (comment)),
I think `brew shellenv` should *always* be recommended.

Closes Homebrew/brew#14362.

Also fix the "no trailing newline in profile" case by adding our own.
@Panajev
Copy link

Panajev commented Jan 28, 2023

@MikeMcQuaid given gromgit/homebrew-install@2430c22 is it possible that on Intel systems the instructions are not printed and thus the bug report is valid.

I personally think there a bit of talking over the reporter, but without malice. In short this Issue is not the same issue as the well documented but separate issue: the other was essentially about the effect this is more about the cause and they should be separate.

What I observed Dave doing (not that I am biased because of his Swift past, he likes C++ I mean eew ;) j/k):

Setting up a fresh VM on an Intel machine(macOS I assume), installing Brew itself with full detailed instructions, and printing the whole terminal logs...

Now, if the shellenv command suggestion is missing in those logs then we have a problem with brew. I assume a lot of macOS people have moved to Apple silicon and others got the warning in other places doing other things with brew or read it online or like me had it in their Starter setup scripts, etc...
In this case this issue is separate and I think well documented Issue reports should be welcomed. It seems some people, see gromgit/homebrew-install@2430c22, are trying to contribute change requests too.

@github-actions github-actions bot added the outdated PR was locked due to age label Mar 12, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 12, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
outdated PR was locked due to age
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants