Re: [PATCH 5/7] builtin/bugreport.c: add '--no-report' option
From: Victoria Dye <hidden>
Date: 2022-08-02 19:46:35
Junio C Hamano wrote:
"Victoria Dye via GitGitGadget" [off-list ref] writes:quoted
From: Victoria Dye <redacted> Add a '--no-report' option to 'git bugreport' to avoid writing the 'git-bugreport-<suffix>.txt' file. This gives users the option of creating only the diagnostic archive with '--diagnose' and mirroring the behavior of the original 'scalar diagnose' as closely as possible. If a user specifies '--no-report' *without* also specifying '--diagnose', the 'git bugreport' operation is a no-op; a warning message is printed and the command returns with a non-error exit code.I think this makes sense from scalar side, and I have no objection against this "--no-report" feature existing, but I wonder if those who want to send report may want to have a handy way to tell the command to "include" the diag archive in their report (instead of creating separate report and diagnose files, having to attach two files to their message). Perhaps that is unneeded, or perhaps that comes in later patches in the series, I dunno.
I tried finding where in the documentation there are instructions on sending a bug report to the mailing list, but didn't see anything (otherwise, I'd add some info on '--diagnose' there). Maybe Emily would know? If instructions like that don't exist, I'll update the command documentation here to clarify that '--diagnose' generates an attachment that includes more complete repository information to aid in debugging.
quoted
+--no-report:: + Do not write out a 'git-bugreport-<suffix>.txt' file. This option is + intended for use with `--diagnose` when only the diagnostic archive is + needed. If `--no-report` is used without `--diagnose`, `git bugreport` + is a no-op.I wonder if thinking it this way may make the UI simpler to explain. The "git bugreport" is capable of showing report and diagnose with these two orthogonal options, i.e. --report:: writes bugreport file --diagnose:: writes diagnostic archive And for backward compatibility reasons, the command pretends as if you gave it "--report" when you run it without either. That way, "bugreport --diagnose" will just show diagnostic archive without having to pass "--no-report". There is no need for "nothing to do", either.
I like the simplicity of this, but I'd imagine that a user would want to generate diagnostics *with* a report more often than without one. The cases I can think of for "standalone diagnostics" are: internally in 'scalar diagnose', someone requesting more info after an initial bug report, or a user looking into something on their own. Maybe I could replace '--no-report' with '--diagnostics-only'? Then the three modes of use would be: - 'git bugreport': report only (most common usage) - 'git bugreport --diagnose': report + diagnostics - 'git bugreport --diagnostics-only': diagnostics only (least common usage) It would eliminate the need for "nothing to do" while making it (I think?) clearer to a user why you would want to use any of these options.