Add status buildinfo#10896
Conversation
|
fyi I previously added separate status modes +1 from me :) |
I'm aware, I understood the issue to be that you added an undocumented command to provide this information for use in one insignificant test. I want to have it as a proper thing. Documented and meant to be used. The impetus here is that I'm expecting some amount of confusion about whether to build with cargo or cmake. And so I would at least want to have an easy way to figure that out. |
|
Suggestion: I would add at least |
crt-static: Sure, why not pcre2-static: I don't know how to do that. It's not a feature of the fish crate, it's one of the pcre2-sys crate that's decided when that is compiled. I also don't think it's going to help because I don't think it's a source of problems. |
46b8a55 to
fca249d
Compare
This can be used to get some information on how fish was built - the version, the build system, the operating system and architecture, the features.
Needed to infer the type if none is used
This may not be 100% enough - it's theoretically possible to cross-compile and get different Target/Host lines
|
Okay, I'd like to get this one in for 4.0, because it'll be useful in case someone e.g. manages to accidentally build as self-installable. |
|
Cherry-picked to 4.0 as 5f76fc3 |
This can be used to get some information on how fish was built - the version, the build system, the operating system and architecture, the features.
The idea is that we can tell people to run
status buildinfo | fish_clipboard_copyand copy it into bug reports.Example output:
This seems like it might be useful especially since we have multiple build systems and the potential for cross-compilation now.
The exact set of things to print isn't set in stone, of course, this was just what I came up with.
An alternative is to make a
status debuginfocommand that is a bit broader in scope, and also prints e.g. terminal or locale information, possibly even the operating system.Importantly, this should not collect information like the time it was compiled to not break build reproducability, nor should it (for obvious reasons) collect personal information.
TODOs: