# HG changeset patch # User Franz Glasner # Date 1740343237 -3600 # Node ID 39a19c0087080005d7be8f3144d5d66f69563702 # Parent b65d25882e44ab80833f4d4f438a1cff9952d755 Now dynamically the version attribute from setup.cfg diff -r b65d25882e44 -r 39a19c008708 _postprocess-sdist.py --- a/_postprocess-sdist.py Sun Feb 23 21:27:48 2025 +0100 +++ b/_postprocess-sdist.py Sun Feb 23 21:40:37 2025 +0100 @@ -5,18 +5,15 @@ from __future__ import print_function, absolute_import -import ast try: from configparser import ConfigParser except ImportError: from ConfigParser import SafeConfigParser as ConfigParser +import importlib import io import os import tarfile -import cutils -import cutils.util.walk - def main(): with io.open("setup.cfg", "rt", encoding="utf-8") as cfgfile: @@ -28,8 +25,14 @@ project_name = cp.get("metadata", "name") project_version = cp.get("metadata", "version") if project_version.startswith("attr:"): - assert project_version == "attr: cutils.__version__" - project_version = ast.literal_eval(repr(cutils.__version__)) + vermodname, dummy, vermodattr = (project_version[5:] + .strip() + .rpartition('.')) + assert dummy is not None and vermodattr is not None + vermod = importlib.import_module(vermodname) + project_version = getattr(vermod, vermodattr) + else: + assert False # # Compressed tar files cannot be modified by Python: make sure the # originally generated archive is uncompressed.