GNU bug report logs - #75871
[PATCH 0/1] Partial version support for 'guix refresh --target-version'.

Previous Next

Package: guix-patches;

Reported by: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Date: Sun, 26 Jan 2025 15:01:01 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#75871: closed ([PATCH 0/1] Partial version support for 'guix
 refresh --target-version'.)
Date: Fri, 28 Feb 2025 13:24:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Fri, 28 Feb 2025 22:23:16 +0900
with message-id <871pvii4or.fsf <at> gmail.com>
and subject line [bug#75871] [PATCH 0/1] Partial version support for 'guix refresh --target-version'.
has caused the debbugs.gnu.org bug report #75871,
regarding [PATCH 0/1] Partial version support for 'guix refresh --target-version'.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
75871: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=75871
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: guix-patches <at> gnu.org
Cc: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Subject: [PATCH 0/1] Partial version support for 'guix refresh
 --target-version'.
Date: Sun, 26 Jan 2025 23:59:33 +0900
Hello,

This adds support for providing incomplete version strings to 'guix refresh
--target-version', for example allowing to do:

$ guix refresh --target-version=46 evince
gnu/packages/gnome.scm:2710:13: evince would be upgraded from 44.3 to 46.3.1

The change looks massive because all the importers are adjusted to support
this, but the adjustments needed are mechanical and simple, hopefully making
the review not overly painful.  The most critical and complex bit may be in
the modified 'rewrite-url' procedure, which is covered by unit tests.

Maxim Cournoyer (1):
  refresh: Add support for partial target versions.

 doc/guix.texi             |  12 +++
 guix/gnu-maintenance.scm  | 120 ++++++++++++++-----------
 guix/import/composer.scm  |  59 ++++++------
 guix/import/cpan.scm      |   2 +-
 guix/import/cran.scm      |   4 +-
 guix/import/crate.scm     |  51 ++++++-----
 guix/import/egg.scm       |  33 +++----
 guix/import/elpa.scm      |   2 +-
 guix/import/gem.scm       |  29 ++++--
 guix/import/git.scm       | 103 +++++++++------------
 guix/import/github.scm    | 114 +++++++++++------------
 guix/import/gnome.scm     |  50 ++++-------
 guix/import/hackage.scm   |   2 +-
 guix/import/hexpm.scm     |  42 +++++----
 guix/import/kde.scm       |  57 ++++++------
 guix/import/launchpad.scm |  36 ++++----
 guix/import/minetest.scm  |   2 +-
 guix/import/opam.scm      |   2 +-
 guix/import/pypi.scm      |  25 ++++--
 guix/import/stackage.scm  |   2 +-
 guix/import/test.scm      |  15 ++--
 guix/import/texlive.scm   |  38 ++++----
 guix/import/utils.scm     |  20 ++++-
 guix/scripts/refresh.scm  | 185 ++++++++++++++++++++------------------
 guix/upstream.scm         |  26 +++---
 tests/gem.scm             |  22 +++++
 tests/gnu-maintenance.scm |  65 +++++++++++---
 tests/guix-refresh.sh     |  10 ++-
 tests/import-git.scm      |   4 +
 29 files changed, 629 insertions(+), 503 deletions(-)


base-commit: be058cf6fcf01be49e98b8a646e1ffdb34130db6
-- 
2.47.1



[Message part 3 (message/rfc822, inline)]
From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: 75871-done <at> debbugs.gnu.org
Subject: [bug#75871] [PATCH 0/1] Partial version support for 'guix refresh
 --target-version'.
Date: Fri, 28 Feb 2025 22:23:16 +0900
Hi,

[...]

>> Not an objection, but two questions.
>>
>> First, regarding the handling of multiple packages:  Does 
>>   $ guix refresh
>>     --target-version=46 evince epiphany gnome-shell … \
>>     --target-version=4 gtk …
>> do what one would expect and update evince, gnome-shell etc. to
>> 46.whatever and gtk etc. to 4.something?
>
> I don't think that's supported, at least I never considered this use
> case when --target-version was introduced.  I'm not sure what's the
> default behavior of our parser; perhaps it uses the last value provided?
>
>> Second, should we also have a postfix notation (e.g. evince~46 or
>> evince=46.*) to ease typing?
>
> I thought about adding something like 'evince=^46', which would be nice
> to have, but can/should be added separately given this change is already
> huge.

Pushed.  Now would be a good time to add the above :-).

-- 
Thanks,
Maxim


This bug report was last modified 86 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.