@@ -5,32 +5,49 @@ set -eu
55declare -r package=" lua-evdev"
66
77declare version=" ${1:- } "
8+ declare rockspec_version=" ${version} "
9+
810if [[ -z " ${version} " ]]; then
911 echo " missing version" >&2
1012 exit 1
1113fi
14+
1215if [[ " ${version} " != * " -" * ]]; then
13- version=" ${version} -1"
16+ rockspec_version=" ${version} -1"
17+ else
18+ version=" ${version%% -* } "
1419fi
1520
21+ if [[ ! " ${version} " =~ ^[0-9]+.[0-9]+.[0-9]+$ ]]; then
22+ echo " invalid version: ${version} " >&2
23+ exit 1
24+ fi
1625
17- declare -r dev_rockspec=" rockspecs/${package} -dev-1.rockspec"
18- declare -r rockspec=" rockspecs/${package} -${version} .rockspec"
26+ if [[ ! " ${rockspec_version} " =~ ^${version} -[1-9]{1,}$ ]]; then
27+ echo " invalid rockspec version: ${rockspec_version} " >&2
28+ exit 1
29+ fi
1930
20- if test -f ${rockspec} ; then
21- echo " already exists: ${rockspec } " >&2
31+ if test -n " $( git tag -l " ${rockspec_version} " ) " ; then
32+ echo " rockspec version already exists: ${rockspec_version } " >&2
2233 exit 1
2334fi
2435
25- cp ${dev_rockspec} ${rockspec}
26- script=" /^version/s|\" [^\" ]\\ +\" |\" ${version} \" |"
27- sed -e " ${script} " -i ${rockspec}
28- script=" /^ \\ +tag = nil,/s|nil|version|"
29- sed -e " ${script} " -i ${rockspec}
36+ declare -r repo_rockspec=" ${package} .rockspec"
37+ declare -r rockspec=" ${package} -${rockspec_version} .rockspec"
38+
39+ ./scripts/make-rockspec.sh " ${rockspec_version} "
3040
3141luarocks make --no-install " ${rockspec} "
3242
33- git add ${rockspec}
43+ cp " ${rockspec} " " ${repo_rockspec} "
44+
45+ git add ${repo_rockspec}
3446
35- git commit -m " chore: release ${version} "
47+ git commit -m " chore: release ${rockspec_version} "
48+
49+ if test -n " $( git tag -l " ${version} " ) " ; then
50+ git tag --delete " ${version} "
51+ fi
3652git tag " ${version} " -m " ${version} "
53+ git tag " ${rockspec_version} " -m " ${rockspec_version} "
0 commit comments