diff mbox series

[bug#57460,06/20] refresh: Allow updating to a specific version (crate)

Message ID 389c12814d8768fbdd34772442c48c8fa2aa5690.1661691694.git.h.goebel@crazy-compilers.com
State New
Headers show
Series Refresh to specific version | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Hartmut Goebel Aug. 28, 2022, 1:18 p.m. UTC
* guix/import/crate.scm(latest-release): Rename to (import-release),
  add keyword-argument 'version'.
  If version is given, return an upstream-source for this version.
---
 guix/import/crate.scm | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Ludovic Courtès Sept. 24, 2022, 9:19 a.m. UTC | #1
For the commit subject line, please use something like:

  import: crate: Allow updates to a specific version.

(When in doubt about the subject prefix, check ‘git log’ on the file.)

Hartmut Goebel <h.goebel@crazy-compilers.com> skribis:

> * guix/import/crate.scm(latest-release): Rename to (import-release),
>   add keyword-argument 'version'.

Same comment as before.

Otherwise LGTM.
diff mbox series

Patch

diff --git a/guix/import/crate.scm b/guix/import/crate.scm
index 51bfcd7bed..339eccd687 100644
--- a/guix/import/crate.scm
+++ b/guix/import/crate.scm
@@ -3,6 +3,7 @@ 
 ;;; Copyright © 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
 ;;; Copyright © 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2022 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -354,11 +355,11 @@  look up the development dependencs for the given crate."
 (define crate-package?
   (url-predicate crate-url?))
 
-(define (latest-release package)
+(define* (import-release package #:key (version #f))
   "Return an <upstream-source> for the latest release of PACKAGE."
   (let* ((crate-name (guix-package->crate-name package))
          (crate      (lookup-crate crate-name))
-         (version    (crate-latest-version crate))
+         (version    (or version (crate-latest-version crate)))
          (url        (crate-uri crate-name version)))
     (upstream-source
      (package (package-name package))
@@ -370,5 +371,5 @@  look up the development dependencs for the given crate."
    (name 'crate)
    (description "Updater for crates.io packages")
    (pred crate-package?)
-   (import latest-release)))
+   (import import-release)))