Mark H Weaver <m...@netris.org> skribis:

> I wrote:
>> Here's a preliminary patch that does two things:
>>
>> * Changes 'guix-build' and 'guix-package --install' so that only the
>>   newest packages will be considered (unless a version number is
>>   specified).
>>
>> * Implements 'guix-package --upgrade'.
>>
>> Although I'm not aware of any functional problems with this code, I'm
>> not entirely pleased with its organization.  Nonetheless, I wanted to
>> make it available for early testing and comments.
>>
>> I welcome suggestions on how to improve this code.
>
> Sorry, that patch had a problem in guix-build.  Here's a fixed version.

I haven’t actually tested, but it looks good to me!

I could have left ‘guix-build’ as is, because hackers should really use
-e when they want something specific, but I’m fine either way.

Could you update the doc, under “Invoking guix-package”, stating what
happens when giving a package name without a version number?

Minor remarks:

> +(define (find-newest-available-packages)
> +  "Return a vhash with elements of the form
> +  (name newest-version newest-package ...)
> +where the preferred package is listed first."

What about something like this:

  Return a vhash keyed by package names, and with associated values of
  the form

    (newest-version newest-package)

> +  (define (upgradeable? name current-version current-path)
> +    ;; Return #t if there is a newer version available, or if the
> +    ;; newest version if the same as the current one but the
> +    ;; output path would be different than the current path.

Try to mention the variables here, like:

  Return #t if there’s a version of package NAME newer than
  CURRENT-VERSION ...

Other than that, please push!

Thanks,
Ludo’.

Reply via email to