[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: perl-getopt-long version string contains a letter
From: |
Ludovic Courtès |
Subject: |
Re: perl-getopt-long version string contains a letter |
Date: |
Wed, 06 Mar 2019 16:56:29 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Hello,
Efraim Flashner <address@hidden> skribis:
> On Mon, Mar 04, 2019 at 05:54:38PM +0100, Ricardo Wurmus wrote:
>> Hi Guix,
>>
>> perl-getopt-long has a version string "v2.49.1". If we change this to
>> "2.49.1", will installed packages not be upgraded? What can be done in
>> this case?
>>
>
> As I've wrapped my head around it, Guix doesn't believe in "upgrades"
> and "downgrades", just in changes in dependencies. So if the version
> string loses the leading "v" I suppose ASCIIbetically v2.49.1 is a
> higher value than 2.49.1,
Indeed:
--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (version>? "v2.49.1" "2.49.1")
$21 = #t
--8<---------------cut here---------------end--------------->8---
Perhaps what could be done is to deprecate the package with “v2.49.1”,
like so:
(define-public x
(package
;; …
(version "2.49.1")))
(define w/wrong-version
(package
(inherit x)
(version "v2.49.1") ;wrong version string
(properties `((superseded . ,x)))))
That should cause upgrades from the wrong version to the new one, even
if the new one is not ‘version>?’.
Thoughts?
Ludo’.