[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/repology 19f8ee7 3/4: repology-utils: Add `repology-pro
From: |
Nicolas Goaziou |
Subject: |
[elpa] externals/repology 19f8ee7 3/4: repology-utils: Add `repology-project-create' |
Date: |
Thu, 28 Jan 2021 09:44:06 -0500 (EST) |
branch: externals/repology
commit 19f8ee79316c4f3b193a45e6374d6811ea13832a
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Commit: Nicolas Goaziou <mail@nicolasgoaziou.fr>
repology-utils: Add `repology-project-create'
* repology-utils.el (repology-project-create): New function.
---
repology-utils.el | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/repology-utils.el b/repology-utils.el
index 35582df..bd7877b 100644
--- a/repology-utils.el
+++ b/repology-utils.el
@@ -165,6 +165,19 @@ The version string is emphasized according to PACKAGE's
status."
(user-error "No valid project provided"))
(cdr project))
+(defun repology-project-create (name packages)
+ "Create a project object out of a NAME and a list of PACKAGES.
+NAME is a string or a symbol. PACKAGES is a list of package objects."
+ (let* ((name-symbol
+ (pcase name
+ ((pred symbolp) name)
+ ((pred stringp) (intern name))
+ (_ (user-error "Invalid project name: %S" name))))
+ (project (cons name-symbol packages)))
+ (unless (repology-project-p project)
+ (user-error "Invalid packages value: %S" packages))
+ project))
+
(defun repology-project-newest-version (project)
"Return newest version string for packages in PROJECT, or nil."
(let ((newest