{"thread":{"id":"61946","subject":"[PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","startedAt":"2024-08-14T00:05:19Z","lastAt":"2024-08-15T23:46:27Z","messageCount":13,"participants":["Jacob Keller","Junio C Hamano","Konstantin Ryabitsev","Keller, Jacob E"],"isPatch":true,"patchVersion":2,"patchTotal":3},"messages":[{"id":"500827","messageId":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","threadId":"61946","inReplyTo":null,"subject":"[PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Jacob Keller","fromEmail":"jacob.e.keller@intel.com","sentAt":"2024-08-14T00:05:08Z","receivedAt":"2024-08-14T00:05:19Z","isPatch":true,"sender":{"key":"jacob.e.keller@intel.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"The b4 program has its own \"b4 send\" utility for sending a patch series. It\nis similar in many respects to git send-email. Currently, it lacks support\nfor processing aliases, which makes switching between git send-email and b4\nsend somewhat annoying.\n\nIt would be convenient if b4 (or other programs interacting with git) could\nmake use of git send-email's alias file support.\n\nTeach git send-email a new --translate-aliases option, which enables a new\nmode for git send-email. When executed with this option, git send-email\nwill read standard input and convert each input according to the configured\nalias file. The resulting address will be output to standard out.\n\nI also considered implementing a new \"full\" format for --dump-aliases which\nwould dump the entire alias file along with its configured email addresses.\nI ended up dropping that change as I felt that it would be less usable than\nthe translation feature.\n\nSigned-off-by: Jacob Keller <jacob.keller@gmail.com>\n---\nChanges in v2:\n- Use standard input instead of command line arguments\n- Link to v1: https://lore.kernel.org/r/20240808-jk-translate-alias-send-email-v1-0-10a03b3d6b06@gmail.com\n\n---\nJacob Keller (3):\n      t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n      t9001-send-email.sh: update alias list used for pine test\n      send-email: teach git send-email option to translate aliases\n\n Documentation/git-send-email.txt |   7 +++\n git-send-email.perl              |  21 ++++++-\n t/t9001-send-email.sh            | 118 +++++++++++++++++++++++++++++++++++++--\n 3 files changed, 139 insertions(+), 7 deletions(-)\n---\nbase-commit: 406f326d271e0bacecdb00425422c5fa3f314930\nchange-id: 20240808-jk-translate-alias-send-email-1ce048643e5d\n\nBest regards,\n-- \nJacob Keller <jacob.keller@gmail.com>\n\n"},{"id":"500828","messageId":"20240813-jk-translate-alias-send-email-v2-1-912db4eb6846@gmail.com","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"[PATCH v2 1/3] t90001-send-email.sh: fix quoting for mailrc --dump-aliases test","fromName":"Jacob Keller","fromEmail":"jacob.e.keller@intel.com","sentAt":"2024-08-14T00:05:09Z","receivedAt":"2024-08-14T00:05:21Z","isPatch":true,"sender":{"key":"jacob.e.keller@intel.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"From: Jacob Keller <jacob.keller@gmail.com>\n\nThe .mailrc alias file format documents that multiple addresses are\nseparated by spaces. The alias file used in the t9001 --dump-aliases\nmailrc test have addresses which include both a name and email. These\nare unquoted, so git send-email will parse this as an alias that\ntranslates to multiple independent addresses.\n\nThe existing test does not care about this, as --dump-aliases only dumps\nthe alias and not the address. However, it is incorrect for a future\nwhere --dump-aliases could also dump the mail addresses.\n\nFix the test to quote the aliases properly, so that they translate to a\nsingle address.\n\nSigned-off-by: Jacob Keller <jacob.keller@gmail.com>\n---\n t/t9001-send-email.sh | 6 +++---\n 1 file changed, 3 insertions(+), 3 deletions(-)\n\ndiff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh\nindex 64a4ab3736ef..aa36ace393b7 100755\n--- a/t/t9001-send-email.sh\n+++ b/t/t9001-send-email.sh\n@@ -2084,9 +2084,9 @@ test_dump_aliases '--dump-aliases mailrc format' \\\n \t'bob' \\\n \t'chloe' \\\n \t'eve' <<-\\EOF\n-\talias alice   Alice W Land <awol@example.com>\n-\talias eve     Eve <eve@example.com>\n-\talias bob     Robert Bobbyton <bob@example.com>\n+\talias alice   \"Alice W Land <awol@example.com>\"\n+\talias eve     \"Eve <eve@example.com>\"\n+\talias bob     \"Robert Bobbyton <bob@example.com>\"\n \talias chloe   chloe@example.com\n \tEOF\n \n\n-- \n2.46.0.124.g2dc1a81c8933\n\n"},{"id":"500829","messageId":"20240813-jk-translate-alias-send-email-v2-3-912db4eb6846@gmail.com","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"[PATCH v2 3/3] send-email: teach git send-email option to translate aliases","fromName":"Jacob Keller","fromEmail":"jacob.e.keller@intel.com","sentAt":"2024-08-14T00:05:11Z","receivedAt":"2024-08-14T00:05:21Z","isPatch":true,"sender":{"key":"jacob.e.keller@intel.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"From: Jacob Keller <jacob.keller@gmail.com>\n\ngit send-email has support for converting shorthand alias names to\ncanonical email addresses via the alias file. It supports a wide variety\nof alias file formats based on popular email program file formats.\n\nOther programs, such as b4, would like the ability to convert aliases in\nthe same way as git send-email without needing to re-implement the logic\nfor understanding the many file formats.\n\nTeach git send-email a new option, --translate-aliases, which will\nenable this functionality. Similar to --dump-aliases, this option works\nlike a new mode of operation for git send-email.\n\nWhen run with --translate-aliases, git send-email reads from standard\ninput and converts any provided alias into its canonical name and email\naccording to the alias file. Each expanded name and address is printed\nto standard output, one per line.\n\nSigned-off-by: Jacob Keller <jacob.keller@gmail.com>\n---\n Documentation/git-send-email.txt |   7 +++\n git-send-email.perl              |  21 +++++++-\n t/t9001-send-email.sh            | 104 +++++++++++++++++++++++++++++++++++++++\n 3 files changed, 131 insertions(+), 1 deletion(-)\n\ndiff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt\nindex c5d664f4519b..2e6f1d63ae4a 100644\n--- a/Documentation/git-send-email.txt\n+++ b/Documentation/git-send-email.txt\n@@ -12,6 +12,7 @@ SYNOPSIS\n 'git send-email' [<options>] (<file>|<directory>)...\n 'git send-email' [<options>] <format-patch-options>\n 'git send-email' --dump-aliases\n+'git send-email' --translate-aliases\n \n \n DESCRIPTION\n@@ -475,6 +476,12 @@ Information\n \tthat this only includes the alias name and not its expanded email addresses.\n \tSee 'sendemail.aliasesFile' for more information about aliases.\n \n+--translate-aliases::\n+\tInstead of the normal operation, read from standard input and\n+\tinterpret each line as an email alias. Translate it according to the\n+\tconfigured alias file(s). Output each translated name and email\n+\taddress to standard output, one per line. See 'sendemail.aliasFile'\n+\tfor more information about aliases.\n \n CONFIGURATION\n -------------\ndiff --git a/git-send-email.perl b/git-send-email.perl\nindex 72044e5ef3a8..cdcee1d0cf96 100755\n--- a/git-send-email.perl\n+++ b/git-send-email.perl\n@@ -31,6 +31,7 @@ sub usage {\n git send-email [<options>] <file|directory>\n git send-email [<options>] <format-patch options>\n git send-email --dump-aliases\n+git send-email --translate-aliases\n \n   Composing:\n     --from                  <str>  * Email From:\n@@ -99,6 +100,10 @@ sub usage {\n \n   Information:\n     --dump-aliases                 * Dump configured aliases and exit.\n+    --translate-aliases            * Translate aliases read from standard\n+                                     input according to the configured email\n+                                     alias file(s), outputting the result to\n+                                     standard output.\n \n EOT\n \texit(1);\n@@ -212,6 +217,7 @@ sub format_2822_time {\n my $compose_filename;\n my $force = 0;\n my $dump_aliases = 0;\n+my $translate_aliases = 0;\n \n # Variables to prevent short format-patch options from being captured\n # as abbreviated send-email options\n@@ -476,11 +482,14 @@ sub config_regexp {\n my %dump_aliases_options = (\n \t\"h\" => \\$help,\n \t\"dump-aliases\" => \\$dump_aliases,\n+\t\"translate-aliases\" => \\$translate_aliases,\n );\n $rc = GetOptions(%dump_aliases_options);\n usage() unless $rc;\n die __(\"--dump-aliases incompatible with other options\\n\")\n-    if !$help and $dump_aliases and @ARGV;\n+    if !$help and ($dump_aliases or $translate_aliases) and @ARGV;\n+die __(\"--dump-aliases and --translate-aliases are mutually exclusive\\n\")\n+    if !$help and $dump_aliases and $translate_aliases;\n my %options = (\n \t\t    \"sender|from=s\" => \\$sender,\n \t\t    \"in-reply-to=s\" => \\$initial_in_reply_to,\n@@ -724,6 +733,16 @@ sub parse_sendmail_aliases {\n     exit(0);\n }\n \n+if ($translate_aliases) {\n+\twhile (<STDIN>) {\n+\t\tmy @addr_list = parse_address_line($_);\n+\t\t@addr_list = expand_aliases(@addr_list);\n+\t\t@addr_list = sanitize_address_list(@addr_list);\n+\t\tprint \"$_\\n\" for @addr_list;\n+\t}\n+\texit(0);\n+}\n+\n # is_format_patch_arg($f) returns 0 if $f names a patch, or 1 if\n # $f is a revision list specification to be passed to format-patch.\n sub is_format_patch_arg {\ndiff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh\nindex c96d6955b9f2..13f1453eebb9 100755\n--- a/t/t9001-send-email.sh\n+++ b/t/t9001-send-email.sh\n@@ -2120,6 +2120,110 @@ test_expect_success '--dump-aliases must be used alone' '\n \ttest_must_fail git send-email --dump-aliases --to=janice@example.com -1 refs/heads/accounting\n '\n \n+test_translate_aliases () {\n+\tmsg=\"$1\" && shift &&\n+\tfiletype=\"$1\" && shift &&\n+\taliases=\"$1\" && shift &&\n+\tprintf '%s\\n' \"$@\" >expect &&\n+\tcat >.tmp-email-aliases &&\n+\tprintf '%s\\n' \"$aliases\" >aliases &&\n+\n+\ttest_expect_success $PREREQ \"$msg\" '\n+\t\tclean_fake_sendmail && rm -fr outdir &&\n+\t\tgit config --replace-all sendemail.aliasesfile \\\n+\t\t\t\"$(pwd)/.tmp-email-aliases\" &&\n+\t\tgit config sendemail.aliasfiletype \"$filetype\" &&\n+\t\tgit send-email --translate-aliases <aliases 2>errors >actual &&\n+\t\ttest_cmp expect actual\n+\t'\n+}\n+\n+test_translate_aliases '--translate-aliases sendmail format' \\\n+\t'sendmail' \\\n+\t'alice bcgrp' \\\n+\t'Alice W Land <awol@example.com>' \\\n+\t'Robert Bobbyton <bob@example.com>' \\\n+\t'chloe@example.com' \\\n+\t'Other <o@example.com>' <<-\\EOF\n+\talice: Alice W Land <awol@example.com>\n+\tbob: Robert Bobbyton <bob@example.com>\n+\tchloe: chloe@example.com\n+\tabgroup: alice, bob\n+\tbcgrp: bob, chloe, Other <o@example.com>\n+\tEOF\n+\n+test_translate_aliases '--translate-aliases mutt format' \\\n+\t'mutt' \\\n+\t'donald bob' \\\n+\t'Donald C Carlton <donc@example.com>' \\\n+\t'Robert Bobbyton <bob@example.com>' <<-\\EOF\n+\talias alice Alice W Land <awol@example.com>\n+\talias donald Donald C Carlton <donc@example.com>\n+\talias bob Robert Bobbyton <bob@example.com>\n+\talias chloe chloe@example.com\n+\tEOF\n+\n+test_translate_aliases '--translate-aliases mailrc format' \\\n+\t'mailrc' \\\n+\t'chloe eve alice' \\\n+\t'chloe@example.com' \\\n+\t'Eve <eve@example.com>' \\\n+\t'Alice W Land <awol@example.com>' <<-\\EOF\n+\talias alice   \"Alice W Land <awol@example.com>\"\n+\talias eve     \"Eve <eve@example.com>\"\n+\talias bob     \"Robert Bobbyton <bob@example.com>\"\n+\talias chloe   chloe@example.com\n+\tEOF\n+\n+test_translate_aliases '--translate-aliases pine format' \\\n+\t'pine' \\\n+\t'eve bob bcgrp' \\\n+\t'eve@example.com' \\\n+\t'bob@example.com' \\\n+\t'bob@example.com' \\\n+\t'chloe@example.com' \\\n+\t'Other <o@example.com>' <<-\\EOF\n+\talice\tAlice W Land\tawol@example.com\t\tFriend\n+\teve\tEve\teve@example.com\n+\tbob\tRobert Bobbyton\tbob@example.com\n+\tchloe\t\tchloe@example.com\n+\tbcgrp\t\t(bob, chloe, Other <o@example.com>)\n+\tEOF\n+\n+test_translate_aliases '--translate-aliases gnus format' \\\n+\t'gnus' \\\n+\t'alice chloe eve' \\\n+\t'awol@example.com' \\\n+\t'chloe@example.com' \\\n+\t'eve@example.com' <<-\\EOF\n+\t(define-mail-alias \"alice\" \"awol@example.com\")\n+\t(define-mail-alias \"eve\" \"eve@example.com\")\n+\t(define-mail-alias \"bob\" \"bob@example.com\")\n+\t(define-mail-alias \"chloe\" \"chloe@example.com\")\n+\tEOF\n+\n+test_expect_success '--translate-aliases passes valid addresses through' '\n+\tcat >expect <<-\\EOF &&\n+\tOther <o@example.com>\n+\tEOF\n+\tcat >aliases <<-\\EOF &&\n+\tOther <o@example.com>\n+\tEOF\n+\tgit send-email --translate-aliases <aliases >actual &&\n+\ttest_cmp expect actual\n+'\n+\n+test_expect_success '--translate-aliases passes unknown aliases through' '\n+\tcat >expect <<-\\EOF &&\n+\tblargh\n+\tEOF\n+\tcat >aliases <<-\\EOF &&\n+\tblargh\n+\tEOF\n+\tgit send-email --translate-aliases <aliases >actual &&\n+\ttest_cmp expect actual\n+'\n+\n test_expect_success $PREREQ 'aliases and sendemail.identity' '\n \ttest_must_fail git \\\n \t\t-c sendemail.identity=cloud \\\n\n-- \n2.46.0.124.g2dc1a81c8933\n\n"},{"id":"500830","messageId":"20240813-jk-translate-alias-send-email-v2-2-912db4eb6846@gmail.com","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"[PATCH v2 2/3] t9001-send-email.sh: update alias list used for pine test","fromName":"Jacob Keller","fromEmail":"jacob.e.keller@intel.com","sentAt":"2024-08-14T00:05:10Z","receivedAt":"2024-08-14T00:05:23Z","isPatch":true,"sender":{"key":"jacob.e.keller@intel.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"From: Jacob Keller <jacob.keller@gmail.com>\n\nThe set of aliases used for the pine --dump-aliases test do not\nperfectly mesh with the way the pine address book is defined. While\ntechnically all valid, there are some oddities including bob's name\nbeing partially split so that the actual address is returned as\n\"Bobbyton <bob@example.com\". A strict reading of the pine documentation\nindicates that the address should either be of the form\n\"address@domain\" or a comma separated list of address, name/address\npairs, or other aliases enclosed by ().\n\nThe parsing implementation in git-send-email is not as strict, but it\nmakes sense to ensure the test data used is. Although the --dump-aliases\ntest does not make use of the address data, it is helpful to avoid\ngiving future developers the wrong impression of the file format.\n\nAlso add an alias which translates to multiple addresses using the ()\nformat.\n\nSigned-off-by: Jacob Keller <jacob.keller@gmail.com>\n---\n t/t9001-send-email.sh | 8 +++++---\n 1 file changed, 5 insertions(+), 3 deletions(-)\n\ndiff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh\nindex aa36ace393b7..c96d6955b9f2 100755\n--- a/t/t9001-send-email.sh\n+++ b/t/t9001-send-email.sh\n@@ -2093,13 +2093,15 @@ test_dump_aliases '--dump-aliases mailrc format' \\\n test_dump_aliases '--dump-aliases pine format' \\\n \t'pine' \\\n \t'alice' \\\n+\t'bcgrp' \\\n \t'bob' \\\n \t'chloe' \\\n \t'eve' <<-\\EOF\n-\talice\tAlice W Land\t<awol@example.com>\n-\teve\tEve\t<eve@example.com>\n-\tbob\tRobert\tBobbyton <bob@example.com>\n+\talice\tAlice W Land\tawol@example.com\t\tFriend\n+\teve\tEve\teve@example.com\n+\tbob\tRobert Bobbyton\tbob@example.com\n \tchloe\t\tchloe@example.com\n+\tbcgrp\t\t(bob, chloe, Other <o@example.com>)\n \tEOF\n \n test_dump_aliases '--dump-aliases gnus format' \\\n\n-- \n2.46.0.124.g2dc1a81c8933\n\n"},{"id":"500919","messageId":"xmqq34n711uy.fsf@gitster.g","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-08-14T16:54:45Z","receivedAt":"2024-08-14T16:54:47Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jacob Keller <jacob.e.keller@intel.com> writes:\n\n> The b4 program has its own \"b4 send\" utility for sending a patch series. It\n> is similar in many respects to git send-email. Currently, it lacks support\n> for processing aliases, which makes switching between git send-email and b4\n> send somewhat annoying.\n>\n> It would be convenient if b4 (or other programs interacting with git) could\n> make use of git send-email's alias file support.\n>\n> Teach git send-email a new --translate-aliases option, which enables a new\n> mode for git send-email. When executed with this option, git send-email\n> will read standard input and convert each input according to the configured\n> alias file. The resulting address will be output to standard out.\n>\n> I also considered implementing a new \"full\" format for --dump-aliases which\n> would dump the entire alias file along with its configured email addresses.\n> I ended up dropping that change as I felt that it would be less usable than\n> the translation feature.\n>\n> Signed-off-by: Jacob Keller <jacob.keller@gmail.com>\n> ---\n> Changes in v2:\n> - Use standard input instead of command line arguments\n> - Link to v1: https://lore.kernel.org/r/20240808-jk-translate-alias-send-email-v1-0-10a03b3d6b06@gmail.com\n>\n> ---\n> Jacob Keller (3):\n>       t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n\nNobody noticed the typo in the filename since the previous iteration\nwas posted?\n\n>       t9001-send-email.sh: update alias list used for pine test\n>       send-email: teach git send-email option to translate aliases\n>\n>  Documentation/git-send-email.txt |   7 +++\n>  git-send-email.perl              |  21 ++++++-\n>  t/t9001-send-email.sh            | 118 +++++++++++++++++++++++++++++++++++++--\n>  3 files changed, 139 insertions(+), 7 deletions(-)\n> ---\n> base-commit: 406f326d271e0bacecdb00425422c5fa3f314930\n> change-id: 20240808-jk-translate-alias-send-email-1ce048643e5d\n>\n> Best regards,\n"},{"id":"500920","messageId":"xmqqy14zyrf5.fsf@gitster.g","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-1-912db4eb6846@gmail.com","subject":"Re: [PATCH v2 1/3] t90001-send-email.sh: fix quoting for mailrc --dump-aliases test","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-08-14T16:56:14Z","receivedAt":"2024-08-14T16:56:19Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jacob Keller <jacob.e.keller@intel.com> writes:\n\n> From: Jacob Keller <jacob.keller@gmail.com>\n>\n> The .mailrc alias file format documents that multiple addresses are\n> separated by spaces. The alias file used in the t9001 --dump-aliases\n> mailrc test have addresses which include both a name and email. These\n> are unquoted, so git send-email will parse this as an alias that\n> translates to multiple independent addresses.\n>\n> The existing test does not care about this, as --dump-aliases only dumps\n> the alias and not the address. However, it is incorrect for a future\n> where --dump-aliases could also dump the mail addresses.\n>\n> Fix the test to quote the aliases properly, so that they translate to a\n> single address.\n>\n> Signed-off-by: Jacob Keller <jacob.keller@gmail.com>\n> ---\n>  t/t9001-send-email.sh | 6 +++---\n>  1 file changed, 3 insertions(+), 3 deletions(-)\n\nMakes sense.  I'll amend the excess \"0\" out of the title while\nqueuing.\n\nThanks.\n\n>\n> diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh\n> index 64a4ab3736ef..aa36ace393b7 100755\n> --- a/t/t9001-send-email.sh\n> +++ b/t/t9001-send-email.sh\n> @@ -2084,9 +2084,9 @@ test_dump_aliases '--dump-aliases mailrc format' \\\n>  \t'bob' \\\n>  \t'chloe' \\\n>  \t'eve' <<-\\EOF\n> -\talias alice   Alice W Land <awol@example.com>\n> -\talias eve     Eve <eve@example.com>\n> -\talias bob     Robert Bobbyton <bob@example.com>\n> +\talias alice   \"Alice W Land <awol@example.com>\"\n> +\talias eve     \"Eve <eve@example.com>\"\n> +\talias bob     \"Robert Bobbyton <bob@example.com>\"\n>  \talias chloe   chloe@example.com\n>  \tEOF\n"},{"id":"500921","messageId":"xmqqo75vyr4b.fsf@gitster.g","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-2-912db4eb6846@gmail.com","subject":"Re: [PATCH v2 2/3] t9001-send-email.sh: update alias list used for pine test","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-08-14T17:02:44Z","receivedAt":"2024-08-14T17:05:16Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jacob Keller <jacob.e.keller@intel.com> writes:\n\n> From: Jacob Keller <jacob.keller@gmail.com>\n>\n> The set of aliases used for the pine --dump-aliases test do not\n> perfectly mesh with the way the pine address book is defined. While\n> technically all valid, there are some oddities including bob's name\n> being partially split so that the actual address is returned as\n> \"Bobbyton <bob@example.com\".\n\nWith \"partially split\" bob's name, do you mean the HT between Robert\nand Bobbyton in the original?  \n\nI am asking to see if the closing angle-bracket \">\" after the\naddress is deliberately omitted to illustrate a breakage coming from\na malformed entry in the original address book, or it is missing\nmerely by mistake.\n\n> -\tbob\tRobert\tBobbyton <bob@example.com>\n> +\tbob\tRobert Bobbyton\tbob@example.com\n\nThanks.\n"},{"id":"500926","messageId":"CA+P7+xrKBqWVwkFH=WrGoLJbqVtE3AO=CBb0=UTw=E8AA+xv4g@mail.gmail.com","threadId":"61946","inReplyTo":"xmqq34n711uy.fsf@gitster.g","subject":"Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Jacob Keller","fromEmail":"jacob.keller@gmail.com","sentAt":"2024-08-14T17:45:21Z","receivedAt":"2024-08-14T17:45:32Z","isPatch":true,"sender":{"key":"jacob.keller@gmail.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"On Wed, Aug 14, 2024 at 9:54 AM Junio C Hamano <gitster@pobox.com> wrote:\n> Jacob Keller <jacob.e.keller@intel.com> writes:\n> > ---\n> > Jacob Keller (3):\n> >       t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n>\n> Nobody noticed the typo in the filename since the previous iteration\n> was posted?\n>\n\nI certainly did not :D Woops. If you had pointed this out in the\ninitial review, I apologize as I missed that comment.\n"},{"id":"500927","messageId":"CA+P7+xooHK-t0gEZyDeKAYYBvVJXdWyRHEOC4zok-C8+vLxqvw@mail.gmail.com","threadId":"61946","inReplyTo":"xmqqo75vyr4b.fsf@gitster.g","subject":"Re: [PATCH v2 2/3] t9001-send-email.sh: update alias list used for pine test","fromName":"Jacob Keller","fromEmail":"jacob.keller@gmail.com","sentAt":"2024-08-14T17:47:36Z","receivedAt":"2024-08-14T17:47:47Z","isPatch":true,"sender":{"key":"jacob.keller@gmail.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"On Wed, Aug 14, 2024 at 10:02 AM Junio C Hamano <gitster@pobox.com> wrote:\n>\n> Jacob Keller <jacob.e.keller@intel.com> writes:\n>\n> > From: Jacob Keller <jacob.keller@gmail.com>\n> >\n> > The set of aliases used for the pine --dump-aliases test do not\n> > perfectly mesh with the way the pine address book is defined. While\n> > technically all valid, there are some oddities including bob's name\n> > being partially split so that the actual address is returned as\n> > \"Bobbyton <bob@example.com\".\n>\n> With \"partially split\" bob's name, do you mean the HT between Robert\n> and Bobbyton in the original?\n>\n> I am asking to see if the closing angle-bracket \">\" after the\n> address is deliberately omitted to illustrate a breakage coming from\n> a malformed entry in the original address book, or it is missing\n> merely by mistake.\n>\n\nIt is missing as a mistake, I think. The main change here is the HT\nbetween Robert and Bobbyton in the original was causing the fields to\nbe separated.in what seemed like an unintentional way to me. The\nmissing > was I think due to a copy-paste error where i failed to\nselect the final > when copying to paste into the commit log.\n\n> > -     bob     Robert  Bobbyton <bob@example.com>\n> > +     bob     Robert Bobbyton bob@example.com\n>\n> Thanks.\n"},{"id":"500931","messageId":"xmqq4j7nymji.fsf@gitster.g","threadId":"61946","inReplyTo":"CA+P7+xrKBqWVwkFH=WrGoLJbqVtE3AO=CBb0=UTw=E8AA+xv4g@mail.gmail.com","subject":"Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-08-14T18:41:37Z","receivedAt":"2024-08-14T18:41:40Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jacob Keller <jacob.keller@gmail.com> writes:\n\n> On Wed, Aug 14, 2024 at 9:54 AM Junio C Hamano <gitster@pobox.com> wrote:\n>> Jacob Keller <jacob.e.keller@intel.com> writes:\n>> > ---\n>> > Jacob Keller (3):\n>> >       t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n>>\n>> Nobody noticed the typo in the filename since the previous iteration\n>> was posted?\n>>\n>\n> I certainly did not :D Woops. If you had pointed this out in the\n> initial review, I apologize as I missed that comment.\n\nI do recall raising an eyebrow but I do also recall saying nothing\nabout it ;-)\n"},{"id":"501010","messageId":"20240815-small-gleaming-parakeet-cd9d5e@lemur","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Konstantin Ryabitsev","fromEmail":"konstantin@linuxfoundation.org","sentAt":"2024-08-15T14:29:50Z","receivedAt":"2024-08-15T14:29:52Z","isPatch":true,"sender":{"key":"konstantin@linuxfoundation.org","avatar":"https://gravatar.com/avatar/7cb8827c6de56e1bd2dea16508c6708aa43feed3bf3813bcdacecdf96ceadd79?d=mp&s=160"},"body":"On Tue, Aug 13, 2024 at 05:05:08PM GMT, Jacob Keller wrote:\n> It would be convenient if b4 (or other programs interacting with git) could\n> make use of git send-email's alias file support.\n\nThis is, indeed, a very frequent request.\n\nAcked-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org>\n\n-KK\n"},{"id":"501080","messageId":"xmqqplq9qtrr.fsf@gitster.g","threadId":"61946","inReplyTo":"20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com","subject":"Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-08-15T22:57:12Z","receivedAt":"2024-08-15T22:57:15Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jacob Keller <jacob.e.keller@intel.com> writes:\n\n> Jacob Keller (3):\n>       t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n>       t9001-send-email.sh: update alias list used for pine test\n>       send-email: teach git send-email option to translate aliases\n\nSeems to fail t9001 rather miserably on Windows.\n\nhttps://github.com/git/git/actions/runs/10411559740/job/28835810137#step:5:2444\n\nThere seem to be way too many PREREQ related skippage, it is not all\nthat surprising (it does not make it excuable, though) if a new test\nthat comes later and not skipped is broken because earlier steps are\nnot executed.\n\n"},{"id":"501081","messageId":"CO1PR11MB50896A614BEE7E54A6105E1CD6802@CO1PR11MB5089.namprd11.prod.outlook.com","threadId":"61946","inReplyTo":"xmqqplq9qtrr.fsf@gitster.g","subject":"RE: [PATCH v2 0/3] send-email: teach git send-email mode to translate aliases","fromName":"Keller, Jacob E","fromEmail":"jacob.e.keller@intel.com","sentAt":"2024-08-15T23:46:22Z","receivedAt":"2024-08-15T23:46:27Z","isPatch":true,"sender":{"key":"jacob.e.keller@intel.com","avatar":"https://avatars.githubusercontent.com/u/874719?v=4"},"body":"\n\n> -----Original Message-----\n> From: Junio C Hamano <gitster@pobox.com>\n> Sent: Thursday, August 15, 2024 3:57 PM\n> To: Keller, Jacob E <jacob.e.keller@intel.com>\n> Cc: git@vger.kernel.org; Jacob Keller <jacob.keller@gmail.com>; Konstantin\n> Ryabitsev <konstantin@linuxfoundation.org>\n> Subject: Re: [PATCH v2 0/3] send-email: teach git send-email mode to translate\n> aliases\n> \n> Jacob Keller <jacob.e.keller@intel.com> writes:\n> \n> > Jacob Keller (3):\n> >       t90001-send-email.sh: fix quoting for mailrc --dump-aliases test\n> >       t9001-send-email.sh: update alias list used for pine test\n> >       send-email: teach git send-email option to translate aliases\n> \n> Seems to fail t9001 rather miserably on Windows.\n> \n> https://github.com/git/git/actions/runs/10411559740/job/28835810137#step:5:24\n> 44\n> \n> There seem to be way too many PREREQ related skippage, it is not all\n> that surprising (it does not make it excuable, though) if a new test\n> that comes later and not skipped is broken because earlier steps are\n> not executed.\n\nIt looks like we're missing the perl PREREQ on the tests, so these execute and then fail because of lack of perl. Should be easy to fix.\n"}]}