Added --version option.

This commit is contained in:
Chris Berkhout 2021-04-25 11:40:02 +02:00
parent f0c7b5a8f3
commit df9d0aeb85

View file

@ -2,13 +2,16 @@ import argparse
from datetime import datetime, timedelta from datetime import datetime, timedelta
from pricehist import outputs, sources from pricehist import outputs, sources
from pricehist import __version__
def cli(args=None): def cli(args=None):
parser = build_parser() parser = build_parser()
args = parser.parse_args() args = parser.parse_args()
if args.command == "sources": if args.version:
cmd_version()
elif args.command == "sources":
cmd_sources(args) cmd_sources(args)
elif args.command == "source": elif args.command == "source":
cmd_source(args) cmd_source(args)
@ -18,6 +21,10 @@ def cli(args=None):
parser.print_help() parser.print_help()
def cmd_version():
print(f"pricehist v{__version__}")
def cmd_sources(args): def cmd_sources(args):
width = max([len(identifier) for identifier in sources.by_id.keys()]) width = max([len(identifier) for identifier in sources.by_id.keys()])
for identifier, source in sources.by_id.items(): for identifier, source in sources.by_id.items():
@ -62,6 +69,13 @@ def build_parser():
parser = argparse.ArgumentParser(description="Fetch historical price data") parser = argparse.ArgumentParser(description="Fetch historical price data")
parser.add_argument(
"-v",
"--version",
action="store_true",
help="show version information",
)
subparsers = parser.add_subparsers(title="commands", dest="command") subparsers = parser.add_subparsers(title="commands", dest="command")
subparsers.add_parser("sources", help="list sources") subparsers.add_parser("sources", help="list sources")
@ -69,7 +83,7 @@ def build_parser():
source_parser = subparsers.add_parser("source", help="show source details") source_parser = subparsers.add_parser("source", help="show source details")
source_parser.add_argument( source_parser.add_argument(
"identifier", "identifier",
metavar="ID", metavar="SOURCE",
type=str, type=str,
choices=sources.by_id.keys(), choices=sources.by_id.keys(),
help="the source identifier", help="the source identifier",