From: Emily Shaffer <emilyshaffer@xxxxxxxxxx> This topic branch depends on the patch mailed in lore.kernel.org/git/20191211233820.185153-1-emilyshaffer@xxxxxxxxxx in order to display scopes for configs gathered during "bugreport: add config values from safelist". I'll summarize v4-v5. Since v4 has languished for some time, I don't think an interdiff is too helpful, so I won't include one. Bonus, the code is much simplified from some suggestions from Junio on how to inspect objects, so I hope it's easy to review anyways. Throughout, did some style changes away from C++ bad habits. Otherwise, as listed: Emily Shaffer (15): bugreport: add tool to generate debugging info (no change) help: move list_config_help to builtin/help Changed to agree with f3719846134 bugreport: gather git version and build info Style only help: add shell-path to --build-options (no change) bugreport: add uname info Removed nodename for privacy reasons bugreport: add compiler info Moved glibc tattling into compat/. I appreciate a close look at this one - I think I understood the right way to go about a compat/ util but it's the first one I've done. bugreport: add curl version Moved curl tattling from git-http-fetch into git-remote-curl bugreport: include user interactive shell Stop depending on a compiler quirk to save us from segfault bugreport: generate config safelist based on docs Changed to agree with f3719846134 Cleaned up script a little bugreport: add config values from safelist Made git-bugreport dependent on generated safelist header bugreport: collect list of populated hooks No change. Per https://lore.kernel.org/git/20191216235131.GL135450@xxxxxxxxxx, should we even keep this patch? bugreport: count loose objects Use helpers from object-store.h instead of manually walking the filesystem. bugreport: add packed object summary Use helpers from object-store.h instead of manually walking the filesystem. bugreport: list contents of $OBJDIR/info (no change) bugreport: summarize contents of alternates file Rephrase commit message to explain why I can't use the helpers in object-store.h. Thanks. - Emily .gitignore | 3 + Documentation/asciidoc.conf | 8 + Documentation/asciidoctor-extensions.rb | 7 + Documentation/config/sendemail.txt | 68 ++-- Documentation/git-bugreport.txt | 43 +++ Makefile | 25 +- bugreport.c | 427 ++++++++++++++++++++++++ builtin/help.c | 86 +++++ compat/compiler.h | 24 ++ generate-bugreport-config-safelist.sh | 22 ++ generate-cmdlist.sh | 19 -- generate-configlist.sh | 24 ++ help.c | 133 ++------ help.h | 2 +- remote-curl.c | 8 + t/t0091-bugreport.sh | 41 +++ 16 files changed, 780 insertions(+), 160 deletions(-) create mode 100644 Documentation/git-bugreport.txt create mode 100644 bugreport.c create mode 100644 compat/compiler.h create mode 100755 generate-bugreport-config-safelist.sh create mode 100755 generate-configlist.sh create mode 100755 t/t0091-bugreport.sh -- 2.25.0.341.g760bfbb309-goog