Re: [PATCH] send-email: move validation code below process_address_list
From: Junio C Hamano <hidden>
Date: 2023-10-24 21:55:18
Michael Strawbridge [off-list ref] writes:
Subject: [PATCH] send-email: move validation code below process_address_list Move validation logic below processing of email address lists so that email validation gets the proper email addresses.
Hmph, without this patch, the tip of 'seen' passes t9001 on my box,
but with it, it claims that it failed 58, 87, and 89.
Here is how #58 fails (the last part of "cd t && sh t9001-*.sh -i -v").
expecting success of 9001.58 'In-Reply-To without --chain-reply-to':
clean_fake_sendmail &&
echo "[off-list ref]" >expect &&
git send-email \
--from="Example [off-list ref]" \
--to=nobody@example.com \
--no-chain-reply-to \
--in-reply-to="$(cat expect)" \
--smtp-server="$(pwd)/fake.sendmail" \
$patches $patches $patches \
2>errors &&
# The first message is a reply to --in-reply-to
sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt1 >actual &&
test_cmp expect actual &&
# Second and subsequent messages are replies to the first one
sed -n -e "s/^Message-ID: *\(.*\)/\1/p" msgtxt1 >expect &&
sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt2 >actual &&
test_cmp expect actual &&
sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt3 >actual &&
test_cmp expect actual
0001-Second.patch
0001-Second.patch
0001-Second.patch
(mbox) Adding cc: A [off-list ref] from line 'From: A [off-list ref]'
(mbox) Adding cc: One [off-list ref] from line 'Cc: One [off-list ref], two@example.com'
(mbox) Adding cc: two@example.com from line 'Cc: One [off-list ref], two@example.com'
(body) Adding cc: C O Mitter [off-list ref] from line 'Signed-off-by: C O Mitter [off-list ref]'
OK. Log says:
Sendmail: /usr/local/google/home/jch/w/git.git/t/trash directory.t9001-send-email/fake.sendmail -i nobody@example.com author@example.com one@example.com two@example.com committer@example.com
From: Example <redacted>
To: nobody@example.com
Cc: A <redacted>,
One [off-list ref],
two@example.com,
C O Mitter [off-list ref]
Subject: [PATCH 1/1] Second.
Date: Tue, 24 Oct 2023 21:52:27 +0000
Message-ID: [off-list ref]
X-Mailer: git-send-email 2.42.0-705-g1a1f985ecc
In-Reply-To: [off-list ref]
References: [off-list ref]
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Result: OK
(mbox) Adding cc: A [off-list ref] from line 'From: A [off-list ref]'
(mbox) Adding cc: One [off-list ref] from line 'Cc: One [off-list ref], two@example.com'
(mbox) Adding cc: two@example.com from line 'Cc: One [off-list ref], two@example.com'
(body) Adding cc: C O Mitter [off-list ref] from line 'Signed-off-by: C O Mitter [off-list ref]'
OK. Log says:
Sendmail: /usr/local/google/home/jch/w/git.git/t/trash directory.t9001-send-email/fake.sendmail -i nobody@example.com author@example.com one@example.com two@example.com committer@example.com
From: Example <redacted>
To: nobody@example.com
Cc: A <redacted>,
One [off-list ref],
two@example.com,
C O Mitter [off-list ref]
Subject: [PATCH 1/1] Second.
Date: Tue, 24 Oct 2023 21:52:28 +0000
Message-ID: [off-list ref]
X-Mailer: git-send-email 2.42.0-705-g1a1f985ecc
In-Reply-To: [off-list ref]
References: [off-list ref]
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Result: OK
(mbox) Adding cc: A [off-list ref] from line 'From: A [off-list ref]'
(mbox) Adding cc: One [off-list ref] from line 'Cc: One [off-list ref], two@example.com'
(mbox) Adding cc: two@example.com from line 'Cc: One [off-list ref], two@example.com'
(body) Adding cc: C O Mitter [off-list ref] from line 'Signed-off-by: C O Mitter [off-list ref]'
OK. Log says:
Sendmail: /usr/local/google/home/jch/w/git.git/t/trash directory.t9001-send-email/fake.sendmail -i nobody@example.com author@example.com one@example.com two@example.com committer@example.com
From: Example <redacted>
To: nobody@example.com
Cc: A <redacted>,
One [off-list ref],
two@example.com,
C O Mitter [off-list ref]
Subject: [PATCH 1/1] Second.
Date: Tue, 24 Oct 2023 21:52:29 +0000
Message-ID: [off-list ref]
X-Mailer: git-send-email 2.42.0-705-g1a1f985ecc
In-Reply-To: [off-list ref]
References: [off-list ref]
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Result: OK--- expect 2023-10-24 21:52:29.115044899 +0000
+++ actual 2023-10-24 21:52:29.119045306 +0000@@ -1 +1 @@ -<20231024215229.1787922-1-nobody@example.com> +<unique-message-id@example.com>
not ok 58 - In-Reply-To without --chain-reply-to # # clean_fake_sendmail && # echo "[off-list ref]" >expect && # git send-email \ # --from="Example [off-list ref]" \ # --to=nobody@example.com \ # --no-chain-reply-to \ # --in-reply-to="$(cat expect)" \ # --smtp-server="$(pwd)/fake.sendmail" \ # $patches $patches $patches \ # 2>errors && # # The first message is a reply to --in-reply-to # sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt1 >actual && # test_cmp expect actual && # # Second and subsequent messages are replies to the first one # sed -n -e "s/^Message-ID: *\(.*\)/\1/p" msgtxt1 >expect && # sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt2 >actual && # test_cmp expect actual && # sed -n -e "s/^In-Reply-To: *\(.*\)/\1/p" msgtxt3 >actual && # test_cmp expect actual # 1..58