[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
05/17: graph: Factorize 'lookup-backend'.
From: |
guix-commits |
Subject: |
05/17: graph: Factorize 'lookup-backend'. |
Date: |
Fri, 18 Mar 2022 11:05:28 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit f5a94b3a9f5b62e79d616e9631a5137f1a100f69
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Mar 11 21:13:31 2022 +0100
graph: Factorize 'lookup-backend'.
* guix/graph.scm (lookup-backend): New procedure.
* guix/scripts/graph.scm (lookup-backend): Remove.
* guix/scripts/system.scm (lookup-backend): Remove.
* po/guix/POTFILES.in: Add 'guix/graph.scm'.
---
guix/graph.scm | 14 +++++++++++++-
guix/scripts/graph.scm | 9 +--------
guix/scripts/system.scm | 9 +--------
po/guix/POTFILES.in | 1 +
4 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/guix/graph.scm b/guix/graph.scm
index 3a1cab244b..41219ab67d 100644
--- a/guix/graph.scm
+++ b/guix/graph.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015-2016, 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
@@ -22,10 +22,13 @@
#:use-module (guix monads)
#:use-module (guix records)
#:use-module (guix sets)
+ #:autoload (guix diagnostics) (formatted-message)
+ #:autoload (guix i18n) (G_)
#:use-module (rnrs io ports)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-26)
+ #:use-module (srfi srfi-34)
#:use-module (ice-9 match)
#:use-module (ice-9 vlist)
#:export (node-type
@@ -47,6 +50,8 @@
%graph-backends
%d3js-backend
%graphviz-backend
+ lookup-backend
+
graph-backend?
graph-backend
graph-backend-name
@@ -335,6 +340,13 @@ nodeArray.push(nodes[\"~a\"]);~%"
%d3js-backend
%cypher-backend))
+(define (lookup-backend name)
+ "Return the graph backend called NAME. Raise an error if it is not found."
+ (or (find (lambda (backend)
+ (string=? (graph-backend-name backend) name))
+ %graph-backends)
+ (raise (formatted-message (G_ "~a: unknown graph backend") name))))
+
(define* (export-graph sinks port
#:key
reverse-edges? node-type (max-depth +inf.0)
diff --git a/guix/scripts/graph.scm b/guix/scripts/graph.scm
index 8943e87099..535875c858 100644
--- a/guix/scripts/graph.scm
+++ b/guix/scripts/graph.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès
<ludo@gnu.org>
+;;; Copyright © 2015-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -429,13 +429,6 @@ package modules, while attempting to retain user package
modules."
%node-types)
(leave (G_ "~a: unknown node type~%") name)))
-(define (lookup-backend name)
- "Return the graph backend called NAME. Raise an error if it is not found."
- (or (find (lambda (backend)
- (string=? (graph-backend-name backend) name))
- %graph-backends)
- (leave (G_ "~a: unknown backend~%") name)))
-
(define (list-node-types)
"Print the available node types along with their synopsis."
(display (G_ "The available node types are:\n"))
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index a6e717d52c..6f7dcd4643 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -51,7 +51,7 @@
delete-matching-generations)
#:autoload (guix scripts pull) (channel-commit-hyperlink)
#:autoload (guix graph) (export-graph node-type
- graph-backend-name %graph-backends)
+ graph-backend-name lookup-backend)
#:use-module (guix scripts graph)
#:use-module (guix scripts system reconfigure)
#:use-module (guix build utils)
@@ -887,13 +887,6 @@ Run 'herd status' to view the list of services on your
system.\n"))))))
(register-root* (list output) gc-root))
(return output)))))))))
-(define (lookup-backend name) ;TODO: factorize
- "Return the graph backend called NAME. Raise an error if it is not found."
- (or (find (lambda (backend)
- (string=? (graph-backend-name backend) name))
- %graph-backends)
- (leave (G_ "~a: unknown backend~%") name)))
-
(define* (export-extension-graph os port
#:key (backend (lookup-backend "graphviz")))
"Export the service extension graph of OS to PORT using BACKEND."
diff --git a/po/guix/POTFILES.in b/po/guix/POTFILES.in
index d97ba8c209..49a8edfef3 100644
--- a/po/guix/POTFILES.in
+++ b/po/guix/POTFILES.in
@@ -66,6 +66,7 @@ guix/ci.scm
guix/cve.scm
guix/git-authenticate.scm
guix/gnupg.scm
+guix/graph.scm
guix/lint.scm
guix/scripts/download.scm
guix/scripts/package.scm
- branch master updated (3e34b01b70 -> 2fb4304ee7), guix-commits, 2022/03/18
- 01/17: gnu: petsc-openmpi: Fix compilation with Scotch 7.0., guix-commits, 2022/03/18
- 11/17: gnu: emacs-osm: Record the absolute file name of 'curl'., guix-commits, 2022/03/18
- 09/17: gnu: Add emacs-osm., guix-commits, 2022/03/18
- 04/17: ui: 'show-what-to-build' highlights "would be downloaded" headings., guix-commits, 2022/03/18
- 06/17: home: services: Export record type accessors., guix-commits, 2022/03/18
- 05/17: graph: Factorize 'lookup-backend'.,
guix-commits <=
- 10/17: gnu: emacs-osm: Fetch source over Git., guix-commits, 2022/03/18
- 08/17: guix system: Call 'export-graph' with the right port argument., guix-commits, 2022/03/18
- 07/17: guix home: Implement the 'extension-graph' and 'shepherd-graph' actions., guix-commits, 2022/03/18
- 12/17: home: services: Fix bash aliases without guix-defaults., guix-commits, 2022/03/18
- 14/17: gnu: feh, newsboat: Inline top-level reference to 'curl'., guix-commits, 2022/03/18
- 02/17: gnu: petsc-openmpi: Remove input labels., guix-commits, 2022/03/18
- 03/17: ui: 'show-what-to-build' highlights "The following [...] will be built"., guix-commits, 2022/03/18
- 15/17: gnu: Add ckb-next., guix-commits, 2022/03/18
- 17/17: gnu: bitlbee-purple: Use 'modify-inputs'., guix-commits, 2022/03/18
- 16/17: gnu: bitlbee-purple: Add search path for "PURPLE_PLUGIN_PATH"., guix-commits, 2022/03/18