-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
bash is being build against system ncurses on mac limiting usage of newer terminfo #158667
Comments
You can make a pull request, but since homebrew prefers to build against system tools on macOS I don't think this will be favoured over the current approach. |
I understand the effort to keep the deps on system level. In this specific scenario the system ncurses is 20y old. Other shells like zsh or fish do have ncurses in deps. |
If we accepted it for zsh or fish, I would expect us to accept it for bash too. That would be more consistent. We have more than 80 formulae that |
I think we've recently been depending more on brew |
That said, I'm not necessarily opposed to doing the same for |
The other examples were more on the topic of overall consistency (brew vs system). For this, we either need to just accept the inconsistency or the only option is brew We would need to go farther back for examples with similar user count as
It sounds like |
Everything in macOS is "old". I'd love if we can avoid using dependencies universally like these unless we've verified the bug applies on the newest macOS with the system nurses there. |
Documentation of
So given the macOS ncurses library is older, I'm tempted to say it's not a bug, it's a lack of feature in the system. |
This feels like splitting hairs. I'm open to saying that it's a bug but one that's too costly to try to fix. What would make me say it's worth trying to fix would be:
|
What do we need to get this moving forward? This was a great discussion with interesting insights, but what is the conclusion? All in all I feel that:
Should we discuss this at the AGM in Brussels in 2 weeks? Or should this go to the TSC for a quick vote ASAP? |
Utilizing system |
The issue is a bug affecting a specific configuration which is a small proportion of people using the
The cost is adding an additional dependency to
I agree consistency is desirable and we should aim to document this consistency. That said, I still think it's worth considering "should we add this dependency" on a case-by-case basis.
As noted above: I don't think that's a slam-dunk answer; it is contextual depending on how many people benefit from the new functionality vs. face the costs of the additional dependency.
Neither: we can discuss this here. I am not blocking or strongly opposed to adding the dependency. I just ask that the above be considered here. Adding a new dependency is always "easy", but it also has costs.
I am assuming given the reporter is on |
Yes I'm on macOS 14.2.1 and it behaves the same on both archs. |
Looks like this got stuck as we could not reach a decision easily. What if we add the dependency, but add a comment in the formula linking to this issue, asking to consider reverting back to system ncurses once Apple has updated? At least we would keep track of why we added it. |
I am fine with adding the dependency 👍🏻 |
See Homebrew#158667 This is an EXCEPTION to our rules: do not take this as a sign to add brewed ncurses everywhere. We will drop brewed ncurses here once Apple has updated to a newer version
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. |
Closing: a decision has been reached, but the PR is stuck for now for technical reasons. We'll continue to work on it. |
no it doesn't but it is not related to the issue at all.
no, it wouldn't help at all.
brew config
brew doctor
Verification
brew doctor
output" saysYour system is ready to brew.
and am still able to reproduce my issue.brew update
and am still able to reproduce my issue.brew doctor
and that did not fix my problem.What were you trying to do (and why)?
I want truecolor support in my terminal, I'm using bash as my shell interpret and iTerm2 terminal emulator on macOS. To do so I've set
TERM=xterm-direct
, but since then the prompt wrapping is broken. I limited the issue to be within the shell, since it works fine on remote machines using the exact terminal emulator from my local. The issue is that homebrew bash is built against system ncurses, which is quite old and so is the terminfo database which lacks the xterm-direct record. As a test I've compiled bash from source against the homebrew ncurses and it works fine.More details
bash doesn't know how to handle xterm-direct TERM because ncurses supplied with macOS against which it is compiled are quite old and do not have xterm-direct in their terminfo.
brew bash
otool -L /usr/local/opt/bash/bin/bash
bash compiled from source against brew ncurses
otool -L /usr/local//bin/bash
What happened (include all command output)?
as described above, bash wraps prompt line pooly when TERM is set to
xterm-direct
and it's compiled against macOS supplied ncurses.What did you expect to happen?
I'd like bash formula to have the homebrew ncurses as an dependency, be compiled against it.
Step-by-step reproduction instructions (by running
brew
commands)The text was updated successfully, but these errors were encountered: