summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarko Kreen2012-12-21 12:47:09 +0000
committerMarko Kreen2012-12-21 13:37:03 +0000
commitc854fd58c356bee949d0e351f2261f7426959093 (patch)
tree41e6e5d26cff98b9a271f38410c97de94bb10a4e
parent8a483ce73260f26c0898ecf57c58d5d4ac9e5f11 (diff)
Check module version consistency.
There are several places where verisons need to be mentioned, check all of them. Also let genpg.sh refuse to continue if there is version mismatch.
-rwxr-xr-xdebian/genpg.sh14
-rwxr-xr-xmisc/bumpver.py22
-rwxr-xr-xmisc/bumpver.sh14
-rwxr-xr-xmisc/checkver.sh27
4 files changed, 40 insertions, 37 deletions
diff --git a/debian/genpg.sh b/debian/genpg.sh
index 48c76571..55e7e79d 100755
--- a/debian/genpg.sh
+++ b/debian/genpg.sh
@@ -2,7 +2,17 @@
# generate per-version files
-test -f debian/genpg.sh && cd debian
+test -f debian/genpg.sh || {
+ echo "$0: Run it from top-level directory"
+ exit 1
+}
+
+./misc/checkver.sh || {
+ echo "$0: versions out of sync, stop"
+ exit 1
+}
+
+cd debian
for v in 8.3 8.4 9.0 9.1 9.2; do
@@ -60,3 +70,5 @@ if test "$v" = "9.1" -o "$v" = "9.2"; then
fi
done
+
+exit 0
diff --git a/misc/bumpver.py b/misc/bumpver.py
deleted file mode 100755
index d99553e0..00000000
--- a/misc/bumpver.py
+++ /dev/null
@@ -1,22 +0,0 @@
-#! /usr/bin/env python
-
-import sys, re
-
-def inc(m):
- v = int(m.group(1))
- return str(v + 1) + "'"
-
-func = open(sys.argv[1], 'r').read()
-
-rc = re.compile(r"([0-9]+)'")
-nfunc = rc.sub(inc, func)
-
-rc2 = re.compile(r"'([0-9.]+)'")
-nver = rc2.search(nfunc).group(1)
-
-#print func
-#print nfunc
-print nver
-
-open(sys.argv[1], 'w').write(nfunc)
-
diff --git a/misc/bumpver.sh b/misc/bumpver.sh
deleted file mode 100755
index bf2b48f0..00000000
--- a/misc/bumpver.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#! /bin/sh
-
-for s in pgq pgq_node pgq_coop londiste pgq_ext; do
- sver=$(git log --raw -n 1 sql/$s/functions | head -1)
- fn="sql/$s/functions/$s.version.sql"
- fver=$(git log --raw -n 1 "$fn" | head -1)
- test "$sver" = "$fver" && continue
-
- echo "$s needs new version"
- #nver=`./misc/bumpver.py "$fn"`
- #git commit -m "$s.version(): $nver" "$fn"
-done
-
-grep 'return ' sql/*/functions/*.version.sql
diff --git a/misc/checkver.sh b/misc/checkver.sh
new file mode 100755
index 00000000..3868ac9f
--- /dev/null
+++ b/misc/checkver.sh
@@ -0,0 +1,27 @@
+#! /bin/sh
+
+err=0
+
+for s in pgq pgq_node pgq_coop londiste pgq_ext; do
+ code_hash=$(git log --raw -n 1 sql/$s/functions | head -1)
+ fn="sql/$s/functions/$s.version.sql"
+ ver_hash=$(git log --raw -n 1 "$fn" | head -1)
+ test "${code_hash}" = "${ver_hash}" || echo "$s has code changes, needs new version"
+
+ ver_func=$(sed -n "s/.*return *'\(.*\)';/\1/;T;p" $fn)
+ ver_control=$(sed -n "s/default_version = '\(.*\)'/\1/;T;p" sql/$s/$s.control)
+ ver_make=$(sed -n "s/EXT_VERSION = \(.*\)/\1/;T;p" sql/$s/Makefile)
+
+ if test "${ver_func}|${ver_control}" = "${ver_make}|${ver_make}"; then
+ echo "$s: $ver_control"
+ else
+ echo "$s: version mismatch"
+ echo " Makefile: $ver_make"
+ echo " version(): $ver_func"
+ echo " control: $ver_control"
+ err=1
+ fi
+done
+
+exit $err
+