X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/e92e03e2e6b892e6dc7a931fe0e70de9315bd302..2735ea768aa812998a9498cf411563f118bd6ad6:/src/nominatim_db/cli.py diff --git a/src/nominatim_db/cli.py b/src/nominatim_db/cli.py index 9a54f338..f5f74208 100644 --- a/src/nominatim_db/cli.py +++ b/src/nominatim_db/cli.py @@ -25,6 +25,7 @@ from .clicmd.args import NominatimArgs, Subcommand LOG = logging.getLogger() + class CommandlineParser: """ Wraps some of the common functions for parsing the command line and setting up subcommands. @@ -57,7 +58,6 @@ class CommandlineParser: group.add_argument('-j', '--threads', metavar='NUM', type=int, help='Number of parallel threads to use') - def nominatim_version_text(self) -> str: """ Program name and version number as string """ @@ -66,7 +66,6 @@ class CommandlineParser: text += f' ({version.GIT_COMMIT_HASH})' return text - def add_subcommand(self, name: str, cmd: Subcommand) -> None: """ Add a subcommand to the parser. The subcommand must be a class with a function add_args() that adds the parameters for the @@ -82,7 +81,6 @@ class CommandlineParser: parser.set_defaults(command=cmd) cmd.add_args(parser) - def run(self, **kwargs: Any) -> int: """ Parse the command line arguments of the program and execute the appropriate subcommand. @@ -111,8 +109,7 @@ class CommandlineParser: args.config = Configuration(args.project_dir, environ=kwargs.get('environ', os.environ)) - args.config.set_libdirs(module=kwargs['module_dir'], - osm2pgsql=kwargs['osm2pgsql_path']) + args.config.set_libdirs(osm2pgsql=kwargs['osm2pgsql_path']) log = logging.getLogger() log.warning('Using project directory: %s', str(args.project_dir)) @@ -120,14 +117,10 @@ class CommandlineParser: try: ret = args.command.run(args) - if args.config.TOKENIZER == 'legacy': - log.warning('WARNING: the "legacy" tokenizer is deprecated ' - 'and will be removed in Nominatim 5.0.') - return ret except UsageError as exception: if log.isEnabledFor(logging.DEBUG): - raise # use Python's exception printing + raise # use Python's exception printing log.fatal('FATAL: %s', exception) # If we get here, then execution has failed in some way. @@ -144,7 +137,6 @@ class CommandlineParser: # a subcommand. # # No need to document the functions each time. -# pylint: disable=C0111 class AdminServe: """\ Start a simple web server for serving the API. @@ -169,15 +161,13 @@ class AdminServe: choices=('falcon', 'starlette'), help='Webserver framework to run. (default: falcon)') - def run(self, args: NominatimArgs) -> int: asyncio.run(self.run_uvicorn(args)) return 0 - async def run_uvicorn(self, args: NominatimArgs) -> None: - import uvicorn # pylint: disable=import-outside-toplevel + import uvicorn server_info = args.server.split(':', 1) host = server_info[0] @@ -231,7 +221,7 @@ def get_set_parser() -> CommandlineParser: parser.add_subcommand('details', apicmd.APIDetails()) parser.add_subcommand('status', apicmd.APIStatus()) except ModuleNotFoundError as ex: - if not ex.name or 'nominatim_api' not in ex.name: # pylint: disable=E1135 + if not ex.name or 'nominatim_api' not in ex.name: raise ex parser.parser.epilog = \ @@ -240,7 +230,6 @@ def get_set_parser() -> CommandlineParser: '\n export, convert, serve, search, reverse, lookup, details, status'\ "\n\nRun 'pip install nominatim-api' to install the package." - return parser