1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
|
Index: cclib/.github/workflows/cclib_docs_push.yml
===================================================================
--- cclib.orig/.github/workflows/cclib_docs_push.yml 2025-09-20 14:33:51.000000000 +0200
+++ cclib/.github/workflows/cclib_docs_push.yml 2025-09-20 14:35:16.373517740 +0200
@@ -25,10 +25,6 @@
apt-get update && apt-get install -y openssh-client
- name: Checkout
uses: actions/checkout@v4
- with:
- # so versioningit can figure out the version
- fetch-depth: 0
- fetch-tags: true
- name: Allow repo access (see https://github.com/actions/checkout/issues/760)
run: |
git config --global --add safe.directory /__w/cclib/cclib
Index: cclib/.gitignore
===================================================================
--- cclib.orig/.gitignore 2025-09-20 14:33:51.000000000 +0200
+++ cclib/.gitignore 2025-09-20 14:35:17.914472592 +0200
@@ -12,4 +12,3 @@
.DS_Store
venv
.idea
-cclib/_version.py
Index: cclib/MANIFEST.in
===================================================================
--- cclib.orig/MANIFEST.in 2025-09-20 14:33:51.000000000 +0200
+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
@@ -1,5 +0,0 @@
-include ANNOUNCE
-include THANKS
-graft tools
-prune test
-global-exclude *.py[cod]
Index: cclib/cclib/__init__.py
===================================================================
--- cclib.orig/cclib/__init__.py 2025-09-20 14:33:51.000000000 +0200
+++ cclib/cclib/__init__.py 2025-09-20 14:35:17.914888310 +0200
@@ -17,7 +17,7 @@
as well as example methods that take parsed data as input.
"""
-from cclib._version import __version__
+__version__ = "1.8.1"
# isort: off
from cclib import parser, progress, method, bridge, io
Index: cclib/manifest.py
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ cclib/manifest.py 2025-09-20 14:35:17.915072878 +0200
@@ -0,0 +1,26 @@
+# Copyright (c) 2024, the cclib development team
+#
+# This file is part of cclib (http://cclib.github.io) and is distributed under
+# the terms of the BSD 3-Clause License.
+
+"""Create a MANIFEST file for distributing soruces with distutils."""
+
+import glob
+import os
+from pathlib import Path
+
+files = ["ANNOUNCE", "CHANGELOG", "LICENSE", "README.md", "THANKS"]
+files += ["pyproject.toml", "setup.py"]
+
+source = "cclib"
+files.extend([os.path.join(source, fname) for fname in ["__init__.py", "py.typed"]])
+
+folders = ["bridge", "io", "method", "parser", "progress"]
+for folder in folders:
+ files.extend(glob.glob(os.path.join(source, folder, "*.py")))
+
+for f in files:
+ if not os.path.isfile(f):
+ print(f"{f} does not exist")
+
+Path("MANIFEST").write_text("\n".join(files), encoding="utf-8")
Index: cclib/pyproject.toml
===================================================================
--- cclib.orig/pyproject.toml 2025-09-20 14:33:51.000000000 +0200
+++ cclib/pyproject.toml 2025-09-20 14:35:17.915412303 +0200
@@ -1,6 +1,6 @@
[project]
name = "cclib"
-dynamic = ["version"]
+version = "1.8.1"
description = "parsers and algorithms for computational chemistry"
readme = "README.md"
authors = [
@@ -64,7 +64,7 @@
all = ["cclib[bridges]"]
[build-system]
-requires = ["setuptools >= 61.0", "versioningit~=2.0"]
+requires = ["setuptools >= 61.0"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
@@ -170,16 +170,3 @@
"common",
]
ignore_missing_imports = true
-
-[tool.versioningit.format]
-method = {module = "versioningit_override", value = "cclib_format", module-dir = "tools"}
-
-[tool.versioningit.template-fields.version-tuple]
-pep440 = true
-
-[tool.versioningit.vcs]
-method = "git"
-match = ["v*"]
-
-[tool.versioningit.write]
-file = "cclib/_version.py"
Index: cclib/tools/versioningit_override.py
===================================================================
--- cclib.orig/tools/versioningit_override.py 2025-09-20 14:32:05.586269271 +0200
+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
@@ -1,54 +0,0 @@
-# Copyright (c) 2024, the cclib development team
-#
-# This file is part of cclib (http://cclib.github.io) and is distributed under
-# the terms of the BSD 3-Clause License.
-from os import getenv
-from typing import Any, Dict
-
-from versioningit import VCSDescription
-from versioningit.basics import DEFAULT_FORMATS
-
-_ENVVARNAME = "VERSIONINGIT_FOR_PACKAGE_INDEX"
-
-
-def cclib_format(
- *, description: VCSDescription, base_version: str, next_version: str, params: Dict[str, Any]
-) -> str:
- """Override the formation of the version string created by versioningit.
-
- The default version strings are not suitable for uploading to (Test)PyPI,
- which does not accept 'local' PEP 440 strings. If the environment
- variable 'VERSIONINGIT_FOR_PACKAGE_INDEX' is set to a truthy value, a
- simplified version string is formed that counts the number of commits
- since the last tag. This is safe since we only push to TestPyPI on
- commits (merges) to the default branch, and pushing to PyPI only happens
- for tags when the base version is used and this code is never even
- executed. Because of this and it only making sense to run with this
- setting in continuous integration, 'dirty' builds are not allowed.
-
- When building normally, the version strings are the defaults but do not
- include mention of the VCS used (Git).
- """
- state = description.state
- assert state in {"distance", "dirty", "distance-dirty"}
-
- if getenv(_ENVVARNAME, "False").lower() in ("true", "1", "t"):
- fmt_distance = "{base_version}.post{distance}"
- if state != "distance":
- raise RuntimeError("dirty state doesn't make sense when building for a package index")
- else:
- # Default but missing {vcs} before {rev}
- fmt_distance = "{base_version}.post{distance}+{rev}"
- # Default
- fmt_dirty = DEFAULT_FORMATS["dirty"]
- # Default but missing {vcs} before {rev}
- fmt_distance_dirty = "{base_version}.post{distance}+{rev}.d{build_date:%Y%m%d}"
-
- if state == "distance":
- fmt = fmt_distance
- elif state == "dirty":
- fmt = fmt_dirty
- elif state == "distance-dirty":
- fmt = fmt_distance_dirty
-
- return fmt.format_map({**description.fields, "base_version": base_version})
|