def determine_asy_version() -> str:
version_base = determine_pkg_info.determine_asy_pkg_info(
BUILD_ROOT_DIRECTORY.parent / "configure.ac"
).get("version-base")
if not version_base:
return "0.0.0-SNAPSHOT"
return version_base
def build_verison_module(version_override: Optional[str] = None):
PY_VERSION_MODULE_DIR.mkdir(exist_ok=True)
make_init_py_at_dir(PY_VERSION_MODULE_DIR)
if version_override is not None:
version = version_override
else:
version = determine_asy_version()
with open(PY_VERSION_MODULE_DIR / "version.py", "w", encoding="utf-8") as f:
f.write(f'VERSION="{version}"\n')
def clean():
if PY_UI_FILE_DIR.exists():
shutil.rmtree(PY_UI_FILE_DIR)
if PY_ICONS_FILE_DIR.exists():
shutil.rmtree(PY_ICONS_FILE_DIR)
if PY_VERSION_MODULE_DIR.exists():
shutil.rmtree(PY_VERSION_MODULE_DIR)
def parse_args():
parser = argparse.ArgumentParser()
subparsers = parser.add_subparsers(help="subcommands", dest="subcommand")
version_parser = subparsers.add_parser(
"buildversionmodule", help="build version module"
)
build_parser = subparsers.add_parser("build", help="build command")
for subparser in [build_parser, version_parser]:
subparser.add_argument("--version-override", required=False, type=str)