update_version.py 888 B

123456789101112131415161718192021222324
  1. #!/usr/bin/env python3
  2. import sys
  3. from datetime import datetime, timezone
  4. from pathlib import Path
  5. if __name__ == '__main__':
  6. version = sys.argv[1].lstrip('v')
  7. path = Path('pyproject.toml')
  8. lines = path.read_text(encoding='utf-8').splitlines()
  9. for i, line in enumerate(lines):
  10. if line.startswith('version = '):
  11. lines[i] = f'version = "{version}-dev"'
  12. break
  13. path.write_text('\n'.join(lines) + '\n', encoding='utf-8')
  14. path = Path('CITATION.cff')
  15. lines = path.read_text(encoding='utf-8').splitlines()
  16. for i, line in enumerate(lines):
  17. if line.startswith('version: '):
  18. lines[i] = f'version: {version}'
  19. if line.startswith('date-released: '):
  20. lines[i] = f'date-released: "{datetime.now(timezone.utc).strftime(r"%Y-%m-%d")}"'
  21. path.write_text('\n'.join(lines) + '\n', encoding='utf-8')