From 22c0aef9c03d837a06c55f037e23bc211bd988b6 Mon Sep 17 00:00:00 2001 From: link2xt Date: Sun, 31 Mar 2024 15:59:54 +0000 Subject: [PATCH] build(python): remove setuptools_scm dependency We update version in several .toml and .json files on every release anyway, so updating pyproject.toml is easy. setuptools_scm makes it more difficult to build python packages for software distributions because it requires full git checkout with tags rather than just a worktree. It is also possible to remove or move tags after the release, so git revision no longer pins python package version if setuptools_scm is used. --- deltachat-rpc-client/pyproject.toml | 9 ++------- flake.nix | 2 -- python/pyproject.toml | 11 ++--------- scripts/set_core_version.py | 2 ++ 4 files changed, 6 insertions(+), 18 deletions(-) diff --git a/deltachat-rpc-client/pyproject.toml b/deltachat-rpc-client/pyproject.toml index bb2f3527f..9ff5b6116 100644 --- a/deltachat-rpc-client/pyproject.toml +++ b/deltachat-rpc-client/pyproject.toml @@ -1,9 +1,10 @@ [build-system] -requires = ["setuptools>=45", "setuptools_scm[toml]>=6.2"] +requires = ["setuptools>=45"] build-backend = "setuptools.build_meta" [project] name = "deltachat-rpc-client" +version = "1.136.6" description = "Python client for Delta Chat core JSON-RPC interface" classifiers = [ "Development Status :: 5 - Production/Stable", @@ -19,9 +20,6 @@ classifiers = [ "Topic :: Communications :: Chat", "Topic :: Communications :: Email" ] -dynamic = [ - "version" -] readme = "README.md" [tool.setuptools.package-data] @@ -32,9 +30,6 @@ deltachat_rpc_client = [ [project.entry-points.pytest11] "deltachat_rpc_client.pytestplugin" = "deltachat_rpc_client.pytestplugin" -[tool.setuptools_scm] -root = ".." - [tool.black] line-length = 120 diff --git a/flake.nix b/flake.nix index a4cdffd54..3ab77cef8 100644 --- a/flake.nix +++ b/flake.nix @@ -495,7 +495,6 @@ format = "pyproject"; propagatedBuildInputs = [ pkgs.python3Packages.setuptools - pkgs.python3Packages.setuptools_scm ]; }; @@ -513,7 +512,6 @@ ]; propagatedBuildInputs = [ pkgs.python3Packages.setuptools - pkgs.python3Packages.setuptools_scm pkgs.python3Packages.pkgconfig pkgs.python3Packages.cffi pkgs.python3Packages.imap-tools diff --git a/python/pyproject.toml b/python/pyproject.toml index 5e0bee124..2b5f3f36d 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -1,9 +1,10 @@ [build-system] -requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2", "cffi>=1.0.0", "pkgconfig"] +requires = ["setuptools>=45", "wheel", "cffi>=1.0.0", "pkgconfig"] build-backend = "setuptools.build_meta" [project] name = "deltachat" +version = "1.136.6" description = "Python bindings for the Delta Chat Core library using CFFI against the Rust-implemented libdeltachat" readme = "README.rst" requires-python = ">=3.7" @@ -26,9 +27,6 @@ dependencies = [ "pluggy", "requests", ] -dynamic = [ - "version" -] [project.urls] "Home" = "https://github.com/deltachat/deltachat-core-rust/" @@ -44,11 +42,6 @@ deltachat = [ "py.typed" ] -[tool.setuptools_scm] -root = ".." -tag_regex = '^(?Pv)?(?P[^\+]+)(?P.*)?$' -git_describe_command = "git describe --dirty --tags --long --match v*.*" - [tool.black] line-length = 120 diff --git a/scripts/set_core_version.py b/scripts/set_core_version.py index f63a35e22..d83d56494 100755 --- a/scripts/set_core_version.py +++ b/scripts/set_core_version.py @@ -73,6 +73,8 @@ def main(): "deltachat-jsonrpc/Cargo.toml", "deltachat-rpc-server/Cargo.toml", "deltachat-repl/Cargo.toml", + "python/pyproject.toml", + "deltachat-rpc-client/pyproject.toml", ] try: opts = parser.parse_args()