{"thread":{"id":"60558","subject":"[PATCH 1/1] git-send-email causes failures because of wrong option specifications","startedAt":"2023-11-25T09:52:05Z","lastAt":"2023-11-26T02:39:23Z","messageCount":3,"participants":["H.Merijn Brand - Tux","Eric Sunshine"],"isPatch":true,"patchVersion":1,"patchTotal":1},"messages":[{"id":"485143","messageId":"20231125094429.12025-2-linux@tux.freedom.nl","threadId":"60558","inReplyTo":"20231125094429.12025-1-linux@tux.freedom.nl","subject":"[PATCH 1/1] git-send-email causes failures because of wrong option specifications","fromName":"H.Merijn Brand - Tux","fromEmail":"linux@tux.freedom.nl","sentAt":"2023-11-25T09:44:29Z","receivedAt":"2023-11-25T09:52:05Z","isPatch":true,"sender":{"key":"linux@tux.freedom.nl","avatar":"https://gravatar.com/avatar/2c89aaef31466fa10e55c481a4b875828a741dd42413cbcf61aa1e6c0cbfa3bd?d=mp&s=160"},"body":"From the Getopt::Long changes:\n```\nChanges in version 2.55\n-----------------------\n* Fix long standing bug that duplicate options were not detected when\n  the options differ in case while ignore_case is in effect.\n  This will now yield a warning and become a fatal error in a future\n  release.\n```\n\nCurrent version is 2.57\n\n```\ngit-2.43.0 🐧 perl -Iperl git-send-email.perl --help\nDuplicate specification \"cc-cover|cc-cover!\" for option \"cc-cover\"\nDuplicate specification \"no-cc-cover\" for option \"no-cc-cover\"\nDuplicate specification \"to-cover|to-cover!\" for option \"to-cover\"\nDuplicate specification \"no-annotate\" for option \"no-annotate\"\nDuplicate specification \"no-format-patch\" for option \"no-format-patch\"\nDuplicate specification \"no-signed-off-cc|no-signed-off-by-cc\" for option \"no-signed-off-cc\"\nDuplicate specification \"no-signed-off-cc|no-signed-off-by-cc\" for option \"no-signed-off-by-cc\"\nDuplicate specification \"no-validate\" for option \"no-validate\"\nDuplicate specification \"no-chain-reply-to\" for option \"no-chain-reply-to\"\n```\n\n`\"option!\" => \\$value`\n\n*automatically* supports both `--option` and `--no-option` and `--nooption`\n\nSee the docs for Getopt::Long:\n```\n The argument specification can be\n\n !   The option does not take an argument and may be negated by\n     prefixing it with \"no\" or \"no-\". E.g. \"foo!\" will allow \"--foo\" (a\n     value of 1 will be assigned) as well as \"--nofoo\" and \"--no-foo\" (a\n     value of 0 will be assigned). If the option has aliases, this\n     applies to the aliases as well.\n\n     Using negation on a single letter option when bundling is in effect\n     is pointless and will result in a warning.\n```\n\nSigned-off-by: H.Merijn Brand - Tux <linux@tux.freedom.nl>\n---\n git-send-email.perl | 14 ++------------\n 1 file changed, 2 insertions(+), 12 deletions(-)\n\ndiff --git a/git-send-email.perl b/git-send-email.perl\nindex d24e981d61..125f49cd08 100755\n--- a/git-send-email.perl\n+++ b/git-send-email.perl\n@@ -491,7 +491,6 @@ sub config_regexp {\n \t\t    \"bcc=s\" => \\@getopt_bcc,\n \t\t    \"no-bcc\" => \\$no_bcc,\n \t\t    \"chain-reply-to!\" => \\$chain_reply_to,\n-\t\t    \"no-chain-reply-to\" => sub {$chain_reply_to = 0},\n \t\t    \"sendmail-cmd=s\" => \\$sendmail_cmd,\n \t\t    \"smtp-server=s\" => \\$smtp_server,\n \t\t    \"smtp-server-option=s\" => \\@smtp_server_options,\n@@ -506,36 +505,27 @@ sub config_regexp {\n \t\t    \"smtp-auth=s\" => \\$smtp_auth,\n \t\t    \"no-smtp-auth\" => sub {$smtp_auth = 'none'},\n \t\t    \"annotate!\" => \\$annotate,\n-\t\t    \"no-annotate\" => sub {$annotate = 0},\n \t\t    \"compose\" => \\$compose,\n \t\t    \"quiet\" => \\$quiet,\n \t\t    \"cc-cmd=s\" => \\$cc_cmd,\n \t\t    \"header-cmd=s\" => \\$header_cmd,\n \t\t    \"no-header-cmd\" => \\$no_header_cmd,\n \t\t    \"suppress-from!\" => \\$suppress_from,\n-\t\t    \"no-suppress-from\" => sub {$suppress_from = 0},\n \t\t    \"suppress-cc=s\" => \\@suppress_cc,\n \t\t    \"signed-off-cc|signed-off-by-cc!\" => \\$signed_off_by_cc,\n-\t\t    \"no-signed-off-cc|no-signed-off-by-cc\" => sub {$signed_off_by_cc = 0},\n-\t\t    \"cc-cover|cc-cover!\" => \\$cover_cc,\n-\t\t    \"no-cc-cover\" => sub {$cover_cc = 0},\n-\t\t    \"to-cover|to-cover!\" => \\$cover_to,\n-\t\t    \"no-to-cover\" => sub {$cover_to = 0},\n+\t\t    \"cc-cover!\" => \\$cover_cc,\n+\t\t    \"to-cover!\" => \\$cover_to,\n \t\t    \"confirm=s\" => \\$confirm,\n \t\t    \"dry-run\" => \\$dry_run,\n \t\t    \"envelope-sender=s\" => \\$envelope_sender,\n \t\t    \"thread!\" => \\$thread,\n-\t\t    \"no-thread\" => sub {$thread = 0},\n \t\t    \"validate!\" => \\$validate,\n-\t\t    \"no-validate\" => sub {$validate = 0},\n \t\t    \"transfer-encoding=s\" => \\$target_xfer_encoding,\n \t\t    \"format-patch!\" => \\$format_patch,\n-\t\t    \"no-format-patch\" => sub {$format_patch = 0},\n \t\t    \"8bit-encoding=s\" => \\$auto_8bit_encoding,\n \t\t    \"compose-encoding=s\" => \\$compose_encoding,\n \t\t    \"force\" => \\$force,\n \t\t    \"xmailer!\" => \\$use_xmailer,\n-\t\t    \"no-xmailer\" => sub {$use_xmailer = 0},\n \t\t    \"batch-size=i\" => \\$batch_size,\n \t\t    \"relogin-delay=i\" => \\$relogin_delay,\n \t\t    \"git-completion-helper\" => \\$git_completion_helper,\n-- \n2.42.1\n\n"},{"id":"485144","messageId":"20231125094429.12025-1-linux@tux.freedom.nl","threadId":"60558","inReplyTo":null,"subject":"[PATCH 0/1] git-send-email causes failures because of wrong option specifications","fromName":"H.Merijn Brand - Tux","fromEmail":"linux@tux.freedom.nl","sentAt":"2023-11-25T09:44:28Z","receivedAt":"2023-11-25T09:53:25Z","isPatch":true,"sender":{"key":"linux@tux.freedom.nl","avatar":"https://gravatar.com/avatar/2c89aaef31466fa10e55c481a4b875828a741dd42413cbcf61aa1e6c0cbfa3bd?d=mp&s=160"},"body":"*** BLURB HERE ***\n\nH.Merijn Brand - Tux (1):\n  git-send-email causes failures because of wrong option specifications\n\n git-send-email.perl | 14 ++------------\n 1 file changed, 2 insertions(+), 12 deletions(-)\n\n-- \n2.43.0\n\n"},{"id":"485149","messageId":"CAPig+cQq0myrGFro_MO8H+x8W52UuivX=TzShxb5diVp2nLh7g@mail.gmail.com","threadId":"60558","inReplyTo":"20231125094429.12025-2-linux@tux.freedom.nl","subject":"Re: [PATCH 1/1] git-send-email causes failures because of wrong option specifications","fromName":"Eric Sunshine","fromEmail":"sunshine@sunshineco.com","sentAt":"2023-11-26T02:39:11Z","receivedAt":"2023-11-26T02:39:23Z","isPatch":true,"sender":{"key":"sunshine@sunshineco.com","avatar":"https://avatars.githubusercontent.com/u/163641?v=4"},"body":"On Sat, Nov 25, 2023 at 4:52 AM H.Merijn Brand - Tux\n<linux@tux.freedom.nl> wrote:\n> ...\n> git-2.43.0 🐧 perl -Iperl git-send-email.perl --help\n> Duplicate specification \"cc-cover|cc-cover!\" for option \"cc-cover\"\n> Duplicate specification \"no-cc-cover\" for option \"no-cc-cover\"\n> ...\n> Signed-off-by: H.Merijn Brand - Tux <linux@tux.freedom.nl>\n> ---\n> diff --git a/git-send-email.perl b/git-send-email.perl\n> @@ -506,36 +505,27 @@ sub config_regexp {\n> -                   \"no-signed-off-cc|no-signed-off-by-cc\" => sub {$signed_off_by_cc = 0},\n> -                   \"cc-cover|cc-cover!\" => \\$cover_cc,\n> -                   \"no-cc-cover\" => sub {$cover_cc = 0},\n> -                   \"to-cover|to-cover!\" => \\$cover_to,\n> -                   \"no-to-cover\" => sub {$cover_to = 0},\n> +                   \"cc-cover!\" => \\$cover_cc,\n> +                   \"to-cover!\" => \\$cover_to,\n\nThanks for submitting a patch to address this issue. It matches very\nclosely an earlier patch[1] addressing the same purpose which has\nalready made it into Junio's \"next\" branch.\n\n[1]: https://lore.kernel.org/git/20231116193014.470420-3-tmz@pobox.com/\n"}]}