All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>, "Jeff King" <peff@peff.net>,
	"brian m . carlson" <sandals@crustytoothpaste.net>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
	"SZEDER Gábor" <szeder.dev@gmail.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Subject: [PATCH v5 00/23] make "mktag" use fsck_tag() & more
Date: Tue,  5 Jan 2021 20:42:29 +0100	[thread overview]
Message-ID: <20210105194252.627-1-avarab@gmail.com> (raw)
In-Reply-To: <20201223013606.7972-1-avarab@gmail.com>

A late re-roll due to the holidays. Thanks all for the feedback on v4,
this should address all of it.

Brief comments on each patch below, and then the range-diff.

Ævar Arnfjörð Bjarmason (23):
  mktag doc: say <hash> not <sha1>
  mktag doc: grammar fix, when exists -> when it exists

No changes.

  mktag doc: update to explain why to use this

Got rid of the cross-linking of mktag and hash-object manpages as
suggested by Junio.

  mktag tests: don't needlessly use a subshell

no changes.

  mktag tests: use "test_commit" helper

NEW: Another trivial mktag test cleanup, make it use test_commit
instead of 3 boilerplate lines in its test. Made a later change
smaller.

  mktag tests: remove needless SHA-1 hardcoding

no changes.

  mktag tests: don't redirect stderr to a file needlessly

Reworded the commit message, and fixed another copy/pasted mktag test
(in the git-replace test file) that used the same pattern.

  mktag tests: don't create "mytag" twice

The commit message notes that testing the tag at the end is pointless,
but now later we'll do something with it...

  mktag tests: run "fsck" after creating "mytag"

...i.e. run fsck to (potentially in the future) check the envelope
v.s. refname.

  mktag tests: stress test whitespace handling

Reworded commit message & test descriptions to make more sense, got
rid of the one $space test, which didn't really add anything.

  mktag tests: test "hash-object" compatibility

Gets rid of the "create tag refname" special case at the end of the
tests by now doing it for every successful tag creation.

  mktag tests: improve verify_object() test coverage

Commit message update, notes that we don't do "git replace" tests.

  mktag tests: test verify_object() with replaced objects

NEW: test mktag with git-replace'd objects.

  mktag: use default strbuf_read() hint
  mktag: remove redundant braces in one-line body "if"
  mktag: use puts(str) instead of printf("%s\n", str)

no changes.

  mktag: use fsck instead of custom verify_tag()

only carried-forward changes from rebasing on the changes above.

  fsck: make fsck_config() re-usable
  mktag: allow turning off fsck.extraHeaderEntry

no changes.

  mktag: allow omitting the header/body \n separator
  mktag: convert to parse-options

ditto carried-forward changes.

  mktag: mark strings for translation
  mktag: add a --no-strict option

Use the more normal OPT_BOOL pattern, and fix a stupid error in
GIT_TEST_GETTEXT_POISON=true testing that broke the CI.

 Documentation/git-mktag.txt |  39 +++++-
 builtin/fsck.c              |  20 +--
 builtin/mktag.c             | 235 +++++++++++++----------------------
 fsck.c                      |  59 ++++++++-
 fsck.h                      |  16 +++
 t/t1006-cat-file.sh         |   2 +-
 t/t3800-mktag.sh            | 236 ++++++++++++++++++++++++++++--------
 t/t6050-replace.sh          |   2 +-
 8 files changed, 375 insertions(+), 234 deletions(-)

Range-diff:
 1:  a31c305cfc6 =  1:  74b035fb842 mktag doc: say <hash> not <sha1>
 2:  81cb4cba5c0 =  2:  202bd33533f mktag doc: grammar fix, when exists -> when it exists
 3:  b4bc6f894cb !  3:  d1f650b6c4c mktag doc: update to explain why to use this
    @@ Commit message
     
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
    - ## Documentation/git-hash-object.txt ##
    -@@ Documentation/git-hash-object.txt: OPTIONS
    - 	stress-testing Git itself or reproducing characteristics of corrupt or
    - 	bogus objects encountered in the wild.
    - 
    -+SEE ALSO
    -+--------
    -+linkgit:git-mktag[1]
    -+
    - GIT
    - ---
    - Part of the linkgit:git[1] suite
    -
      ## Documentation/git-mktag.txt ##
     @@ Documentation/git-mktag.txt: git-mktag(1)
      
    @@ Documentation/git-mktag.txt: SYNOPSIS
      
      Tag Format
      ----------
    -@@ Documentation/git-mktag.txt: exists, is separated by a blank line from the header.  The
    - message part may contain a signature that Git itself doesn't
    - care about, but that can be verified with gpg.
    - 
    -+SEE ALSO
    -+--------
    -+linkgit:git-hash-object[1],
    -+
    - GIT
    - ---
    - Part of the linkgit:git[1] suite
 4:  acb94e02895 =  4:  64432d22952 mktag tests: don't needlessly use a subshell
 -:  ----------- >  5:  57c7bdde80b mktag tests: use "test_commit" helper
 5:  4ae76ec5e3f =  6:  ba581a99c89 mktag tests: remove needless SHA-1 hardcoding
 7:  b81d31a917c !  7:  974d1b9c6ec mktag tests: don't pipe to stderr needlessly
    @@ Metadata
     Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## Commit message ##
    -    mktag tests: don't pipe to stderr needlessly
    +    mktag tests: don't redirect stderr to a file needlessly
     
    -    Remove the piping of stderr to "message" in the valid tag test. This
    -    pattern seems to have been copy/pasted from the failure case in
    -    446c6faec6 (New tests and en-passant modifications to mktag.,
    +    Remove the redirection of stderr to "message" in the valid tag
    +    test. This pattern seems to have been copy/pasted from the failure
    +    case in 446c6faec6 (New tests and en-passant modifications to mktag.,
         2006-07-29).
     
    -    Nothing is piped to "message" here, and in the event of the test
    -    failing it only serves to hide the error.
    +    While I'm at it do the same for the "replace" tests. The tag creation
    +    I'm changing here seems to have been copy/pasted from the "mktag"
    +    tests to those tests in cc400f50112 (mktag: call
    +    "check_sha1_signature" with the replacement sha1, 2009-01-23).
    +
    +    Nobody examines the contents of the resulting "message" file, so the
    +    net result is that error messages cannot be seen in "sh t3800-mktag.sh
    +    -v" output.
     
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
    @@ t/t3800-mktag.sh: EOF
      
      ############################################################
      # 25. check mytag
    +
    + ## t/t6050-replace.sh ##
    +@@ t/t6050-replace.sh: tagger T A Gger <> 0 +0000
    + EOF
    + 
    + test_expect_success 'tag replaced commit' '
    +-     git mktag <tag.sig >.git/refs/tags/mytag 2>message
    ++     git mktag <tag.sig >.git/refs/tags/mytag
    + '
    + 
    + test_expect_success '"git fsck" works' '
 8:  11f59718b4b !  8:  73d82dbca24 mktag tests: don't create "mytag" twice
    @@ Commit message
         it. Let's do this by moving the test to use "update-ref", instead of
         our own homebrew ad-hoc refstore update.
     
    +    We're not really testing for anything yet by creating the tag at the
    +    end here. A subsequent commit will change that.
    +
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## t/t3800-mktag.sh ##
 -:  ----------- >  9:  0aa8190f404 mktag tests: run "fsck" after creating "mytag"
 9:  dd6b012b0c6 ! 10:  078e73c4221 mktag tests: stress test whitespace handling
    @@ Metadata
      ## Commit message ##
         mktag tests: stress test whitespace handling
     
    -    Add tests for various whitespace edge cases around the header/body
    -    boundary, such as two newlines separating the header and body, a space
    -    at the end of the "tagger" line before the header etc.
    +    Add tests for a couple of whitespace edge cases around the header/body
    +    boundary.
     
    -    Add a test showing that we insist that an empty body must be preceded
    -    by an empty line. This test for a long-standing regression which goes
    -    against the command's documented behavior. It'll be addressed in a
    -    follow-up change.
    +    I consider the requirement for a blank line before the empty body a
    +    bug, it's a long-standing regression which goes against the command's
    +    documented behavior. This bug will be addressed in a follow-up change.
     
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
    @@ t/t3800-mktag.sh: EOF
     +
     +EOF
     +
    -+test_expect_success 'allow extra newlines at end of headers' '
    ++test_expect_success 'require a blank line before an empty body (1)' '
     +	git mktag <tag.sig
     +'
     +
    -+space=' '
    -+cat >tag.sig <<EOF
    -+object $head
    -+type commit
    -+tag mytag
    -+tagger T A Gger <tagger@example.com> 1206478233 -0500$space
    -+
    -+EOF
    -+
    -+check_verify_failure 'extra whitespace at end of headers' \
    -+	'^error: char.*: malformed tag timezone$'
    -+
     +cat >tag.sig <<EOF
     +object $head
     +type commit
    @@ t/t3800-mktag.sh: EOF
     +tagger T A Gger <tagger@example.com> 1206478233 -0500
     +EOF
     +
    -+check_verify_failure 'disallow no header / body newline separator' \
    ++check_verify_failure 'require a blank line before an empty body (2)' \
     +	'^error: char.*: trailing garbage in tag header$'
     +
      ############################################################
10:  56c6b562fd5 ! 11:  83d7ca86b8f mktag tests: test "hash-object" compatibility
    @@ Commit message
         This tests e.g. that "mktag" doesn't trim its input or otherwise munge
         it in a way that "hash-object" doesn't.
     
    +    Since we're doing an "fsck --strict" here at the end let's incorporate
    +    the creation of the "mytag" name into this test, removing the
    +    special-case at the end of the file.
    +
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## t/t3800-mktag.sh ##
    @@ t/t3800-mktag.sh: check_verify_failure () {
     +	test_expect_success "$1" '
     +		git hash-object -t tag -w --stdin <tag.sig >expected &&
     +		git fsck --strict &&
    ++
     +		git mktag <tag.sig >hash &&
    -+		git fsck --strict &&
    -+		test_cmp expected hash
    ++		test_cmp expected hash &&
    ++		test_when_finished "git update-ref -d refs/tags/mytag $(cat hash)" &&
    ++		git update-ref refs/tags/mytag $(cat hash) $(test_oid zero) &&
    ++		git fsck --strict	
     +	'
     +}
     +
    @@ t/t3800-mktag.sh: tagger T A Gger <tagger@example.com> 1206478233 -0500
      
      EOF
      
    --test_expect_success 'allow extra newlines at end of headers' '
    +-test_expect_success 'require a blank line before an empty body (1)' '
     -	git mktag <tag.sig
     -'
    -+test_expect_mktag_success 'allow extra newlines at end of headers'
    ++test_expect_mktag_success 'require a blank line before an empty body (1)'
      
    - space=' '
      cat >tag.sig <<EOF
    + object $head
     @@ t/t3800-mktag.sh: tagger T A Gger <tagger@example.com> 1206478233 -0500
      
      EOF
      
     -test_expect_success 'create valid tag' '
     -	git mktag <tag.sig >hash &&
    +-	git update-ref refs/tags/mytag $(cat hash) $(test_oid zero) &&
    +-	git fsck --strict
    +-'
     +test_expect_mktag_success 'create valid tag object'
    -+test_expect_success 'create valid tag name' '
    - 	git update-ref refs/tags/mytag $(cat hash) $(test_oid zero)
    - '
      
    + test_done
 6:  9effb4532bc ! 12:  6cbf9176c35 mktag tests: improve verify_object() test coverage
    @@ Commit message
         Let's split these tests up, so we're testing all combinations of a
         non-existing object and in invalid/wrong "type" lines.
     
    +    We need to provide GIT_TEST_GETTEXT_POISON=false here because the
    +    "invalid object type" error is emitted by
    +    parse_loose_header_extended(), which has that message already marked
    +    for translation. Another option would be to use test_i18ngrep, but I
    +    prefer always running the test, not skipping it under gettext poison
    +    testing.
    +
    +    I'm not testing this in combination with "git replace". That'll be
    +    done in a subsequent commit.
    +
         Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
     
      ## t/t3800-mktag.sh ##
    +@@ t/t3800-mktag.sh: test_description='git mktag: tag object verify test'
    + check_verify_failure () {
    + 	expect="$2"
    + 	test_expect_success "$1" '
    +-		test_must_fail git mktag <tag.sig 2>message &&
    ++		test_must_fail env GIT_TEST_GETTEXT_POISON=false \
    ++			git mktag <tag.sig 2>message &&
    + 		grep "$expect" message
    + 	'
    + }
     @@ t/t3800-mktag.sh: check_verify_failure '"type" line type-name length check' \
      	'^error: char.*: type too long$'
      
    @@ t/t3800-mktag.sh: check_verify_failure '"type" line type-name length check' \
      EOF
      
     -check_verify_failure 'verify object (SHA1/type) check' \
    -+check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \
    ++check_verify_failure 'verify object (hash/type) check -- made-up type, valid object' \
     +	'^fatal: invalid object type'
     +
     +cat >tag.sig <<EOF
    @@ t/t3800-mktag.sh: check_verify_failure '"type" line type-name length check' \
     +
     +EOF
     +
    -+check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \
    ++check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \
      	'^error: char7: could not verify object.*$'
      
     +cat >tag.sig <<EOF
    @@ t/t3800-mktag.sh: check_verify_failure '"type" line type-name length check' \
     +
     +EOF
     +
    -+check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \
    ++check_verify_failure 'verify object (hash/type) check -- mismatched type, valid object' \
     +	'^error: char7: could not verify object'
     +
      ############################################################
 -:  ----------- > 13:  ca1567866b0 mktag tests: test verify_object() with replaced objects
11:  1e2e4ec2697 = 14:  ac31d8658f3 mktag: use default strbuf_read() hint
12:  be2ab3edab0 = 15:  e32292af8b4 mktag: remove redundant braces in one-line body "if"
13:  d8514df970c = 16:  405fd2c747d mktag: use puts(str) instead of printf("%s\n", str)
14:  346d73cc972 ! 17:  6edaa992a25 mktag: use fsck instead of custom verify_tag()
    @@ t/t3800-mktag.sh: tagger . <> 0 +0000
     @@ t/t3800-mktag.sh: tagger . <> 0 +0000
      EOF
      
    - check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \
    + check_verify_failure 'verify object (hash/type) check -- made-up type, valid object' \
     -	'^fatal: invalid object type'
     +	'^error:.* badType:'
      
    @@ t/t3800-mktag.sh: tagger . <> 0 +0000
     @@ t/t3800-mktag.sh: tagger . <> 0 +0000
      EOF
      
    - check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \
    + check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \
     -	'^error: char7: could not verify object.*$'
     +	'^error:.* badType:'
      
    @@ t/t3800-mktag.sh: tagger . <> 0 +0000
     @@ t/t3800-mktag.sh: tagger . <> 0 +0000
      EOF
      
    - check_verify_failure 'verify object (hash/type) check -- incorrect type, valid object' \
    + check_verify_failure 'verify object (hash/type) check -- mismatched type, valid object' \
     -	'^error: char7: could not verify object'
     +	'^fatal: object.*tagged as.*tree.*but is.*commit'
      
    + ############################################################
    + #  9.5. verify object (hash/type) check -- replacement
    +@@ t/t3800-mktag.sh: tagger . <> 0 +0000
    + EOF
    + 
    + check_verify_failure 'verify object (hash/type) check -- mismatched type, valid object' \
    +-	'^error: char7: could not verify object'
    ++	'^fatal: object.*tagged as.*tree.*but is.*blob'
    + 
      ############################################################
      # 10. verify tag-name check
     @@ t/t3800-mktag.sh: tagger . <> 0 +0000
    @@ t/t3800-mktag.sh: this line should not be here
     -	'^error: char.*: trailing garbage in tag header$'
     +	'^error:.* extraHeaderEntry:'
      
    - cat >tag.sig <<EOF
    - object $head
    -@@ t/t3800-mktag.sh: tagger T A Gger <tagger@example.com> 1206478233 -0500$space
    - EOF
    - 
    - check_verify_failure 'extra whitespace at end of headers' \
    --	'^error: char.*: malformed tag timezone$'
    -+	'^error:.* badTimezone:'
    - 
      cat >tag.sig <<EOF
      object $head
     @@ t/t3800-mktag.sh: tagger T A Gger <tagger@example.com> 1206478233 -0500
      EOF
      
    - check_verify_failure 'disallow no header / body newline separator' \
    + check_verify_failure 'require a blank line before an empty body (2)' \
     -	'^error: char.*: trailing garbage in tag header$'
     +	'^error:.* extraHeaderEntry:'
      
15:  0e7994d8fc3 = 18:  4c3fbb7ed58 fsck: make fsck_config() re-usable
16:  5e8046022b6 = 19:  32fc2264ec1 mktag: allow turning off fsck.extraHeaderEntry
17:  32698e1d005 ! 20:  32922a42dda mktag: allow omitting the header/body \n separator
    @@ fsck.c: int fsck_tag_standalone(const struct object_id *oid, const char *buffer,
      		/*
     
      ## t/t3800-mktag.sh ##
    +@@ t/t3800-mktag.sh: tagger T A Gger <tagger@example.com> 1206478233 -0500
    + 
    + EOF
    + 
    +-test_expect_mktag_success 'require a blank line before an empty body (1)'
    ++test_expect_mktag_success 'allow a blank line before an empty body (1)'
    + 
    + cat >tag.sig <<EOF
    + object $head
     @@ t/t3800-mktag.sh: tag mytag
      tagger T A Gger <tagger@example.com> 1206478233 -0500
      EOF
      
    --check_verify_failure 'disallow no header / body newline separator' \
    +-check_verify_failure 'require a blank line before an empty body (2)' \
     -	'^error:.* extraHeaderEntry:'
    -+test_expect_success 'allow no header / body newline separator' '
    -+	git mktag <tag.sig
    -+'
    ++test_expect_mktag_success 'allow no blank line before an empty body (2)'
      
      ############################################################
      # 24. create valid tag
18:  b6a22f2f992 ! 21:  3c991dda02b mktag: convert to parse-options
    @@ builtin/mktag.c: static int verify_object_in_tag(struct object_id *tagged_oid, i
     
      ## t/t3800-mktag.sh ##
     @@ t/t3800-mktag.sh: test_expect_success 'setup' '
    - 	head=$(git rev-parse --verify HEAD)
    + 	blob=$(git rev-parse --verify HEAD:B.t)
      '
      
     +test_expect_success 'basic usage' '
19:  7fc0b81df7d ! 22:  16db5858a08 mktag: mark strings for translation
    @@ builtin/mktag.c: int cmd_mktag(int argc, const char **argv, const char *prefix)
      
      	strbuf_release(&buf);
      	puts(oid_to_hex(&result));
    -
    - ## t/t3800-mktag.sh ##
    -@@ t/t3800-mktag.sh: test_description='git mktag: tag object verify test'
    - check_verify_failure () {
    - 	expect="$2"
    - 	test_expect_success "$1" '
    --		test_must_fail git mktag <tag.sig 2>message &&
    -+		test_must_fail env GIT_TEST_GETTEXT_POISON=false \
    -+			git mktag <tag.sig 2>message &&
    - 		grep "$expect" message
    - 	'
    - }
20:  6fa443d528c ! 23:  94d6aca6962 mktag: add a --no-strict option
    @@ Documentation/git-mktag.txt: SYNOPSIS
     +OPTIONS
     +-------
     +
    -+--no-strict::
    ++--strict::
     +	By default mktag turns on the equivalent of
    -+	linkgit:git-fsck[1] `--strict` mode. This disables it.
    ++	linkgit:git-fsck[1] `--strict` mode. Use `--no-strict` to
    ++	disable it.
     +
      DESCRIPTION
      -----------
    @@ builtin/mktag.c: static char const * const builtin_mktag_usage[] = {
      	N_("git mktag"),
      	NULL
      };
    -+static int option_no_strict;
    ++static int option_strict = 1;
      
      static struct fsck_options fsck_options = FSCK_OPTIONS_STRICT;
      
    @@ builtin/mktag.c: static int mktag_fsck_error_func(struct fsck_options *o,
      {
      	switch (msg_type) {
      	case FSCK_WARN:
    -+		if (option_no_strict) {
    ++		if (!option_strict) {
     +			fprintf_ln(stderr, _("warning: tag input does not pass fsck: %s"), message);
     +			return 0;
     +
    @@ builtin/mktag.c: static int verify_object_in_tag(struct object_id *tagged_oid, i
      int cmd_mktag(int argc, const char **argv, const char *prefix)
      {
      	static struct option builtin_mktag_options[] = {
    -+		OPT_NO_BOOL(0, "no-strict", &option_no_strict,
    -+			    N_("don't do strict fsck checks")),
    ++		OPT_BOOL(0, "strict", &option_strict,
    ++			 N_("enable more strict checking")),
      		OPT_END(),
      	};
      	struct strbuf buf = STRBUF_INIT;
     
    - ## parse-options.h ##
    -@@ parse-options.h: struct option {
    - #define OPT_COUNTUP(s, l, v, h)     OPT_COUNTUP_F(s, l, v, h, 0)
    - #define OPT_SET_INT(s, l, v, h, i)  OPT_SET_INT_F(s, l, v, h, i, 0)
    - #define OPT_BOOL(s, l, v, h)        OPT_BOOL_F(s, l, v, h, 0)
    -+#define OPT_NO_BOOL(s, l, v, h)     OPT_BOOL_F(s, l, v, h, PARSE_OPT_NONEG)
    - #define OPT_HIDDEN_BOOL(s, l, v, h) { OPTION_SET_INT, (s), (l), (v), NULL, \
    - 				      (h), PARSE_OPT_NOARG | PARSE_OPT_HIDDEN, NULL, 1}
    - #define OPT_CMDMODE(s, l, v, h, i)  { OPTION_SET_INT, (s), (l), (v), NULL, \
    -
      ## t/t3800-mktag.sh ##
     @@ t/t3800-mktag.sh: test_description='git mktag: tag object verify test'
      # given in the expect.pat file.
    @@ t/t3800-mktag.sh: test_description='git mktag: tag object verify test'
     +		grep '$2' message &&
     +		if test '$3' != '--no-strict'
     +		then
    -+			test_must_fail git mktag --no-strict <tag.sig 2>message.no-strict &&
    ++			test_must_fail env GIT_TEST_GETTEXT_POISON=false \
    ++				git mktag --no-strict <tag.sig 2>message.no-strict &&
     +			grep '$2' message.no-strict
     +		fi
     +	"
      }
      
      test_expect_mktag_success() {
    -@@ t/t3800-mktag.sh: test_expect_success 'basic usage' '
    - 	EOF
    - 	git mktag <tag.sig &&
    - 	git mktag --end-of-options <tag.sig &&
    --	test_expect_code 129 git mktag --unknown-option
    -+	test_expect_code 129 git mktag --unknown-option &&
    -+	test_expect_code 129 git mktag --strict
    - '
    - 
    - ############################################################
     @@ t/t3800-mktag.sh: too short for a tag
      EOF
      
-- 
2.29.2.222.g5d2a92d10f8


  parent reply	other threads:[~2021-01-05 19:44 UTC|newest]

Thread overview: 229+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-18 19:16 [PATCH 00/14] Hash-independent tests, part 5 brian m. carlson
2019-08-18 19:16 ` [PATCH 01/14] t3201: abstract away SHA-1-specific constants brian m. carlson
2019-08-18 19:16 ` [PATCH 02/14] t3206: abstract away hash size constants brian m. carlson
2019-08-18 19:16 ` [PATCH 03/14] t3301: abstract away SHA-1-specific constants brian m. carlson
2019-08-18 19:16 ` [PATCH 04/14] t3305: make hash size independent brian m. carlson
2019-08-18 19:16 ` [PATCH 05/14] t3306: abstract away SHA-1-specific constants brian m. carlson
2019-08-18 19:16 ` [PATCH 06/14] t3404: " brian m. carlson
2019-08-18 19:16 ` [PATCH 07/14] t3430: avoid hard-coded object IDs brian m. carlson
2019-08-18 19:16 ` [PATCH 08/14] t3506: make hash independent brian m. carlson
2019-08-18 19:16 ` [PATCH 09/14] t3600: make hash size independent brian m. carlson
2019-08-18 19:16 ` [PATCH 10/14] t3800: make hash-size independent brian m. carlson
2019-08-18 19:16 ` [PATCH 11/14] t3903: abstract away SHA-1-specific constants brian m. carlson
2019-08-18 20:27   ` Eric Sunshine
2019-08-18 20:34     ` brian m. carlson
2019-08-18 19:16 ` [PATCH 12/14] t4000: make hash size independent brian m. carlson
2019-08-18 19:16 ` [PATCH 13/14] t4002: make hash independent brian m. carlson
2019-08-18 20:29   ` Eric Sunshine
2019-08-18 19:16 ` [PATCH 14/14] t4009: make hash size independent brian m. carlson
2019-08-26  1:43 ` [PATCH v2 00/14] Hash-independent tests, part 5 brian m. carlson
2019-08-26  1:43   ` [PATCH v2 01/14] t3201: abstract away SHA-1-specific constants brian m. carlson
2019-08-26  1:43   ` [PATCH v2 02/14] t3206: abstract away hash size constants brian m. carlson
2019-08-26  1:43   ` [PATCH v2 03/14] t3301: abstract away SHA-1-specific constants brian m. carlson
2019-08-26  1:43   ` [PATCH v2 04/14] t3305: make hash size independent brian m. carlson
2019-08-26  1:43   ` [PATCH v2 05/14] t3306: abstract away SHA-1-specific constants brian m. carlson
2019-08-26  1:43   ` [PATCH v2 06/14] t3404: " brian m. carlson
2019-08-26  1:43   ` [PATCH v2 07/14] t3430: avoid hard-coded object IDs brian m. carlson
2019-08-26  1:43   ` [PATCH v2 08/14] t3506: make hash independent brian m. carlson
2019-08-26  1:43   ` [PATCH v2 09/14] t3600: make hash size independent brian m. carlson
2019-08-26  1:43   ` [PATCH v2 10/14] t3800: make hash-size independent brian m. carlson
2020-11-23 12:01     ` [PATCH] mktag: don't check SHA-1 object length under SHA-256 Ævar Arnfjörð Bjarmason
2020-11-23 19:01       ` Junio C Hamano
2020-11-23 21:36         ` Jeff King
2020-11-23 22:17           ` Junio C Hamano
2020-11-24  0:47             ` Jeff King
2020-11-23 21:34       ` Jeff King
2020-11-24  1:07         ` brian m. carlson
2020-11-26  1:28         ` [RFC/PATCH 00/12] make "mktag" use fsck_tag() Ævar Arnfjörð Bjarmason
2020-11-26 22:22           ` [PATCH v2 00/10] " Ævar Arnfjörð Bjarmason
2020-12-01 10:08             ` Ævar Arnfjörð Bjarmason
2020-12-01 20:01               ` Junio C Hamano
2020-12-02 22:20                 ` Junio C Hamano
2020-12-03 16:38                   ` Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 " Ævar Arnfjörð Bjarmason
2020-12-09 22:30               ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 00/20] make "mktag" use fsck_tag() & more Ævar Arnfjörð Bjarmason
2020-12-23 13:54                 ` Junio C Hamano
2020-12-24  9:16                   ` Junio C Hamano
2021-01-05 19:42                 ` Ævar Arnfjörð Bjarmason [this message]
2021-01-05 19:42                 ` [PATCH v5 01/23] mktag doc: say <hash> not <sha1> Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 02/23] mktag doc: grammar fix, when exists -> when it exists Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 03/23] mktag doc: update to explain why to use this Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 04/23] mktag tests: don't needlessly use a subshell Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 05/23] mktag tests: use "test_commit" helper Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 06/23] mktag tests: remove needless SHA-1 hardcoding Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 07/23] mktag tests: don't redirect stderr to a file needlessly Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 08/23] mktag tests: don't create "mytag" twice Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 09/23] mktag tests: run "fsck" after creating "mytag" Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 10/23] mktag tests: stress test whitespace handling Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 11/23] mktag tests: test "hash-object" compatibility Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 12/23] mktag tests: improve verify_object() test coverage Ævar Arnfjörð Bjarmason
2021-01-10 13:21                   ` SZEDER Gábor
2021-01-10 18:59                     ` Should you use test_i18ngrep or GIT_TEST_GETTEXT_POISON=false? Ævar Arnfjörð Bjarmason
2021-01-10 20:12                       ` Junio C Hamano
2021-01-11  8:43                         ` Ævar Arnfjörð Bjarmason
2021-01-11 13:14                           ` [PATCH 0/2] Makefile & gettext.c: remove warning & long comment Ævar Arnfjörð Bjarmason
2021-01-11 21:06                             ` Junio C Hamano
2021-01-11 13:14                           ` [PATCH 1/2] Makefile: remove a warning about old GETTEXT_POISON flag Ævar Arnfjörð Bjarmason
2021-01-11 13:14                           ` [PATCH 2/2] gettext.c: remove/reword a mostly-useless comment Ævar Arnfjörð Bjarmason
2021-01-11 14:47                           ` [PATCH 0/6] Remove GIT_TEST_GETTEXT_POISON facility Ævar Arnfjörð Bjarmason
2021-01-20 15:33                             ` SZEDER Gábor
2021-01-20 18:13                               ` Ævar Arnfjörð Bjarmason
2021-01-20 18:27                             ` [PATCH v2 0/3] " Ævar Arnfjörð Bjarmason
2021-02-11  1:53                               ` [PATCH 0/4] More GETTEXT_POISON removal Ævar Arnfjörð Bjarmason
2021-02-11  1:53                               ` [PATCH 1/4] tests: remove last uses of GIT_TEST_GETTEXT_POISON=false Ævar Arnfjörð Bjarmason
2021-03-07 13:29                                 ` [PATCH] mktag tests: fix broken "&&" chain Ævar Arnfjörð Bjarmason
2021-03-07 16:36                                   ` SZEDER Gábor
2021-03-07 20:43                                   ` Junio C Hamano
2021-03-07 20:52                                     ` Eric Sunshine
2021-03-24  2:11                                   ` [PATCH v2] " Ævar Arnfjörð Bjarmason
2021-03-24 19:57                                     ` Junio C Hamano
2021-02-11  1:53                               ` [PATCH 2/4] tests: remove most uses of C_LOCALE_OUTPUT Ævar Arnfjörð Bjarmason
2021-02-11  1:53                               ` [PATCH 3/4] tests: remove last " Ævar Arnfjörð Bjarmason
2021-02-11  1:53                               ` [PATCH 4/4] tests: remove most uses of test_i18ncmp Ævar Arnfjörð Bjarmason
2021-02-11 17:32                                 ` Junio C Hamano
2021-02-13 14:31                                   ` Ævar Arnfjörð Bjarmason
2021-02-19 21:25                                   ` Jonathan Nieder
2021-04-13 12:19                                 ` [PATCH] tests: remove all uses of test_i18cmp Ævar Arnfjörð Bjarmason
2021-04-13 12:28                                   ` [PATCH 0/2] diff tests: un-flaky and post-gettext-poison cleanup Ævar Arnfjörð Bjarmason
2021-04-13 12:28                                     ` [PATCH 1/2] diff tests: remove redundant case statement Ævar Arnfjörð Bjarmason
2021-04-13 14:18                                       ` Matheus Tavares Bernardino
2021-04-13 14:23                                         ` Ævar Arnfjörð Bjarmason
2021-04-13 12:28                                     ` [PATCH 2/2] diff tests: rewrite flakyness-causing test "aid" Ævar Arnfjörð Bjarmason
2021-04-13 14:44                                       ` Matheus Tavares Bernardino
2021-04-13 19:01                                         ` Ævar Arnfjörð Bjarmason
2021-04-13 19:55                                           ` Matheus Tavares Bernardino
2021-04-13 21:55                                             ` Junio C Hamano
2021-04-14  6:22                                             ` Ævar Arnfjörð Bjarmason
2021-04-14  6:35                                               ` Junio C Hamano
2021-04-14  7:38                                                 ` Ævar Arnfjörð Bjarmason
2021-04-14  7:53                                                   ` Junio C Hamano
2021-04-14 10:08                                                     ` Ævar Arnfjörð Bjarmason
2021-04-15  8:14                                                       ` Junio C Hamano
2021-04-15 13:21                                                         ` Ævar Arnfjörð Bjarmason
2021-04-16 18:32                                                           ` Junio C Hamano
2021-04-15 21:26                                             ` SZEDER Gábor
2021-04-13 21:42                                     ` [PATCH 0/2] diff tests: un-flaky and post-gettext-poison cleanup Junio C Hamano
2021-01-20 18:27                             ` [PATCH v2 1/3] ci: remove GETTEXT_POISON jobs Ævar Arnfjörð Bjarmason
2021-01-20 18:27                             ` [PATCH v2 2/3] tests: remove support for GIT_TEST_GETTEXT_POISON Ævar Arnfjörð Bjarmason
2021-01-20 18:27                             ` [PATCH v2 3/3] tests: remove uses of GIT_TEST_GETTEXT_POISON=false Ævar Arnfjörð Bjarmason
2021-01-11 14:47                           ` [PATCH 1/6] ci: remove GETTEXT_POISON jobs Ævar Arnfjörð Bjarmason
2021-01-12  8:50                             ` SZEDER Gábor
2021-01-20 17:59                               ` Ævar Arnfjörð Bjarmason
2021-01-20 19:14                                 ` SZEDER Gábor
2021-01-27  0:47                                   ` Ævar Arnfjörð Bjarmason
2021-02-01 22:04                                     ` SZEDER Gábor
2021-02-03 12:13                                       ` Ævar Arnfjörð Bjarmason
2021-02-03 21:24                                         ` SZEDER Gábor
2021-01-11 14:47                           ` [PATCH 2/6] tests: remove support for GIT_TEST_GETTEXT_POISON Ævar Arnfjörð Bjarmason
2021-01-11 21:54                             ` Junio C Hamano
2021-03-24 23:36                             ` [PATCH] config.c: remove last remnant of GIT_TEST_GETTEXT_POISON Ævar Arnfjörð Bjarmason
2021-03-25  0:36                               ` Jeff King
2021-03-25  1:13                                 ` Ævar Arnfjörð Bjarmason
2021-03-25 20:02                                   ` Junio C Hamano
2021-04-08 13:25                               ` [PATCH v2] " Ævar Arnfjörð Bjarmason
2021-04-08 17:55                                 ` Junio C Hamano
2021-01-11 14:47                           ` [PATCH 3/6] tests: remove misc use of test_i18n{cmp,grep} Ævar Arnfjörð Bjarmason
2021-01-11 14:47                           ` [PATCH 4/6] tests: (almost) remove use of "test_i18ngrep !" Ævar Arnfjörð Bjarmason
2021-01-11 14:47                           ` [PATCH 5/6] tests: (almost) remove C_LOCALE_OUTPUT prerequisites Ævar Arnfjörð Bjarmason
2021-01-11 14:47                           ` [PATCH 6/6] tests: remove uses of GIT_TEST_GETTEXT_POISON=false Ævar Arnfjörð Bjarmason
2021-01-11 21:05                           ` Should you use test_i18ngrep or GIT_TEST_GETTEXT_POISON=false? Junio C Hamano
2021-01-12 11:22                             ` Jeff King
2021-01-20 15:21                       ` SZEDER Gábor
2021-01-05 19:42                 ` [PATCH v5 13/23] mktag tests: test verify_object() with replaced objects Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 14/23] mktag: use default strbuf_read() hint Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 15/23] mktag: remove redundant braces in one-line body "if" Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 16/23] mktag: use puts(str) instead of printf("%s\n", str) Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 17/23] mktag: use fsck instead of custom verify_tag() Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 18/23] fsck: make fsck_config() re-usable Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 19/23] mktag: allow turning off fsck.extraHeaderEntry Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 20/23] mktag: allow omitting the header/body \n separator Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 21/23] mktag: convert to parse-options Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 22/23] mktag: mark strings for translation Ævar Arnfjörð Bjarmason
2021-01-05 19:42                 ` [PATCH v5 23/23] mktag: add a --no-strict option Ævar Arnfjörð Bjarmason
2021-01-06  1:48                   ` Junio C Hamano
2021-01-06 11:47                     ` [PATCH v6 23/23] mktag: add a --[no-]strict option Ævar Arnfjörð Bjarmason
2021-01-06 22:21                       ` Junio C Hamano
2021-01-07  7:45                         ` Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 01/20] mktag doc: say <hash> not <sha1> Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 02/20] mktag doc: grammar fix, when exists -> when it exists Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 03/20] mktag doc: update to explain why to use this Ævar Arnfjörð Bjarmason
2020-12-23  1:57                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 04/20] mktag tests: don't needlessly use a subshell Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 05/20] mktag tests: remove needless SHA-1 hardcoding Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 06/20] mktag tests: improve verify_object() test coverage Ævar Arnfjörð Bjarmason
2020-12-23  2:04                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 07/20] mktag tests: don't pipe to stderr needlessly Ævar Arnfjörð Bjarmason
2020-12-23  2:10                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 08/20] mktag tests: don't create "mytag" twice Ævar Arnfjörð Bjarmason
2020-12-23  2:18                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 09/20] mktag tests: stress test whitespace handling Ævar Arnfjörð Bjarmason
2020-12-23  2:27                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 10/20] mktag tests: test "hash-object" compatibility Ævar Arnfjörð Bjarmason
2020-12-23  2:29                 ` Junio C Hamano
2020-12-23  1:35               ` [PATCH v4 11/20] mktag: use default strbuf_read() hint Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 12/20] mktag: remove redundant braces in one-line body "if" Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 13/20] mktag: use puts(str) instead of printf("%s\n", str) Ævar Arnfjörð Bjarmason
2020-12-23  1:35               ` [PATCH v4 14/20] mktag: use fsck instead of custom verify_tag() Ævar Arnfjörð Bjarmason
2020-12-23 13:34                 ` Junio C Hamano
2020-12-23  1:36               ` [PATCH v4 15/20] fsck: make fsck_config() re-usable Ævar Arnfjörð Bjarmason
2020-12-23  1:36               ` [PATCH v4 16/20] mktag: allow turning off fsck.extraHeaderEntry Ævar Arnfjörð Bjarmason
2020-12-23 22:09                 ` SZEDER Gábor
2020-12-23  1:36               ` [PATCH v4 17/20] mktag: allow omitting the header/body \n separator Ævar Arnfjörð Bjarmason
2020-12-23  1:36               ` [PATCH v4 18/20] mktag: convert to parse-options Ævar Arnfjörð Bjarmason
2020-12-23  1:36               ` [PATCH v4 19/20] mktag: mark strings for translation Ævar Arnfjörð Bjarmason
2020-12-23  1:36               ` [PATCH v4 20/20] mktag: add a --no-strict option Ævar Arnfjörð Bjarmason
2020-12-23 11:54                 ` Junio C Hamano
2020-12-23 22:20                 ` SZEDER Gábor
2020-12-09 20:01             ` [PATCH v3 01/10] mktag doc: say <hash> not <sha1> Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 02/10] mktag: use default strbuf_read() hint Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 03/10] mktag: remove redundant braces in one-line body "if" Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 04/10] mktag tests: don't needlessly use a subshell Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 05/10] mktag tests: remove needless SHA-1 hardcoding Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 06/10] mktag tests: improve verify_object() test coverage Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 07/10] mktag: use fsck instead of custom verify_tag() Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 08/10] mktag doc: update to explain why to use this Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 09/10] fsck: make fsck_config() re-usable Ævar Arnfjörð Bjarmason
2020-12-09 20:01             ` [PATCH v3 10/10] mktag: allow turning off fsck.extraHeaderEntry Ævar Arnfjörð Bjarmason
2020-11-26 22:22           ` [PATCH v2 01/10] mktag doc: say <hash> not <sha1> Ævar Arnfjörð Bjarmason
2020-12-01 20:17             ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 02/10] mktag: use default strbuf_read() hint Ævar Arnfjörð Bjarmason
2020-12-01 20:19             ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 03/10] mktag: reword write_object_file() error Ævar Arnfjörð Bjarmason
2020-12-01 20:20             ` Junio C Hamano
2020-12-01 20:49               ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 04/10] mktag: remove redundant braces in one-line body "if" Ævar Arnfjörð Bjarmason
2020-11-26 22:22           ` [PATCH v2 05/10] mktag tests: don't needlessly use a subshell Ævar Arnfjörð Bjarmason
2020-11-26 22:22           ` [PATCH v2 06/10] mktag tests: remove needless SHA-1 hardcoding Ævar Arnfjörð Bjarmason
2020-12-01 20:24             ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 07/10] mktag tests: improve verify_object() test coverage Ævar Arnfjörð Bjarmason
2020-11-26 22:22           ` [PATCH v2 08/10] fsck: add new "extra" checks for "mktag" Ævar Arnfjörð Bjarmason
2020-12-01 20:33             ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 09/10] mktag: use fsck instead of custom verify_tag() Ævar Arnfjörð Bjarmason
2020-12-01 20:47             ` Junio C Hamano
2020-12-01 22:28               ` Junio C Hamano
2020-11-26 22:22           ` [PATCH v2 10/10] mktag doc: update to explain why to use this Ævar Arnfjörð Bjarmason
2020-12-01 20:59             ` Junio C Hamano
2020-11-26  1:28         ` [RFC/PATCH 01/12] mktag: use default strbuf_read() hint Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 02/12] mktag: reword write_object_file() error Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 03/12] mktag: remove redundant braces in one-line body "if" Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 04/12] mktag tests: don't needlessly use a subshell Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 05/12] mktag tests: remove needless SHA-1 hardcoding Ævar Arnfjörð Bjarmason
2020-11-26  7:49           ` Jeff King
2020-11-26  1:28         ` [RFC/PATCH 06/12] mktag tests: improve verify_object() test coverage Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 07/12] fsck: add new "extra" checks for "mktag" Ævar Arnfjörð Bjarmason
2020-11-26  8:02           ` Jeff King
2020-11-26 12:43             ` Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 08/12] mktag: use fsck instead of custom verify_tag() Ævar Arnfjörð Bjarmason
2020-11-26  8:17           ` Jeff King
2020-11-26 12:46             ` Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 09/12] mktag: remove now-unused verify_tag() code Ævar Arnfjörð Bjarmason
2020-11-26  8:20           ` Jeff King
2020-11-26  1:28         ` [RFC/PATCH 10/12] mktag doc: update to explain why to use this Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 11/12] mktag docs: say <hash> not <sha1> Ævar Arnfjörð Bjarmason
2020-11-26  1:28         ` [RFC/PATCH 12/12] mktag: bring back some of the verify_object() logic Ævar Arnfjörð Bjarmason
2020-11-26  8:32           ` Jeff King
2019-08-26  1:43   ` [PATCH v2 11/14] t3903: abstract away SHA-1-specific constants brian m. carlson
2019-08-26  1:43   ` [PATCH v2 12/14] t4000: make hash size independent brian m. carlson
2019-08-26  1:43   ` [PATCH v2 13/14] t4002: make hash independent brian m. carlson
2019-08-26  1:43   ` [PATCH v2 14/14] t4009: make hash size independent brian m. carlson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210105194252.627-1-avarab@gmail.com \
    --to=avarab@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    --cc=sandals@crustytoothpaste.net \
    --cc=sunshine@sunshineco.com \
    --cc=szeder.dev@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.