From 92886fb8d8104d3a56d370bb0a72a51062bda81a Mon Sep 17 00:00:00 2001 From: Joscha Date: Wed, 19 May 2021 17:32:23 +0200 Subject: [PATCH] Implement --version flag --- PFERD/__main__.py | 10 ++++++++++ PFERD/crawler.py | 4 ++-- PFERD/version.py | 3 ++- setup.cfg | 2 +- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/PFERD/__main__.py b/PFERD/__main__.py index 5815f40..54228a5 100644 --- a/PFERD/__main__.py +++ b/PFERD/__main__.py @@ -6,8 +6,14 @@ from pathlib import Path from .config import Config, ConfigDumpException, ConfigLoadException from .output_dir import OnConflict, Redownload from .pferd import Pferd +from .version import NAME, VERSION GENERAL_PARSER = argparse.ArgumentParser(add_help=False) +GENERAL_PARSER.add_argument( + "--version", + action="store_true", + help="print version and exit" +) GENERAL_PARSER.add_argument( "--config", "-c", type=Path, @@ -211,6 +217,10 @@ def prune_crawlers( def main() -> None: args = PARSER.parse_args() + if args.version: + print(f"{NAME} {VERSION}") + exit() + try: config = Config(load_parser(args)) except ConfigLoadException: diff --git a/PFERD/crawler.py b/PFERD/crawler.py index 96745d1..adfe74b 100644 --- a/PFERD/crawler.py +++ b/PFERD/crawler.py @@ -14,7 +14,7 @@ from .limiter import Limiter from .logging import ProgressBar, log from .output_dir import FileSink, OnConflict, OutputDirectory, Redownload from .transformer import Transformer -from .version import __version__ +from .version import NAME, VERSION class CrawlWarning(Exception): @@ -275,7 +275,7 @@ class HttpCrawler(Crawler): pass async with aiohttp.ClientSession( - headers={"User-Agent": f"pferd/{__version__}"}, + headers={"User-Agent": f"{NAME}/{VERSION}"}, cookie_jar=cookie_jar, ) as session: self.session = session diff --git a/PFERD/version.py b/PFERD/version.py index 528787c..e26dabb 100644 --- a/PFERD/version.py +++ b/PFERD/version.py @@ -1 +1,2 @@ -__version__ = "3.0.0" +NAME = "PFERD" +VERSION = "3.0.0" diff --git a/setup.cfg b/setup.cfg index f6b64ea..cb85ab0 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,6 +1,6 @@ [metadata] name = PFERD -version = attr: PFERD.version.__version__ +version = attr: PFERD.version.VERSION [options] packages = PFERD