[PATCH 0/1] upgrade: Allow several regexps (fix #44928).

DoneSubmitted by zimoun.
Details
2 participants
  • Mathieu Othacehe
  • zimoun
Owner
unassigned
Severity
normal
Z
Z
zimoun wrote on 28 Nov 2020 21:26
(address . guix-patches@gnu.org)(name . zimoun)(address . zimon.toutoune@gmail.com)
20201128202631.27734-1-zimon.toutoune@gmail.com
Dear,

Fixes https://bugs.gnu.org/44928 describing that the 2nd raises an error:

$ guix upgrade foo bar
guix upgrade: error: bar: extraneous argument

And it is not the case with "guix package -u foo bar". I am not convinced by
the patch but after thinking a bit, the 'match' does not seem necessary
because the options are correctly handled by SRFI-37 and any extra term is
potentially an other regexp. The 'opts' is correctly formed and then
"guix-package" does all the job.

Well, I have been too lazy to create something in the test suite; someone
should do. :-) Testing "guix package --upgrade" and "guix upgrade". Maybe a
v2 of this tiny patch? ;-)


Feedback welcome.

All the best,
simon


zimoun (1):
upgrade: Allow several regexps.

guix/scripts/upgrade.scm | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)


base-commit: 8ea2d7c2fa4d4ad7b4cf522fa259561beeeda072
--
2.29.2
Z
Z
zimoun wrote on 28 Nov 2020 21:32
[PATCH 1/1] upgrade: Allow several regexps.
(address . 44931@debbugs.gnu.org)(name . zimoun)(address . zimon.toutoune@gmail.com)
20201128203245.30190-1-zimon.toutoune@gmail.com
Reported by Luis Felipe <luis.felipe.la@protonmail.com>.

* guix/scripts/upgrade.scm (guix-upgrade): Allow several regexps and remove
"extraneous arguement" check.
---
guix/scripts/upgrade.scm | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

Toggle diff (30 lines)
diff --git a/guix/scripts/upgrade.scm b/guix/scripts/upgrade.scm
index dcbcb2ab09..0eaae01e46 100644
--- a/guix/scripts/upgrade.scm
+++ b/guix/scripts/upgrade.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -76,13 +77,9 @@ This is an alias for 'guix package -u'.\n"))
   (define (handle-argument arg result arg-handler)
     ;; Accept at most one non-option argument, and treat it as an upgrade
     ;; regexp.
-    (match (assq-ref result 'upgrade)
-      (#f
-       (values (alist-cons 'upgrade arg
-                           (alist-delete 'upgrade result))
+    (values (alist-cons 'upgrade arg
+                           (delete '(upgrade . #f) result))
                arg-handler))
-      (_
-       (leave (G_ "~A: extraneous argument~%") arg))))
 
   (define opts
     (parse-command-line args %options
-- 
2.29.2
M
M
Mathieu Othacehe wrote on 1 Dec 2020 11:36
(name . zimoun)(address . zimon.toutoune@gmail.com)(address . 44931-done@debbugs.gnu.org)
87h7p53jal.fsf@gnu.org
Hey zimoun,

Toggle quote (3 lines)
> + (values (alist-cons 'upgrade arg
> + (delete '(upgrade . #f) result))

I fixed the indentation and the matching commentary and pushed as
86971616c139597ffa9e20acc75533ff90176450.

Thanks,

Mathieu
Closed
Z
Z
zimoun wrote on 1 Dec 2020 13:42
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 44931-done@debbugs.gnu.org)
86k0u1vgrw.fsf@gmail.com
Hi Mathieu,

On Tue, 01 Dec 2020 at 11:36, Mathieu Othacehe <othacehe@gnu.org> wrote:

Toggle quote (6 lines)
>> + (values (alist-cons 'upgrade arg
>> + (delete '(upgrade . #f) result))
>
> I fixed the indentation and the matching commentary and pushed as
> 86971616c139597ffa9e20acc75533ff90176450.

It is weird: I should miss something in my workflow because it is the
second time if not more that you fix the indentation. Anyway!

Thank,
simon
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 44931@debbugs.gnu.org