From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Philip Kaludercic Newsgroups: gmane.emacs.devel Subject: Re: Documentation on elpa.gnu.org Date: Sat, 13 Aug 2022 15:21:39 +0000 Message-ID: <871qtkkw3g.fsf@posteo.net> References: <87fsi3s0gi.fsf@posteo.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="31850"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Aug 13 17:22:50 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oMsyQ-000864-JJ for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Aug 2022 17:22:50 +0200 Original-Received: from localhost ([::1]:51292 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oMsyP-0004qS-5S for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Aug 2022 11:22:49 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50666) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oMsxY-000450-Qe for emacs-devel@gnu.org; Sat, 13 Aug 2022 11:21:56 -0400 Original-Received: from mout01.posteo.de ([185.67.36.65]:32905) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oMsxR-0004o5-73 for emacs-devel@gnu.org; Sat, 13 Aug 2022 11:21:56 -0400 Original-Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 25F02240026 for ; Sat, 13 Aug 2022 17:21:43 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1660404106; bh=E62Yg0wCaJdYBNdlkxHpsSExtHh7WOTr/Fe0H2k3cJY=; h=From:To:Cc:Subject:Autocrypt:Date:From; b=qmMoLruyow9BXmZ35G5Y7lG+HhMvFnQfPlayBEz2HRPy0ofI/jPBbD/6tx3dDAJAp lFBTBVPmvAXeQpeUYa8SN9DlLaHB+qERES9t9LLfGvzOssulTgRbM7X0YKLKx38a9C us+9yw6eu/uV4XoSPMKYu7tCbIx/JxelP/rl36pibdDEBqQYXvmzHfCnMhWdTWHEBZ zSh27zq07akIfr0gzobOb8Fan8Hy1DB1+zIV1jcQaWsn7Pdyo5In0Z0yE2f7vOOdCx Ape/Ia9V89hjzFF0GIATW1sSkwU4+4lbQMlF+yfs7g0fwkxGOPcA3k2LI7ADWKWK+Q ed80Vb1T5cNkA== Original-Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4M4km65mFWz6tmK; Sat, 13 Aug 2022 17:21:40 +0200 (CEST) In-Reply-To: (Stefan Monnier's message of "Sat, 13 Aug 2022 10:58:29 -0400") Autocrypt: addr=philipk@posteo.net; prefer-encrypt=nopreference; keydata= mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB Received-SPF: pass client-ip=185.67.36.65; envelope-from=philipk@posteo.net; helo=mout01.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:293421 Archived-At: Stefan Monnier writes: > Philip Kaludercic [2022-08-11 07:28:45] wrote: >> I'd like to link to https://elpa.gnu.org/packages/doc/ and >> https://elpa.gnu.org/devel/doc/ from my package README files, to have >> some place where I can rely on up-to-date documentation being available. > > That's indeed part of the intention behind those doc pages. > >> For Compat, the .../packaged/doc/compat.html link is currently broken, >> which is my fault, but I wonder why .../devel/doc/compat.html is out of >> date, despite elpa.git being up-to-date >> https://git.savannah.gnu.org/cgit/emacs/elpa.git/log/?h=3Dexternals/comp= at. > > `make build/compat` gives me the error below. Ok, my bad, sorry about that. I had just been using makeinfo --html, and that apparently does not generate that warning? >> Also, I am not sure if this is a bug, but >> https://elpa.gnu.org/packages/doc/README.html appears to (arbitrarily?) >> render the documentation for plz. I guess this is not intentional. > > No, indeed it's not, tho I'm not completely surprised either since we > share the single "doc" directory between all the packages: any doc file > with a name that's not specific to the package is liable to conflict > with that of another package. > > > Stefan > > > =3D=3D=3D=3D=3D=3D=3D=3D Building tarball archive-devel/compat-28.1.2.0.0= .20220810.191855.tar... > > Error: error ("Error-indicating exit code in elpaa--call-sandboxed: > compat.texi:220: @menu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24.5=C2= =A0=C2=BB inexistant > compat.texi:77: @detailmenu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24= .5=C2=A0=C2=BB inexistant > ") > debug(error (error "Error-indicating exit code in elpaa--call-sandboxed= :\ncompat.texi:220: @menu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24.5= =C2=A0=C2=BB inexistant\ncompat.texi:77: @detailmenu pointe vers un n=C5=93= ud =C2=AB=C2=A0Emacs 24.5=C2=A0=C2=BB inexistant\n")) > signal(error ("Error-indicating exit code in elpaa--call-sandboxed:\nco= mpat.texi:220: @menu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24.5=C2=A0= =C2=BB inexistant\ncompat.texi:77: @detailmenu pointe vers un n=C5=93ud =C2= =AB=C2=A0Emacs 24.5=C2=A0=C2=BB inexistant\n")) > error("Error-indicating exit code in elpaa--call-sandboxed:\n%s" "compa= t.texi:220: @menu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24.5=C2=A0=C2= =BB inexistant\ncompat.texi:77: @detailmenu pointe vers un n=C5=93ud =C2=AB= =C2=A0Emacs 24.5=C2=A0=C2=BB inexistant\n") > (if (eq destination t) (error "Error-indicating exit code in elpaa--cal= l-sandboxed:\n%s" (buffer-string)) (error "Error-indicating exit code in el= paa--call-sandboxed")) > (if (eq exitcode 0) nil (if (eq destination t) (error "Error-indicating= exit code in elpaa--call-sandboxed:\n%s" (buffer-string)) (error "Error-in= dicating exit code in elpaa--call-sandboxed"))) > (let ((exitcode (apply #'elpaa--call destination "bwrap" (append elpaa-= -bwrap-args args)))) (if (eq exitcode 0) nil (if (eq destination t) (error = "Error-indicating exit code in elpaa--call-sandboxed:\n%s" (buffer-string))= (error "Error-indicating exit code in elpaa--call-sandboxed")))) > (if (not elpaa--sandbox) (apply #'elpaa--call destination args) (elpaa-= -message "call-sandboxed %S" args) (let ((dd (expand-file-name default-dire= ctory))) (setq args (nconc (list "--bind" dd dd) args))) (let ((--dolist-ta= il-- (append elpaa--sandbox-ro-binds elpaa--sandbox-extra-ro-dirs))) (while= --dolist-tail-- (let ((b (car --dolist-tail--))) (if (file-exists-p b) (pr= ogn (setq b (expand-file-name b)) (setq args (nconc (list "--ro-bind" b b) = args)))) (setq --dolist-tail-- (cdr --dolist-tail--))))) (let ((exitcode (a= pply #'elpaa--call destination "bwrap" (append elpaa--bwrap-args args)))) (= if (eq exitcode 0) nil (if (eq destination t) (error "Error-indicating exit= code in elpaa--call-sandboxed:\n%s" (buffer-string)) (error "Error-indicat= ing exit code in elpaa--call-sandboxed"))))) > elpaa--call-sandboxed(t "makeinfo" "--no-split" "compat.texi" "-o" "com= pat.info") > (progn (elpaa--call-sandboxed t "makeinfo" "--no-split" docfile "-o" in= fo-file) (message "%s" (buffer-string))) > (unwind-protect (progn (elpaa--call-sandboxed t "makeinfo" "--no-split"= docfile "-o" info-file) (message "%s" (buffer-string))) (and (buffer-name = temp-buffer) (kill-buffer temp-buffer))) > (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (e= lpaa--call-sandboxed t "makeinfo" "--no-split" docfile "-o" info-file) (mes= sage "%s" (buffer-string))) (and (buffer-name temp-buffer) (kill-buffer tem= p-buffer)))) > (let ((temp-buffer (generate-new-buffer " *temp*" t))) (save-current-bu= ffer (set-buffer temp-buffer) (unwind-protect (progn (elpaa--call-sandboxed= t "makeinfo" "--no-split" docfile "-o" info-file) (message "%s" (buffer-st= ring))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) > (let ((info-file (concat (file-name-sans-extension (file-name-nondirect= ory docfile)) ".info"))) (elpaa--temp-file info-file) (let ((temp-buffer (g= enerate-new-buffer " *temp*" t))) (save-current-buffer (set-buffer temp-buf= fer) (unwind-protect (progn (elpaa--call-sandboxed t "makeinfo" "--no-split= " docfile "-o" info-file) (message "%s" (buffer-string))) (and (buffer-name= temp-buffer) (kill-buffer temp-buffer))))) (if html-dir (progn (elpaa--htm= l-build-doc pkg-spec docfile html-dir))) (setq docfile info-file)) > (progn (let ((info-file (concat (file-name-sans-extension (file-name-no= ndirectory docfile)) ".info"))) (elpaa--temp-file info-file) (let ((temp-bu= ffer (generate-new-buffer " *temp*" t))) (save-current-buffer (set-buffer t= emp-buffer) (unwind-protect (progn (elpaa--call-sandboxed t "makeinfo" "--n= o-split" docfile "-o" info-file) (message "%s" (buffer-string))) (and (buff= er-name temp-buffer) (kill-buffer temp-buffer))))) (if html-dir (progn (elp= aa--html-build-doc pkg-spec docfile html-dir))) (setq docfile info-file))) > (if (and docfile (string-match "\\.texi\\(nfo\\)?\\'" docfile)) (progn = (let ((info-file (concat (file-name-sans-extension (file-name-nondirectory = docfile)) ".info"))) (elpaa--temp-file info-file) (let ((temp-buffer (gener= ate-new-buffer " *temp*" t))) (save-current-buffer (set-buffer temp-buffer)= (unwind-protect (progn (elpaa--call-sandboxed t "makeinfo" "--no-split" do= cfile "-o" info-file) (message "%s" (buffer-string))) (and (buffer-name tem= p-buffer) (kill-buffer temp-buffer))))) (if html-dir (progn (elpaa--html-bu= ild-doc pkg-spec docfile html-dir))) (setq docfile info-file)))) > (let* ((elpaa--sandbox-ro-binds (cons default-directory elpaa--sandbox-= ro-binds)) (default-directory (elpaa--dirname dir)) (tmpfiles 'nil)) (if (a= nd docfile (file-readable-p docfile) (string-match "\\.org\\'" docfile)) (p= rogn (let ((temp-buffer (generate-new-buffer " *temp*" t))) (save-current-b= uffer (set-buffer temp-buffer) (unwind-protect (progn (elpaa--call-sandboxe= d t "emacs" "--batch" "-l" "ox-texinfo" "--eval" "(setq vc-follow-symlinks = nil)" docfile "--eval" "(setq org-babel-confirm-evaluate-answer-no t)" "--e= val" "(message \"ELPATEXI=3D%s\" (org-texinfo-export-to-texinfo))") (messag= e "%s" (buffer-string)) (goto-char (point-max)) (if (re-search-backward "EL= PATEXI=3D\\(.*\\)\n?" nil t) (progn (setq docfile (concat (file-name-direct= ory docfile) (match-string 1))) (setq tmpfiles (cons docfile tmpfiles)) (el= paa--temp-file docfile)))) (and (buffer-name temp-buffer) (kill-buffer temp= -buffer))))))) (if (and docfile (string-match "\\.texi\\(nfo\\)?\\'" docfil= e)) (progn (let ((info-file (concat (file-name-sans-extension (file-name-no= ndirectory docfile)) ".info"))) (elpaa--temp-file info-file) (let ((temp-bu= ffer (generate-new-buffer " *temp*" t))) (save-current-buffer (set-buffer t= emp-buffer) (unwind-protect (progn (elpaa--call-sandboxed t "makeinfo" "--n= o-split" docfile "-o" info-file) (message "%s" (buffer-string))) (and (buff= er-name temp-buffer) (kill-buffer temp-buffer))))) (if html-dir (progn (elp= aa--html-build-doc pkg-spec docfile html-dir))) (setq docfile info-file))))= (if (and docfile (not (string-match "\\.info\\'" docfile))) (progn (error = "Not a supported doc format: %s" docfile))) (if (and docfile (file-readable= -p docfile) (file-name-directory docfile)) (progn (let ((info-file (file-na= me-nondirectory docfile))) (elpaa--temp-file info-file) (copy-file docfile = info-file) (setq docfile info-file)))) (mapc #'delete-file tmpfiles) (if (a= nd docfile (file-readable-p docfile)) (progn (let ((dir-file (expand-file-n= ame "dir"))) (elpaa--temp-file dir-file) (let ((temp-buffer (generate-new-b= uffer " *temp*" t))) (save-current-buffer (set-buffer temp-buffer) (unwind-= protect (progn (elpaa--call-sandboxed t "install-info" (concat "--dir=3D" d= ir-file) docfile) (message "%s" (buffer-string))) (and (buffer-name temp-bu= ffer) (kill-buffer temp-buffer))))))))) > elpaa--build-Info-1(("compat" :url "https://git.sr.ht/~pkal/compat" :do= c "compat.texi" :auto-sync t :internal--html-docs nil) "compat.texi" "/home= /monnier/src/emacs/elpa/packages/compat" "/home/monnier/src/emacs/elpa/arch= ive-devel/doc/compat/") > (let ((f (car --dolist-tail--))) (elpaa--build-Info-1 pkg-spec f dir ht= ml-dir) (setq --dolist-tail-- (cdr --dolist-tail--))) > (while --dolist-tail-- (let ((f (car --dolist-tail--))) (elpaa--build-I= nfo-1 pkg-spec f dir html-dir) (setq --dolist-tail-- (cdr --dolist-tail--))= )) > (let ((--dolist-tail-- docfiles)) (while --dolist-tail-- (let ((f (car = --dolist-tail--))) (elpaa--build-Info-1 pkg-spec f dir html-dir) (setq --do= list-tail-- (cdr --dolist-tail--))))) > (let ((docfiles (elpaa--get-docfiles pkg-spec)) (html-dir (if elpaa--do= c-subdirectory (progn (elpaa--dirname (car pkg-spec) (expand-file-name elpa= a--doc-subdirectory tarball-dir)))))) (if html-dir (progn (if (not (file-re= adable-p html-dir)) (progn (make-directory html-dir t))))) (plist-put (cdr = pkg-spec) :internal--html-docs nil) (let ((--dolist-tail-- docfiles)) (whil= e --dolist-tail-- (let ((f (car --dolist-tail--))) (elpaa--build-Info-1 pkg= -spec f dir html-dir) (setq --dolist-tail-- (cdr --dolist-tail--)))))) > elpaa--build-Info(("compat" :url "https://git.sr.ht/~pkal/compat" :doc = "compat.texi" :auto-sync t :internal--html-docs nil) "/home/monnier/src/ema= cs/elpa/packages/compat" "archive-devel/") > (let ((process-environment (elpaa--makeenv vers revision))) (elpaa--mak= e pkg-spec dir) (elpaa--build-Info pkg-spec dir destdir)) > (let* ((destdir (file-name-directory tarball)) (pkgname (car pkg-spec))= (_ (if (and destdir (not (file-directory-p destdir))) (progn (make-directo= ry destdir)))) (vers (nth 1 metadata)) (revision (elpaa--select-revision di= r pkg-spec revision-function)) (elpaignore (expand-file-name ".elpaignore" = dir)) (ignores (elpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--= spec-get pkg-spec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (r= e (concat "\\`" (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\= \.[a-z]*z\\)?\\'")) (oldtarballs (if tarball-only nil (mapcar #'(lambda (fi= le) (string-match re file) (cons (match-string 1 file) file)) (directory-fi= les destdir nil re)))) rendered) (if ldir (progn (setq renames (let* ((va (= list (file-name-as-directory ldir) ""))) (if (member va renames) renames (c= ons va renames)))))) (elpaa--copyright-check pkg-spec) (let ((process-envir= onment (elpaa--makeenv vers revision))) (elpaa--make pkg-spec dir) (elpaa--= build-Info pkg-spec dir destdir)) (elpaa--write-pkg-file dir pkgname metada= ta revision) (setq rendered (elpaa--write-plain-readme dir pkg-spec)) (prog= n (or (not (string-match "[][*\\|?]" pkgname)) (cl--assertion-failed '(not = (string-match "[][*\\|?]" pkgname)))) nil) (progn (or (not (string-match "[= ][*\\|?]" vers)) (cl--assertion-failed '(not (string-match "[][*\\|?]" vers= )))) nil) (apply #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (map= car #'(lambda (i) (format "--exclude=3Dpackages/%s/%s" pkgname i)) ignores)= (if (file-readable-p elpaignore) (progn (list "-X" elpaignore))) (mapcar #= '(lambda (r) (elpaa--make-tar-transform pkgname r)) renames) (list "--trans= form" (format "s|^packages/%s|%s-%s|" pkgname pkgname vers) "-chf" tarball = (concat "packages/" pkgname))))) (progn (or (file-readable-p tarball) (cl--= assertion-failed '(file-readable-p tarball))) nil) (if tarball-only nil (le= t* ((pkgdesc (elpaa--process-multi-file-package dir pkgname 'dont-rename)))= (elpaa--message "%s: %S" pkgname pkgdesc) (elpaa--update-archive-contents = pkgdesc destdir) (if (and nil revision-function) (progn (let ((default-dire= ctory (elpaa--dirname dir))) (elpaa--call nil "git" "tag" "-f" (format "%s-= release/%s-%s" elpaa--name pkgname vers))))) (let ((link (expand-file-name = (format "%s.tar" pkgname) destdir))) (if (file-symlink-p link) (progn (dele= te-file link))) (condition-case nil (progn (make-symbolic-link (file-name-n= ondirectory tarball) link)) (file-error nil))) (setq oldtarballs (let ((elp= aa--keep-max (if revision-function elpaa--keep-max (/ elpaa--keep-max 2))))= (elpaa--prune-old-tarballs tarball oldtarballs destdir (if revision-functi= on (* 60 60 24 365 2))))) (let ((default-directory (expand-file-name destdi= r))) (elpaa--html-make-pkg pkgdesc pkg-spec (cons (cons vers (file-name-non= directory tarball)) oldtarballs) dir rendered)))) 'new) > (closure ((tarball-only) (revision-function) (metadata nil "28.1.2.0.0.= 20220810.191855" "Emacs Lisp Compatibility Library" ((emacs (24 3)) (nadvic= e (0 3))) ((:authors ("Philip Kaludercic" . "philipk@posteo.net")) (:mainta= iner "Compat Development" . "~pkal/compat-devel@lists.sr.ht") (:keywords "l= isp") (:url . "https://sr.ht/~pkal/compat"))) (pkg-spec "compat" :url "http= s://git.sr.ht/~pkal/compat" :doc "compat.texi" :auto-sync t :internal--html= -docs nil) (dir . "/home/monnier/src/emacs/elpa/packages/compat") (tarball = . "archive-devel/compat-28.1.2.0.0.20220810.191855.tar")) nil (let* ((destd= ir (file-name-directory tarball)) (pkgname (car pkg-spec)) (_ (if (and dest= dir (not (file-directory-p destdir))) (progn (make-directory destdir)))) (v= ers (nth 1 metadata)) (revision (elpaa--select-revision dir pkg-spec revisi= on-function)) (elpaignore (expand-file-name ".elpaignore" dir)) (ignores (e= lpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--spec-get pkg-spec= :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (re (concat "\\`" (= regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]*z\\)?\\'"= )) (oldtarballs (if tarball-only nil (mapcar #'(lambda (file) (string-match= re file) (cons (match-string 1 file) file)) (directory-files destdir nil r= e)))) rendered) (if ldir (progn (setq renames (let* ((va (list (file-name-a= s-directory ldir) ""))) (if (member va renames) renames (cons va renames)))= ))) (elpaa--copyright-check pkg-spec) (let ((process-environment (elpaa--ma= keenv vers revision))) (elpaa--make pkg-spec dir) (elpaa--build-Info pkg-sp= ec dir destdir)) (elpaa--write-pkg-file dir pkgname metadata revision) (set= q rendered (elpaa--write-plain-readme dir pkg-spec)) (progn (or (not (strin= g-match "[][*\\|?]" pkgname)) (cl--assertion-failed '(not (string-match "[]= [*\\|?]" pkgname)))) nil) (progn (or (not (string-match "[][*\\|?]" vers)) = (cl--assertion-failed '(not (string-match "[][*\\|?]" vers)))) nil) (apply = #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (mapcar #'(lambda (i)= (format "--exclude=3Dpackages/%s/%s" pkgname i)) ignores) (if (file-readab= le-p elpaignore) (progn (list "-X" elpaignore))) (mapcar #'(lambda (r) (elp= aa--make-tar-transform pkgname r)) renames) (list "--transform" (format "s|= ^packages/%s|%s-%s|" pkgname pkgname vers) "-chf" tarball (concat "packages= /" pkgname))))) (progn (or (file-readable-p tarball) (cl--assertion-failed = '(file-readable-p tarball))) nil) (if tarball-only nil (let* ((pkgdesc (elp= aa--process-multi-file-package dir pkgname 'dont-rename))) (elpaa--message = "%s: %S" pkgname pkgdesc) (elpaa--update-archive-contents pkgdesc destdir) = (if (and nil revision-function) (progn (let ((default-directory (elpaa--dir= name dir))) (elpaa--call nil "git" "tag" "-f" (format "%s-release/%s-%s" el= paa--name pkgname vers))))) (let ((link (expand-file-name (format "%s.tar" = pkgname) destdir))) (if (file-symlink-p link) (progn (delete-file link))) (= condition-case nil (progn (make-symbolic-link (file-name-nondirectory tarba= ll) link)) (file-error nil))) (setq oldtarballs (let ((elpaa--keep-max (if = revision-function elpaa--keep-max (/ elpaa--keep-max 2)))) (elpaa--prune-ol= d-tarballs tarball oldtarballs destdir (if revision-function (* 60 60 24 36= 5 2))))) (let ((default-directory (expand-file-name destdir))) (elpaa--html= -make-pkg pkgdesc pkg-spec (cons (cons vers (file-name-nondirectory tarball= )) oldtarballs) dir rendered)))) 'new))() > funcall((closure ((tarball-only) (revision-function) (metadata nil "28.= 1.2.0.0.20220810.191855" "Emacs Lisp Compatibility Library" ((emacs (24 3))= (nadvice (0 3))) ((:authors ("Philip Kaludercic" . "philipk@posteo.net")) = (:maintainer "Compat Development" . "~pkal/compat-devel@lists.sr.ht") (:key= words "lisp") (:url . "https://sr.ht/~pkal/compat"))) (pkg-spec "compat" :u= rl "https://git.sr.ht/~pkal/compat" :doc "compat.texi" :auto-sync t :intern= al--html-docs nil) (dir . "/home/monnier/src/emacs/elpa/packages/compat") (= tarball . "archive-devel/compat-28.1.2.0.0.20220810.191855.tar")) nil (let*= ((destdir (file-name-directory tarball)) (pkgname (car pkg-spec)) (_ (if (= and destdir (not (file-directory-p destdir))) (progn (make-directory destdi= r)))) (vers (nth 1 metadata)) (revision (elpaa--select-revision dir pkg-spe= c revision-function)) (elpaignore (expand-file-name ".elpaignore" dir)) (ig= nores (elpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--spec-get = pkg-spec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (re (concat= "\\`" (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]*z= \\)?\\'")) (oldtarballs (if tarball-only nil (mapcar #'(lambda (file) (stri= ng-match re file) (cons (match-string 1 file) file)) (directory-files destd= ir nil re)))) rendered) (if ldir (progn (setq renames (let* ((va (list (fil= e-name-as-directory ldir) ""))) (if (member va renames) renames (cons va re= names)))))) (elpaa--copyright-check pkg-spec) (let ((process-environment (e= lpaa--makeenv vers revision))) (elpaa--make pkg-spec dir) (elpaa--build-Inf= o pkg-spec dir destdir)) (elpaa--write-pkg-file dir pkgname metadata revisi= on) (setq rendered (elpaa--write-plain-readme dir pkg-spec)) (progn (or (no= t (string-match "[][*\\|?]" pkgname)) (cl--assertion-failed '(not (string-m= atch "[][*\\|?]" pkgname)))) nil) (progn (or (not (string-match "[][*\\|?]"= vers)) (cl--assertion-failed '(not (string-match "[][*\\|?]" vers)))) nil)= (apply #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (mapcar #'(la= mbda (i) (format "--exclude=3Dpackages/%s/%s" pkgname i)) ignores) (if (fil= e-readable-p elpaignore) (progn (list "-X" elpaignore))) (mapcar #'(lambda = (r) (elpaa--make-tar-transform pkgname r)) renames) (list "--transform" (fo= rmat "s|^packages/%s|%s-%s|" pkgname pkgname vers) "-chf" tarball (concat "= packages/" pkgname))))) (progn (or (file-readable-p tarball) (cl--assertion= -failed '(file-readable-p tarball))) nil) (if tarball-only nil (let* ((pkgd= esc (elpaa--process-multi-file-package dir pkgname 'dont-rename))) (elpaa--= message "%s: %S" pkgname pkgdesc) (elpaa--update-archive-contents pkgdesc d= estdir) (if (and nil revision-function) (progn (let ((default-directory (el= paa--dirname dir))) (elpaa--call nil "git" "tag" "-f" (format "%s-release/%= s-%s" elpaa--name pkgname vers))))) (let ((link (expand-file-name (format "= %s.tar" pkgname) destdir))) (if (file-symlink-p link) (progn (delete-file l= ink))) (condition-case nil (progn (make-symbolic-link (file-name-nondirecto= ry tarball) link)) (file-error nil))) (setq oldtarballs (let ((elpaa--keep-= max (if revision-function elpaa--keep-max (/ elpaa--keep-max 2)))) (elpaa--= prune-old-tarballs tarball oldtarballs destdir (if revision-function (* 60 = 60 24 365 2))))) (let ((default-directory (expand-file-name destdir))) (elp= aa--html-make-pkg pkgdesc pkg-spec (cons (cons vers (file-name-nondirectory= tarball)) oldtarballs) dir rendered)))) 'new))) > (progn (elpaa--clean dir) (funcall f)) > (unwind-protect (progn (elpaa--clean dir) (funcall f)) (elpaa--message = "Deleting temp files: %S" elpaa--temp-files) (let ((--dolist-tail-- elpaa--= temp-files)) (while --dolist-tail-- (let ((f (car --dolist-tail--))) (if (s= tringp f) (delete-file f) (funcall f)) (setq --dolist-tail-- (cdr --dolist-= tail--)))))) > (let ((elpaa--temp-files nil)) (unwind-protect (progn (elpaa--clean dir= ) (funcall f)) (elpaa--message "Deleting temp files: %S" elpaa--temp-files)= (let ((--dolist-tail-- elpaa--temp-files)) (while --dolist-tail-- (let ((f= (car --dolist-tail--))) (if (stringp f) (delete-file f) (funcall f)) (setq= --dolist-tail-- (cdr --dolist-tail--))))))) > elpaa--call-with-temp-files("/home/monnier/src/emacs/elpa/packages/comp= at" (closure ((tarball-only) (revision-function) (metadata nil "28.1.2.0.0.= 20220810.191855" "Emacs Lisp Compatibility Library" ((emacs (24 3)) (nadvic= e (0 3))) ((:authors ("Philip Kaludercic" . "philipk@posteo.net")) (:mainta= iner "Compat Development" . "~pkal/compat-devel@lists.sr.ht") (:keywords "l= isp") (:url . "https://sr.ht/~pkal/compat"))) (pkg-spec "compat" :url "http= s://git.sr.ht/~pkal/compat" :doc "compat.texi" :auto-sync t :internal--html= -docs nil) (dir . "/home/monnier/src/emacs/elpa/packages/compat") (tarball = . "archive-devel/compat-28.1.2.0.0.20220810.191855.tar")) nil (let* ((destd= ir (file-name-directory tarball)) (pkgname (car pkg-spec)) (_ (if (and dest= dir (not (file-directory-p destdir))) (progn (make-directory destdir)))) (v= ers (nth 1 metadata)) (revision (elpaa--select-revision dir pkg-spec revisi= on-function)) (elpaignore (expand-file-name ".elpaignore" dir)) (ignores (e= lpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--spec-get pkg-spec= :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (re (concat "\\`" (= regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]*z\\)?\\'"= )) (oldtarballs (if tarball-only nil (mapcar #'(lambda (file) (string-match= re file) (cons (match-string 1 file) file)) (directory-files destdir nil r= e)))) rendered) (if ldir (progn (setq renames (let* ((va (list (file-name-a= s-directory ldir) ""))) (if (member va renames) renames (cons va renames)))= ))) (elpaa--copyright-check pkg-spec) (let ((process-environment (elpaa--ma= keenv vers revision))) (elpaa--make pkg-spec dir) (elpaa--build-Info pkg-sp= ec dir destdir)) (elpaa--write-pkg-file dir pkgname metadata revision) (set= q rendered (elpaa--write-plain-readme dir pkg-spec)) (progn (or (not (strin= g-match "[][*\\|?]" pkgname)) (cl--assertion-failed '(not (string-match "[]= [*\\|?]" pkgname)))) nil) (progn (or (not (string-match "[][*\\|?]" vers)) = (cl--assertion-failed '(not (string-match "[][*\\|?]" vers)))) nil) (apply = #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (mapcar #'(lambda (i)= (format "--exclude=3Dpackages/%s/%s" pkgname i)) ignores) (if (file-readab= le-p elpaignore) (progn (list "-X" elpaignore))) (mapcar #'(lambda (r) (elp= aa--make-tar-transform pkgname r)) renames) (list "--transform" (format "s|= ^packages/%s|%s-%s|" pkgname pkgname vers) "-chf" tarball (concat "packages= /" pkgname))))) (progn (or (file-readable-p tarball) (cl--assertion-failed = '(file-readable-p tarball))) nil) (if tarball-only nil (let* ((pkgdesc (elp= aa--process-multi-file-package dir pkgname 'dont-rename))) (elpaa--message = "%s: %S" pkgname pkgdesc) (elpaa--update-archive-contents pkgdesc destdir) = (if (and nil revision-function) (progn (let ((default-directory (elpaa--dir= name dir))) (elpaa--call nil "git" "tag" "-f" (format "%s-release/%s-%s" el= paa--name pkgname vers))))) (let ((link (expand-file-name (format "%s.tar" = pkgname) destdir))) (if (file-symlink-p link) (progn (delete-file link))) (= condition-case nil (progn (make-symbolic-link (file-name-nondirectory tarba= ll) link)) (file-error nil))) (setq oldtarballs (let ((elpaa--keep-max (if = revision-function elpaa--keep-max (/ elpaa--keep-max 2)))) (elpaa--prune-ol= d-tarballs tarball oldtarballs destdir (if revision-function (* 60 60 24 36= 5 2))))) (let ((default-directory (expand-file-name destdir))) (elpaa--html= -make-pkg pkgdesc pkg-spec (cons (cons vers (file-name-nondirectory tarball= )) oldtarballs) dir rendered)))) 'new))) > elpaa--make-one-tarball-1("archive-devel/compat-28.1.2.0.0.20220810.191= 855.tar" "/home/monnier/src/emacs/elpa/packages/compat" ("compat" :url "htt= ps://git.sr.ht/~pkal/compat" :doc "compat.texi" :auto-sync t :internal--htm= l-docs nil) (nil "28.1.2.0.0.20220810.191855" "Emacs Lisp Compatibility Lib= rary" ((emacs (24 3)) (nadvice (0 3))) ((:authors ("Philip Kaludercic" . "p= hilipk@posteo.net")) (:maintainer "Compat Development" . "~pkal/compat-deve= l@lists.sr.ht") (:keywords "lisp") (:url . "https://sr.ht/~pkal/compat"))) = nil nil) > (setq res (elpaa--make-one-tarball-1 tarball dir pkg-spec metadata revi= sion-function tarball-only)) > (condition-case err (setq res (elpaa--make-one-tarball-1 tarball dir pk= g-spec metadata revision-function tarball-only)) ((debug error) (message "B= uild error for %s: %S" tarball err) nil)) > (unwind-protect (condition-case err (setq res (elpaa--make-one-tarball-= 1 tarball dir pkg-spec metadata revision-function tarball-only)) ((debug er= ror) (message "Build error for %s: %S" tarball err) nil)) (message (if res = "######## Built new package %s!" "######## Build of package %s FAILED!!") t= arball)) > (let ((res nil)) (unwind-protect (condition-case err (setq res (elpaa--= make-one-tarball-1 tarball dir pkg-spec metadata revision-function tarball-= only)) ((debug error) (message "Build error for %s: %S" tarball err) nil)) = (message (if res "######## Built new package %s!" "######## Build of packag= e %s FAILED!!") tarball))) > (if (and (or (file-readable-p tarball) (file-readable-p (replace-regexp= -in-string "\\.tar\\'" ".el" tarball))) (or tarball-only (let ((pkgname (ca= r pkg-spec)) (default-directory (expand-file-name (file-name-directory tarb= all)))) (and (file-readable-p (concat pkgname "-readme.txt")) (file-readabl= e-p (concat pkgname ".html")) (file-readable-p (concat pkgname ".svg"))))))= (progn (elpaa--message "Tarball %s already built!" tarball) nil) (message = "=3D=3D=3D=3D=3D=3D=3D=3D Building tarball %s..." tarball) (let ((res nil))= (unwind-protect (condition-case err (setq res (elpaa--make-one-tarball-1 t= arball dir pkg-spec metadata revision-function tarball-only)) ((debug error= ) (message "Build error for %s: %S" tarball err) nil)) (message (if res "##= ###### Built new package %s!" "######## Build of package %s FAILED!!") tarb= all)))) > elpaa--make-one-tarball("archive-devel/compat-28.1.2.0.0.20220810.19185= 5.tar" "/home/monnier/src/emacs/elpa/packages/compat" ("compat" :url "https= ://git.sr.ht/~pkal/compat" :doc "compat.texi" :auto-sync t :internal--html-= docs nil) (nil "28.1.2.0.0.20220810.191855" "Emacs Lisp Compatibility Libra= ry" ((emacs (24 3)) (nadvice (0 3))) ((:authors ("Philip Kaludercic" . "phi= lipk@posteo.net")) (:maintainer "Compat Development" . "~pkal/compat-devel@= lists.sr.ht") (:keywords "lisp") (:url . "https://sr.ht/~pkal/compat"))) ni= l nil) > (let ((elpaa--name (concat elpaa--name "-devel"))) (elpaa--make-one-tar= ball tarball dir pkg-spec (cons nil (cons devel-vers (nthcdr 2 metadata))) = nil tarball-only)) > (let* ((date-version (elpaa--get-devel-version dir pkg-spec)) (devel-ve= rs (concat vers (if (string-match "[0-9]\\'" vers) ".") "0." date-version))= (tarball (or tarball-only (concat elpaa--devel-subdir (format "%s-%s.tar" = pkgname devel-vers)))) (new (let ((elpaa--name (concat elpaa--name "-devel"= ))) (elpaa--make-one-tarball tarball dir pkg-spec (cons nil (cons devel-ver= s (nthcdr 2 metadata))) nil tarball-only)))) (cond (tarball-only nil) ((equ= al vers "0") (elpaa--message "Package %s not released yet!" pkgname)) ((< (= apply #'min (version-to-list vers)) 0) (cond ((not new) (elpaa--message "No= thing new for package %s!" pkgname)) (t (let* ((last-rel (elpaa--get-last-r= elease pkg-spec)) (tarball (concat elpaa--release-subdir (format "%s-%s.tar= " pkgname (car last-rel)))) (metadata (cons nil (cons (car last-rel) (nthcd= r 2 metadata))))) (if (not last-rel) (elpaa--message "Package %s not releas= ed yet!" pkgname) (if (elpaa--make-one-tarball tarball dir pkg-spec metadat= a #'(lambda nil (cdr last-rel))) (progn (elpaa--release-email pkg-spec meta= data dir)))))))) (t (let ((tarball (concat elpaa--release-subdir (format "%= s-%s.tar" pkgname vers)))) (if (elpaa--make-one-tarball tarball dir pkg-spe= c metadata #'(lambda nil (elpaa--get-release-revision dir pkg-spec vers (pl= ist-get (cdr pkg-spec) :version-map)))) (progn (elpaa--release-email pkg-sp= ec metadata dir))))))) > (if (null metadata) (error "No metadata found for package: %s" pkgname)= (let* ((v metadata)) (setcar v nil)) (let* ((date-version (elpaa--get-deve= l-version dir pkg-spec)) (devel-vers (concat vers (if (string-match "[0-9]\= \'" vers) ".") "0." date-version)) (tarball (or tarball-only (concat elpaa-= -devel-subdir (format "%s-%s.tar" pkgname devel-vers)))) (new (let ((elpaa-= -name (concat elpaa--name "-devel"))) (elpaa--make-one-tarball tarball dir = pkg-spec (cons nil (cons devel-vers (nthcdr 2 metadata))) nil tarball-only)= ))) (cond (tarball-only nil) ((equal vers "0") (elpaa--message "Package %s = not released yet!" pkgname)) ((< (apply #'min (version-to-list vers)) 0) (c= ond ((not new) (elpaa--message "Nothing new for package %s!" pkgname)) (t (= let* ((last-rel (elpaa--get-last-release pkg-spec)) (tarball (concat elpaa-= -release-subdir (format "%s-%s.tar" pkgname (car last-rel)))) (metadata (co= ns nil (cons (car last-rel) (nthcdr 2 metadata))))) (if (not last-rel) (elp= aa--message "Package %s not released yet!" pkgname) (if (elpaa--make-one-ta= rball tarball dir pkg-spec metadata #'(lambda nil (cdr last-rel))) (progn (= elpaa--release-email pkg-spec metadata dir)))))))) (t (let ((tarball (conca= t elpaa--release-subdir (format "%s-%s.tar" pkgname vers)))) (if (elpaa--ma= ke-one-tarball tarball dir pkg-spec metadata #'(lambda nil (elpaa--get-rele= ase-revision dir pkg-spec vers (plist-get (cdr pkg-spec) :version-map)))) (= progn (elpaa--release-email pkg-spec metadata dir)))))))) > (let* ((pkgname (car pkg-spec)) (dir (expand-file-name pkgname "package= s")) (_ (cond (tarball-only nil) ((eq (nth 1 pkg-spec) :core) (elpaa--core-= package-sync pkg-spec)) (t (elpaa--worktree-sync pkg-spec)))) (_ (elpaa--me= ssage "pkg-spec for %s: %S" pkgname pkg-spec))=20 > Build error for archive-devel/compat-28.1.2.0.0.20220810.191855.tar: (err= or "Error-indicating exit code in elpaa--call-sandboxed: > compat.texi:220: @menu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24.5=C2= =A0=C2=BB inexistant > compat.texi:77: @detailmenu pointe vers un n=C5=93ud =C2=AB=C2=A0Emacs 24= .5=C2=A0=C2=BB inexistant > ") > ######## Build of package archive-devel/compat-28.1.2.0.0.20220810.191855= .tar FAILED!!