mirror of
https://github.com/openwrt/packages.git
synced 2026-04-15 19:02:09 +00:00
python-vcs-versioning: add new package (version 1.0.1)
vcs-versioning provides the core VCS version inference logic that was extracted from setuptools-scm into a standalone library. This enables other build backends to use the same version inference without a setuptools dependency. Required as a new dependency for setuptools-scm >= 10.0.0. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
This commit is contained in:
committed by
Alexandru Ardelean
parent
20fbeb8bca
commit
89786f5c35
58
lang/python/python-vcs-versioning/Makefile
Normal file
58
lang/python/python-vcs-versioning/Makefile
Normal file
@@ -0,0 +1,58 @@
|
||||
#
|
||||
# Copyright (C) 2025 Alexandru Ardelean <ardeleanalex@gmail.com>
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
#
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=python-vcs-versioning
|
||||
PKG_VERSION:=1.0.1
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PYPI_NAME:=vcs-versioning
|
||||
PYPI_SOURCE_NAME:=vcs_versioning
|
||||
PKG_HASH:=bd597fd2c79dc4ea0a59fc6a525793acb7d2ba06ee64b80750b97e92b6bcf691
|
||||
|
||||
PKG_LICENSE:=MIT
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
|
||||
|
||||
PKG_HOST_ONLY:=1
|
||||
HOST_BUILD_DEPENDS:= \
|
||||
python3/host \
|
||||
python-hatchling/host \
|
||||
python-installer/host \
|
||||
python-packaging/host \
|
||||
python-typing-extensions/host
|
||||
|
||||
include ../pypi.mk
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
include ../python3-package.mk
|
||||
include ../python3-host-build.mk
|
||||
|
||||
define Package/python3-vcs-versioning
|
||||
SECTION:=lang
|
||||
CATEGORY:=Languages
|
||||
SUBMENU:=Python
|
||||
TITLE:=core version inference logic for VCS-based versioning
|
||||
URL:=https://github.com/pypa/setuptools-scm
|
||||
DEPENDS:= \
|
||||
+python3-light \
|
||||
+python3-packaging \
|
||||
+python3-typing-extensions
|
||||
BUILDONLY:=1
|
||||
endef
|
||||
|
||||
define Package/python3-vcs-versioning/description
|
||||
vcs-versioning provides the core VCS version inference logic used by
|
||||
setuptools-scm. It enables other build backends to use the same version
|
||||
inference without a setuptools dependency.
|
||||
endef
|
||||
|
||||
$(eval $(call Py3Package,python3-vcs-versioning))
|
||||
$(eval $(call BuildPackage,python3-vcs-versioning))
|
||||
$(eval $(call BuildPackage,python3-vcs-versioning-src))
|
||||
$(eval $(call HostBuild))
|
||||
26
lang/python/python-vcs-versioning/test.sh
Executable file
26
lang/python/python-vcs-versioning/test.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
|
||||
[ "$1" = "python3-vcs-versioning" ] || exit 0
|
||||
|
||||
python3 - << EOF
|
||||
import sys
|
||||
import vcs_versioning
|
||||
|
||||
if vcs_versioning.__version__ != "$2":
|
||||
print("Wrong version: " + vcs_versioning.__version__)
|
||||
sys.exit(1)
|
||||
|
||||
# Test core classes are importable
|
||||
from vcs_versioning import Configuration, ScmVersion, Version
|
||||
from vcs_versioning import DEFAULT_VERSION_SCHEME, DEFAULT_LOCAL_SCHEME
|
||||
|
||||
# Test Version parsing
|
||||
v = Version("1.2.3")
|
||||
assert str(v) == "1.2.3", f"Expected 1.2.3, got {v}"
|
||||
|
||||
# Test default schemes are set
|
||||
assert DEFAULT_VERSION_SCHEME is not None
|
||||
assert DEFAULT_LOCAL_SCHEME is not None
|
||||
|
||||
sys.exit(0)
|
||||
EOF
|
||||
Reference in New Issue
Block a user