summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcell Meszaros2022-04-06 17:39:50 +0200
committerMarcell Meszaros2022-04-06 19:54:17 +0200
commit2b14a3829d560e31daf3aee86a36df52f9414861 (patch)
tree9ca050fc13f0542749d56e93616fd4c94522eddd
parent77959911da7acc51b8f40d735c112a83a315fb34 (diff)
downloadaur-2b14a3829d560e31daf3aee86a36df52f9414861.tar.gz
use git tag based version, also generate Python project version from that
Colorama Python project uses a version string not compliant with PEP 440. So we substitute it with a somewhat PEP 440 conformant string generated from Git tag, corresponding unequivocally to the package's pkgver.
-rw-r--r--.SRCINFO3
-rw-r--r--PKGBUILD42
2 files changed, 29 insertions, 16 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8ce7accfaebe..df17f703b9b5 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,8 @@
pkgbase = python2-colorama-git
pkgdesc = Simple cross-plaform colored terminal text in Python 2
- pkgver = 0.4.5.pre.0.4.1.r101.gaff7fb2
+ pkgver = 0.4.4.r50.gaff7fb2
pkgrel = 1
+ epoch = 1
url = https://github.com/tartley/colorama
arch = any
license = BSD
diff --git a/PKGBUILD b/PKGBUILD
index 1759dc7368f4..13ffe27c86a4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,8 +2,9 @@
# Contributor: jyantis <yantis@yantis.net>
pkgname=python2-colorama-git
-pkgver=0.4.5.pre.0.4.1.r101.gaff7fb2
+pkgver=0.4.4.r50.gaff7fb2
pkgrel=1
+epoch=1
pkgdesc='Simple cross-plaform colored terminal text in Python 2'
arch=('any')
url='https://github.com/tartley/colorama'
@@ -15,20 +16,7 @@ sha256sums=('SKIP')
provides=('python2-colorama')
conflicts=('python2-colorama')
-pkgver() {
- cd colorama
- set -o pipefail
- _gitversion=$( git describe --long | sed -r 's/([^-]*-g)/r\1/;s/-/./g' ||
- printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" )
-
- if [ -f "colorama/__init__.py" ]; then
- printf "%s.%s" "$(grep -R "__version__ =" colorama/__init__.py | awk -F\' '{print $2}')" $_gitversion | sed 's/-/./g'
- else
- printf "%s" $_gitversion
- fi
-}
-
-build() {
+prepare() {
cd colorama
# Patch any #!/usr/bin/python to #!/usr/bin/python2
@@ -36,7 +24,31 @@ build() {
sed -r -i 's_^#!.*/usr/bin/python(\s|$)_#!/usr/bin/python2_' $file
sed -r -i 's_^#!.*/usr/bin/env(\s)*python(\s|$)_#!/usr/bin/env python2_' $file
done
+}
+
+pkgver() {
+ cd colorama
+
+ # Generate git tag based version. Count only proper (v)#.#* [#=number] tags.
+ local _gitversion=$(git describe --long --tags --match '[v0-9][0-9.][0-9.]*' | sed -e 's|^v||')
+
+ # Generate Python-compatible SCM version from git version
+ local _py_project_scm_version=$(echo $_gitversion | sed \
+ -e 's|\-\([0-9]\+\)-\(g[0-9a-f]\+\)|.dev\1+\2|'
+ )
+
+ # Replace project version with generated Python-compatible SCM version
+ sed -i -e "s|^__version__.\+\$|__version__ = '${_py_project_scm_version}'|" './colorama/__init__.py'
+ # Format git-based version for pkgver
+ echo $_gitversion | sed \
+ -e 's|^\([0-9][0-9.]*\)-\([a-zA-Z]\+\)|\1\2|' \
+ -e 's|\([0-9]\+-g\)|r\1|' \
+ -e 's|-|.|g'
+}
+
+build() {
+ cd colorama
python2 setup.py build
}