Move get_version() to version module (#4270)
This commit is contained in:
parent
74a230dae9
commit
839e6bfc55
|
|
@ -6,7 +6,6 @@ import urllib.error
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
from argparse import ArgumentParser, Namespace
|
from argparse import ArgumentParser, Namespace
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from importlib.metadata import version
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Any, Self
|
from typing import Any, Self
|
||||||
from urllib.request import Request, urlopen
|
from urllib.request import Request, urlopen
|
||||||
|
|
@ -28,6 +27,7 @@ from archinstall.lib.models.users import Password, User, UserSerialization
|
||||||
from archinstall.lib.output import debug, error, logger, warn
|
from archinstall.lib.output import debug, error, logger, warn
|
||||||
from archinstall.lib.plugins import load_plugin
|
from archinstall.lib.plugins import load_plugin
|
||||||
from archinstall.lib.translationhandler import Language, tr, translation_handler
|
from archinstall.lib.translationhandler import Language, tr, translation_handler
|
||||||
|
from archinstall.lib.version import get_version
|
||||||
|
|
||||||
|
|
||||||
@p_dataclass
|
@p_dataclass
|
||||||
|
|
@ -263,7 +263,7 @@ class ArchConfigHandler:
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self._config = ArchConfig.from_config(config, args)
|
self._config = ArchConfig.from_config(config, args)
|
||||||
self._config.version = self._get_version()
|
self._config.version = get_version()
|
||||||
except ValueError as err:
|
except ValueError as err:
|
||||||
warn(str(err))
|
warn(str(err))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
@ -288,12 +288,6 @@ class ArchConfigHandler:
|
||||||
def print_help(self) -> None:
|
def print_help(self) -> None:
|
||||||
self._parser.print_help()
|
self._parser.print_help()
|
||||||
|
|
||||||
def _get_version(self) -> str:
|
|
||||||
try:
|
|
||||||
return version('archinstall')
|
|
||||||
except Exception:
|
|
||||||
return 'Archinstall version not found'
|
|
||||||
|
|
||||||
def _define_arguments(self) -> ArgumentParser:
|
def _define_arguments(self) -> ArgumentParser:
|
||||||
parser = ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
|
parser = ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
|
|
@ -301,7 +295,7 @@ class ArchConfigHandler:
|
||||||
'--version',
|
'--version',
|
||||||
action='version',
|
action='version',
|
||||||
default=False,
|
default=False,
|
||||||
version='%(prog)s ' + self._get_version(),
|
version='%(prog)s ' + get_version(),
|
||||||
)
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--config',
|
'--config',
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ from importlib import metadata
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
from archinstall.lib.output import error, info, warn
|
from archinstall.lib.output import error, info, warn
|
||||||
|
from archinstall.lib.version import get_version
|
||||||
|
|
||||||
plugins = {}
|
plugins = {}
|
||||||
|
|
||||||
|
|
@ -94,11 +95,9 @@ def load_plugin(path: Path) -> None:
|
||||||
namespace = _import_via_path(localized)
|
namespace = _import_via_path(localized)
|
||||||
|
|
||||||
if namespace and namespace in sys.modules:
|
if namespace and namespace in sys.modules:
|
||||||
from archinstall.lib.args import arch_config_handler
|
|
||||||
|
|
||||||
# Version dependency via __archinstall__version__ variable (if present) in the plugin
|
# Version dependency via __archinstall__version__ variable (if present) in the plugin
|
||||||
# Any errors in version inconsistency will be handled through normal error handling if not defined.
|
# Any errors in version inconsistency will be handled through normal error handling if not defined.
|
||||||
version = arch_config_handler.config.version
|
version = get_version()
|
||||||
|
|
||||||
if version is not None:
|
if version is not None:
|
||||||
version_major_and_minor = version.rsplit('.', 1)[0]
|
version_major_and_minor = version.rsplit('.', 1)[0]
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
from importlib.metadata import version
|
||||||
|
|
||||||
|
|
||||||
|
def get_version() -> str:
|
||||||
|
try:
|
||||||
|
return version('archinstall')
|
||||||
|
except Exception:
|
||||||
|
return 'Archinstall version not found'
|
||||||
Loading…
Reference in New Issue