# HG changeset patch # User Franz Glasner # Date 1735918360 -3600 # Node ID 7d8df8311e3be41fc50d92712e7be3594460ee49 # Parent 073e0faea599577e4cc02862e5b027df1cafcc77 Optimize argument parsing for the "version" command diff -r 073e0faea599 -r 7d8df8311e3b cutils/treesum.py --- a/cutils/treesum.py Fri Jan 03 16:22:59 2025 +0100 +++ b/cutils/treesum.py Fri Jan 03 16:32:40 2025 +0100 @@ -119,20 +119,22 @@ "This is an alias to \"generate\".") _populate_generate_arguments(genparser2) - vparser = subparsers.add_parser( + subparsers.add_parser( "version", help="Show the program's version number and exit", description="Show the program's version number and exit.") - vparser.add_argument( - "args", nargs=argparse.REMAINDER, help="IGNORED.") - opts = parser.parse_args(args=argv) + # Parse leniently to just check for "version" + opts, _dummy = parser.parse_known_args(args=argv) if opts.subcommand == "version": print("%s (rv:%s)" % (__version__, __revision__), file=sys.stdout) sys.exit(0) + # Reparse strictly + opts = parser.parse_args(args=argv) + if not opts.algorithm: opts.algorithm = util.argv2algo("blake2b-256")