[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] elpa-admin f8051b4 032/357: Fixes to archive-contents.el and pack
From: |
Stefan Monnier |
Subject: |
[elpa] elpa-admin f8051b4 032/357: Fixes to archive-contents.el and package-update.sh. |
Date: |
Thu, 10 Dec 2020 18:06:09 -0500 (EST) |
branch: elpa-admin
commit f8051b408af4373adef11a6e180ef3fd6136e3cb
Author: Chong Yidong <cyd@stupidchicken.com>
Commit: Chong Yidong <cyd@stupidchicken.com>
Fixes to archive-contents.el and package-update.sh.
* admin/archive-contents.el (archive-contents-subdirectory-regexp):
New var, from package.el.
(archive-contents--convert-require): New function.
(batch-make-archive-contents): Handle package requirements.
* admin/package-update.sh: Run archive-contents.el from package
directory. Handle org package.
---
admin/archive-contents.el | 37 +++++++++++++++++++++++++++----------
1 file changed, 27 insertions(+), 10 deletions(-)
diff --git a/admin/archive-contents.el b/admin/archive-contents.el
index a26e2cc..fb610eb 100644
--- a/admin/archive-contents.el
+++ b/admin/archive-contents.el
@@ -23,25 +23,37 @@
(require 'lisp-mnt)
+(defconst archive-contents-subdirectory-regexp
+
"\\([^.].*?\\)-\\([0-9]+\\(?:[.][0-9]+\\|\\(?:pre\\|beta\\|alpha\\)[0-9]+\\)*\\)")
+
+(defun archive-contents--convert-require (elt)
+ (list (car elt)
+ (version-to-list (car (cdr elt)))))
+
(defun batch-make-archive-contents ()
(let ((packages '(1))) ; format-version.
(dolist (file (directory-files default-directory))
(pcase file
((or `"." `".." `"elpa.rss" `"archive-contents") nil)
((pred file-directory-p)
- (if (not (string-match "-[0-9.]+\\'" file))
+ (if (not (string-match (concat archive-contents-subdirectory-regexp
"\\'")
+ file))
(message "Unknown package directory name format %s" file)
- (let* ((pkg (substring file 0 (match-beginning 0)))
- (vers (substring file (1+ (match-beginning 0))))
+ (let* ((pkg (match-string 1 file))
+ (vers (match-string 2 file))
(exp
(with-temp-buffer
(insert-file-contents
(expand-file-name (concat pkg "-pkg.el") file))
(goto-char (point-min))
- (read (current-buffer)))))
- (copy-file (expand-file-name "README" file)
- (concat pkg "-readme.txt")
- 'ok-if-already-exists)
+ (read (current-buffer))))
+ (req (mapcar 'archive-contents--convert-require
+ (nth 4 exp)))
+ (readme (expand-file-name "README" file)))
+ (when (file-exists-p readme)
+ (copy-file readme
+ (concat pkg "-readme.txt")
+ 'ok-if-already-exists))
(unless (equal (nth 1 exp) pkg)
(message "Package name %s doesn't match file name %s"
(nth 1 exp) file))
@@ -50,10 +62,11 @@
(nth 2 exp) file))
(push (cons (intern pkg)
(vector (version-to-list vers)
- nil ;??
+ req
(nth 3 exp)
'tar))
packages))))
+ ;; Simple package
((pred (string-match "\\.el\\'"))
(if (not (string-match "-\\([0-9.]+\\)\\.el\\'" file))
(message "Unknown package file name format %s" file)
@@ -85,10 +98,14 @@
(looking-at "[ \t]*\n"))
(delete-region (match-beginning 0)
(match-end 0)))
- (save-buffer))))))))
+ (save-buffer)))))))
+ (requires-str (lm-header "package-requires"))
+ (req (if requires-str
+ (mapcar 'archive-contents--convert-require
+ (car (read-from-string requires-str))))))
(push (cons (intern pkg)
(vector (version-to-list vers)
- nil ;??
+ req
desc
'single))
packages))))
- [elpa] elpa-admin 5ac89c8 281/357: * packages/yasnippet: Merge version 0.12.2 from upstream., (continued)
- [elpa] elpa-admin 5ac89c8 281/357: * packages/yasnippet: Merge version 0.12.2 from upstream., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin f25cda3 303/357: * GNUmakefile (%.elc): Use load-prefer-newer, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 21c69f7 308/357: Merge commit 'c304ac9a80ab7e96f705771a3842a48bf5a32c8a', Stefan Monnier, 2020/12/10
- [elpa] elpa-admin cdefe40 311/357: Improve copying of :core files; update .gitignore, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 3ca74c1 011/357: preparing for new rst format document, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin a703bf2 025/357: Merge branch 'master' of github.com:rocky/emacs-load-relative, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin b584cdf 007/357: # Updated., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin bd19e1f 015/357: Start to use load-relative. dbgr-core.el: fix bug in dbgr-term-sentinal, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin a53e009 023/357: Merge branch 'master' of github.com:rocky/emacs-dbgr, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 3c6d0e1 037/357: Copy examples from wcheck-language-data doc to README, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin f8051b4 032/357: Fixes to archive-contents.el and package-update.sh.,
Stefan Monnier <=
- [elpa] elpa-admin 81a6a01 088/357: Fix up scripts to build archive from Git, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin daf3553 099/357: Sync from ack/master, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 96a8283 129/357: Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs/elpa, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin adc1e5b 146/357: Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs/elpa, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 88fb267 150/357: Update README to tell how to checkout a single external package., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 779c1d2 165/357: Add 'packages/loc-changes/' from commit '8447baff7cb4839ef8d1d747a14e5da85d0cee5b', Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 84f4eb7 153/357: * wcheck-mode: New package., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 97cad46 171/357: Merge commit '3fa56d7925d5b24c5cd11c61bd6b3235e753a055', Stefan Monnier, 2020/12/10
- [elpa] elpa-admin f936e1e 180/357: Merge dummy commit to add the gnorb subtree metadata., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 5a1a2bc 184/357: Merge commit '32b1944d5f0a65aa10c6768f4865f7ed1de8eb49' as 'packages/pinentry', Stefan Monnier, 2020/12/10