summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-17 14:36:40 +0900
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-19 10:07:24 +0900
commit271a8fc2499135c3f0198bf69c9f2a60f1961bf1 (patch)
tree6b5ddcba8572beb4ea87eb13715af4eeea7476d9 /tests
parentba540ca7dd386a5b83548adcb5bf3655a29fe493 (diff)
refresh: Allow specifying a partial version via the version specification.
* guix/scripts/refresh.scm (update-specification->update-spec): Flag the update-spec as partial when it is prefixed with '~'. * tests/guix-refresh.sh: Test it. Remove extraneous 'guix refresh' invocation. * doc/guix.texi (Invoking guix refresh): Document it. Change-Id: Iab4482d9367105f6ffcd2d6a49148736c93d53e4 Reviewed-by: Florian Pelz <pelzflorian@pelzflorian.de> Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/guix-refresh.sh19
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/guix-refresh.sh b/tests/guix-refresh.sh
index 0f1af8cae7..93db7bfab4 100644
--- a/tests/guix-refresh.sh
+++ b/tests/guix-refresh.sh
@@ -126,13 +126,30 @@ case "$(guix refresh -t test guile --target-version=2.0.0 2>&1)" in
*) false;;
esac
+guix refresh -t test guile=~2.0.0 # XXX: should return non-zero?
+case "$(guix refresh -t test guile=~2.0.0 2>&1)" in
+ *"failed to find"*"2.0.0"*) true;;
+ *) false;;
+esac
+
# Partial target version => select the newest release prefixed by it.
-guix refresh -t test guile --target-version=3 # XXX: should return non-zero?
case "$(guix refresh -t test guile --target-version=3 2>&1)" in
*"would be upgraded"*"3.13.3"*) true;;
*) false;;
esac
+# Partial spec version => select the newest release prefixed by it.
+case "$(guix refresh -t test guile=~3 2>&1)" in
+ *"would be upgraded"*"3.13.3"*) true;;
+ *) false;;
+esac
+
+# Conflicting --target-version and spec: spec wins
+case "$(guix refresh -t test guile=~3 2>&1)" in
+ *"would be upgraded"*"3.13.3"*) true;;
+ *) false;;
+esac
+
for spec in "guile=1.6.4" "guile@3=1.6.4"
do
guix refresh -t test "$spec"