Re: [PATCH 5/7] builtin/bugreport.c: add '--no-report' option
- From
Victoria Dye <vdye@github.com>
- Date
- Aug 2, 2022, 19:46 UTC
- Message-ID
- <f3235afe-25cc-21a4-fc35-56e35d6be0ce@github.com>
- In-Reply-To
- <xmqqbkt3mw8w.fsf@gitster.g>
Junio C Hamano wrote:
Show 21 quoted lines
> "Victoria Dye via GitGitGadget" <gitgitgadget@gmail.com> writes: > >> From: Victoria Dye <vdye@github.com> >> >> 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.
Show 21 quoted lines
>> +--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.