Hi Emily, On Thu, 12 Dec 2019, Emily Shaffer wrote: > diff --git a/Documentation/asciidoctor-extensions.rb b/Documentation/asciidoctor-extensions.rb > index d906a00803..750bdff9af 100644 > --- a/Documentation/asciidoctor-extensions.rb > +++ b/Documentation/asciidoctor-extensions.rb > @@ -37,6 +37,10 @@ module Git > output = output.sub(/<\/refmeta>/, new_tags + "</refmeta>") > end > output > + > + class BugReportProcessor < Asciidoctor::Extensions::InlineMacroProcessor > + def process(parent, action, attrs) > + "" The Azure Pipeline fails on this hunk, saying: /usr/bin/asciidoctor: /home/vsts/work/1/s/Documentation/asciidoctor-extensions.rb:41: class definition in method body (SyntaxError) /home/vsts/work/1/s/Documentation/asciidoctor-extensions.rb:55: syntax error, unexpected end-of-input, expecting keyword_end See https://dev.azure.com/gitgitgadget/git/_build/results?buildId=23830&view=logs&jobId=253e5128-1058-5bd4-fdf1-9b556d3207f8&j=253e5128-1058-5bd4-fdf1-9b556d3207f8&t=95c65aec-3627-54dc-fc17-47625f123bb3 for details. Ciao, Dscho > end > end > end > @@ -45,4 +49,7 @@ end > Asciidoctor::Extensions.register do > inline_macro Git::Documentation::LinkGitProcessor, :linkgit > postprocessor Git::Documentation::DocumentPostProcessor > + # The bugreport macro does nothing as far as rendering is > + # concerned -- we just grep for it in the sources. > + inline_macro Git::Documentation::BugReportProcessor, :bugreport > end > diff --git a/Documentation/config/sendemail.txt b/Documentation/config/sendemail.txt > index 0006faf800..92f5082013 100644 > --- a/Documentation/config/sendemail.txt > +++ b/Documentation/config/sendemail.txt > @@ -1,63 +1,63 @@ > -sendemail.identity:: > +sendemail.identity bugreport:exclude[x] :: > A configuration identity. When given, causes values in the > 'sendemail.<identity>' subsection to take precedence over > values in the 'sendemail' section. The default identity is > the value of `sendemail.identity`. > > -sendemail.smtpEncryption:: > +sendemail.smtpEncryption bugreport:include[x] :: > See linkgit:git-send-email[1] for description. Note that this > setting is not subject to the 'identity' mechanism. > > -sendemail.smtpssl (deprecated):: > +sendemail.smtpssl (deprecated) bugreport:exclude[x] :: > Deprecated alias for 'sendemail.smtpEncryption = ssl'. > > -sendemail.smtpsslcertpath:: > +sendemail.smtpsslcertpath bugreport:exclude[x] :: > Path to ca-certificates (either a directory or a single file). > Set it to an empty string to disable certificate verification. > > -sendemail.<identity>.*:: > +sendemail.<identity>.* bugreport:exclude[x] :: > Identity-specific versions of the 'sendemail.*' parameters > found below, taking precedence over those when this > identity is selected, through either the command-line or > `sendemail.identity`. > > -sendemail.aliasesFile:: > -sendemail.aliasFileType:: > -sendemail.annotate:: > -sendemail.bcc:: > -sendemail.cc:: > -sendemail.ccCmd:: > -sendemail.chainReplyTo:: > -sendemail.confirm:: > -sendemail.envelopeSender:: > -sendemail.from:: > -sendemail.multiEdit:: > -sendemail.signedoffbycc:: > -sendemail.smtpPass:: > -sendemail.suppresscc:: > -sendemail.suppressFrom:: > -sendemail.to:: > -sendemail.tocmd:: > -sendemail.smtpDomain:: > -sendemail.smtpServer:: > -sendemail.smtpServerPort:: > -sendemail.smtpServerOption:: > -sendemail.smtpUser:: > -sendemail.thread:: > -sendemail.transferEncoding:: > -sendemail.validate:: > -sendemail.xmailer:: > +sendemail.aliasesFile bugreport:exclude[x] :: > +sendemail.aliasFileType bugreport:exclude[x] :: > +sendemail.annotate bugreport:include[x] :: > +sendemail.bcc bugreport:include[x] :: > +sendemail.cc bugreport:include[x] :: > +sendemail.ccCmd bugreport:include[x] :: > +sendemail.chainReplyTo bugreport:include[x] :: > +sendemail.confirm bugreport:include[x] :: > +sendemail.envelopeSender bugreport:include[x] :: > +sendemail.from bugreport:include[x] :: > +sendemail.multiEdit bugreport:include[x] :: > +sendemail.signedoffbycc bugreport:include[x] :: > +sendemail.smtpPass bugreport:exclude[x] :: > +sendemail.suppresscc bugreport:include[x] :: > +sendemail.suppressFrom bugreport:include[x] :: > +sendemail.to bugreport:include[x] :: > +sendemail.tocmd bugreport:include[x] :: > +sendemail.smtpDomain bugreport:include[x] :: > +sendemail.smtpServer bugreport:include[x] :: > +sendemail.smtpServerPort bugreport:include[x] :: > +sendemail.smtpServerOption bugreport:include[x] :: > +sendemail.smtpUser bugreport:exclude[x] :: > +sendemail.thread bugreport:include[x] :: > +sendemail.transferEncoding bugreport:include[x] :: > +sendemail.validate bugreport:include[x] :: > +sendemail.xmailer bugreport:include[x] :: > See linkgit:git-send-email[1] for description. > > -sendemail.signedoffcc (deprecated):: > +sendemail.signedoffcc (deprecated) bugreport:exclude[x] :: > Deprecated alias for `sendemail.signedoffbycc`. > > -sendemail.smtpBatchSize:: > +sendemail.smtpBatchSize bugreport:include[x] :: > Number of messages to be sent per connection, after that a relogin > will happen. If the value is 0 or undefined, send all messages in > one connection. > See also the `--batch-size` option of linkgit:git-send-email[1]. > > -sendemail.smtpReloginDelay:: > +sendemail.smtpReloginDelay bugreport:include[x] :: > Seconds wait before reconnecting to smtp server. > See also the `--relogin-delay` option of linkgit:git-send-email[1]. > diff --git a/Makefile b/Makefile > index c49f55a521..76dc51e2b1 100644 > --- a/Makefile > +++ b/Makefile > @@ -651,7 +651,7 @@ install-perl-script: $(SCRIPT_PERL_GEN) > install-python-script: $(SCRIPT_PYTHON_GEN) > $(INSTALL) $^ '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' > > -.PHONY: clean-perl-script clean-sh-script clean-python-script > +.PHONY: clean-perl-script clean-sh-script clean-python-script clean-script-dependencies > clean-sh-script: > $(RM) $(SCRIPT_SH_GEN) > clean-perl-script: > @@ -817,6 +817,7 @@ VCSSVN_LIB = vcs-svn/lib.a > > GENERATED_H += config-list.h > GENERATED_H += command-list.h > +GENERATED_H += bugreport-config-safelist.h > > LIB_H := $(sort $(patsubst ./%,%,$(shell git ls-files '*.h' ':!t/' ':!Documentation/' 2>/dev/null || \ > $(FIND) . \ > @@ -2161,6 +2162,12 @@ command-list.h: $(wildcard Documentation/git*.txt) Documentation/*config.txt Doc > $(patsubst %,--exclude-program %,$(EXCLUDED_PROGRAMS)) \ > command-list.txt >$@+ && mv $@+ $@ > > +bugreport-config-safelist.h: generate-bugreport-config-safelist.sh > + > +bugreport-config-safelist.h: Documentation/config/*.txt > + $(QUIET_GEN)$(SHELL_PATH) ./generate-bugreport-config-safelist.sh \ > + >$@+ && mv $@+ $@ > + > SCRIPT_DEFINES = $(SHELL_PATH_SQ):$(DIFF_SQ):$(GIT_VERSION):\ > $(localedir_SQ):$(NO_CURL):$(USE_GETTEXT_SCHEME):$(SANE_TOOL_PATH_SQ):\ > $(gitwebdir_SQ):$(PERL_PATH_SQ):$(SANE_TEXT_GREP):$(PAGER_ENV):\ > @@ -2791,7 +2798,7 @@ $(SP_OBJ): %.sp: %.c GIT-CFLAGS FORCE > .PHONY: sparse $(SP_OBJ) > sparse: $(SP_OBJ) > > -GEN_HDRS := config-list.h command-list.h unicode-width.h > +GEN_HDRS := config-list.h command-list.h unicode-width.h bugreport-config-safelist.h > EXCEPT_HDRS := $(GEN_HDRS) compat/% xdiff/% > ifndef GCRYPT_SHA256 > EXCEPT_HDRS += sha256/gcrypt.h > @@ -3117,7 +3124,8 @@ clean: profile-clean coverage-clean cocciclean > $(RM) $(HCC) > $(RM) -r bin-wrappers $(dep_dirs) > $(RM) -r po/build/ > - $(RM) *.pyc *.pyo */*.pyc */*.pyo config-list.h command-list.h > + $(RM) *.pyc *.pyo */*.pyc */*.pyo > + $(RM) config-list.h command-list.h bugreport-config-safelist.h > $(RM) $(ETAGS_TARGET) tags cscope* > $(RM) -r $(GIT_TARNAME) .doc-tmp-dir > $(RM) $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz > diff --git a/generate-bugreport-config-safelist.sh b/generate-bugreport-config-safelist.sh > new file mode 100755 > index 0000000000..06b8e0c3c4 > --- /dev/null > +++ b/generate-bugreport-config-safelist.sh > @@ -0,0 +1,22 @@ > +#!/bin/sh > + > +cat <<EOF > +/* Automatically generated by bugreport-generate-config-safelist.sh */ > + > + > +static const char *bugreport_config_safelist[] = { > +EOF > + > +# cat all regular files in Documentation/config > +find Documentation/config -type f -exec cat {} \; | > +# print the command name which matches the bugreport-include macro > +sed -n 's/^\(.*\) \+bugreport:include.* ::$/\1/p' | > +sort | > +while read line > +do > + echo " \"$line\"," > +done > + > +cat <<EOF > +}; > +EOF > -- > 2.24.1.735.g03f4e72817-goog > > >