update_version.py 850 B

123456789101112131415161718192021222324252627
  1. import os
  2. import subprocess
  3. def get_version():
  4. command = ["git", "describe", "--tags"]
  5. try:
  6. version = subprocess.check_output(command).decode().strip()
  7. version_parts = version.split("-")
  8. if len(version_parts) > 1 and version_parts[0].startswith("magic_pdf"):
  9. return version_parts[1]
  10. else:
  11. raise ValueError(f"Invalid version tag {version}. Expected format is magic_pdf-<version>-released.")
  12. except Exception as e:
  13. print(e)
  14. return "0.0.0"
  15. def write_version_to_commons(version):
  16. commons_path = os.path.join(os.path.dirname(__file__), 'magic_pdf', 'libs', 'version.py')
  17. with open(commons_path, 'w') as f:
  18. f.write(f'__version__ = "{version}"\n')
  19. if __name__ == '__main__':
  20. version_name = get_version()
  21. write_version_to_commons(version_name)