[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] elpa-admin 5319f2f 062/357: * archive-contents.el: Make `site' mo
From: |
Stefan Monnier |
Subject: |
[elpa] elpa-admin 5319f2f 062/357: * archive-contents.el: Make `site' more incrementally. |
Date: |
Thu, 10 Dec 2020 18:06:15 -0500 (EST) |
branch: elpa-admin
commit 5319f2f7681821b961e863e49f47c97ec6dc0d59
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>
* archive-contents.el: Make `site' more incrementally.
(archive--delete-elc-files): New arg` only-orphans'.
(archive--simple-package-p): Don't count .elc files; add default version.
(batch-make-site-dir): Don't force recompilation of all .elc files.
Don't generate silly backup versions of the autoloads file.
---
admin/archive-contents.el | 25 +++++++++++++++++--------
1 file changed, 17 insertions(+), 8 deletions(-)
diff --git a/admin/archive-contents.el b/admin/archive-contents.el
index e94093a..f3b250a 100644
--- a/admin/archive-contents.el
+++ b/admin/archive-contents.el
@@ -45,13 +45,15 @@ Otherwise return nil."
str)
(error nil))))
-(defun archive--delete-elc-files (dir)
+(defun archive--delete-elc-files (dir &optional only-orphans)
"Recursively delete all .elc files in DIR.
Delete backup files also."
(dolist (f (directory-files dir t archive-re-no-dot))
(cond ((file-directory-p f)
(archive--delete-elc-files f))
- ((or (string-match "\\.elc\\'" f)
+ ((or (and (string-match "\\.elc\\'" f)
+ (not (and only-orphans
+ (file-readable-p (replace-match ".el" t t f)))))
(backup-file-name-p f))
(delete-file f)))))
@@ -91,9 +93,13 @@ requirements, and COMMENTARY is the package commentary.
Otherwise, return nil."
(let* ((pkg-file (expand-file-name (concat pkg "-pkg.el") dir))
(mainfile (expand-file-name (concat pkg ".el") dir))
+ (files (directory-files dir nil archive-re-no-dot))
version description req commentary)
+ (dolist (file (prog1 files (setq files ())))
+ (unless (string-match "\\.elc\\'" file)
+ (push file files)))
(when (and (or (not (file-exists-p pkg-file))
- (= (length (directory-files dir nil archive-re-no-dot)) 2))
+ (= (length files) 2))
(file-exists-p mainfile))
(with-temp-buffer
(insert-file-contents mainfile)
@@ -103,7 +109,8 @@ Otherwise, return nil."
(setq description (match-string 1))
(setq version
(or (archive--strip-rcs-id (lm-header "package-version"))
- (archive--strip-rcs-id (lm-header "version")))))
+ (archive--strip-rcs-id (lm-header "version"))
+ "0.0")))
(progn
;; Grab the other fields, which are not mandatory.
(let ((requires-str (lm-header "package-requires")))
@@ -182,9 +189,9 @@ PKG-readme.txt. Return the descriptor."
;; Omit autoloads and .elc files from the package.
(if (file-exists-p autoloads-file)
(delete-file autoloads-file))
- (archive--delete-elc-files dir)
+ (archive--delete-elc-files dir 'only-orphans)
;; Test whether this is a simple or multi-file package.
- (setq simple-p (archive--simple-package-p dir pkg))
+ (setq simple-p (archive--simple-package-p dir pkg))
(if simple-p
(progn
(apply 'archive--write-pkg-file dir pkg simple-p)
@@ -195,9 +202,11 @@ PKG-readme.txt. Return the descriptor."
(expand-file-name (concat pkg "-" version)
site-dir)
t)
- (package-generate-autoloads pkg dir)
+ (let ((make-backup-files nil))
+ (package-generate-autoloads pkg dir))
(let ((load-path (cons dir load-path)))
- (byte-recompile-directory dir 0 t))))
+ ;; FIXME: Don't compile the -pkg.el files!
+ (byte-recompile-directory dir 0))))
;; Error handler
(error (message "%s" (cadr v))))))
- [elpa] elpa-admin b2531f1 233/357: * admin/archive-contents.el: Minimal support for local externals, (continued)
- [elpa] elpa-admin b2531f1 233/357: * admin/archive-contents.el: Minimal support for local externals, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 8efb626 241/357: Merge commit '4d1dcdf7631c23b1259ad4f72bf9686cf95fb46c', Stefan Monnier, 2020/12/10
- [elpa] elpa-admin c55c928 238/357: Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs/elpa, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin d5be3dd 283/357: * README: mention make check_copyrights, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin c670f77 253/357: Merge branch 'master' into new-website, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 0466964 352/357: * README.org (Adding a package): Adjust to use the new `make` targets, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 2658af9 345/357: * admin/archive-contents.el: Add preliminary code to fetch upstream updates, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 21fc443 349/357: * externals-list ("markdown-mode"): New package, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 0c23652 046/357: Revert "Add an explicit OPERATION-MODE "nil" in README's examples", Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 7ce78d5 071/357: Note that 'autogen.sh' should be run to generate 'configure' and 'Makefile.in' (see #11), Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 5319f2f 062/357: * archive-contents.el: Make `site' more incrementally.,
Stefan Monnier <=
- [elpa] elpa-admin 988d3f5 059/357: Add a table of contents to README file, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 6011ab7 066/357: Initial import, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin aae2f27 064/357: imported README from googlecode's homepage, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin a745b29 076/357: * admin/archive-contents.el: Create web pages., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin b7f2140 081/357: Thanks go to Lars Andersen., Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 5a664e2 091/357: Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs/elpa, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 1daf0bb 085/357: Merge branch 'master' of github.com:rocky/emacs-loc-changes, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 90851ae 086/357: Get "make -k" to go through, Stefan Monnier, 2020/12/10
- [elpa] elpa-admin e71d997 087/357: Merge remote-tracking branch 'repo.or.cz/elpa', Stefan Monnier, 2020/12/10
- [elpa] elpa-admin 87dd559 092/357: Update infrastructure for Git., Stefan Monnier, 2020/12/10