From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: "Basil L. Contovounesios" Newsgroups: gmane.emacs.devel Subject: Re: [elpa] main 8f4cb59: * elpa-packages (counsel, ivy, swiper): Auto-sync. Date: Tue, 09 Mar 2021 22:17:57 +0000 Message-ID: <875z20m0oa.fsf@tcd.ie> References: <20210225102521.11653.64611@vcs0.savannah.gnu.org> <20210225102523.7CEF420B28@vcs0.savannah.gnu.org> <87h7m0z07r.fsf@tcd.ie> <87mtvsundg.fsf@tcd.ie> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40419"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: emacs-devel@gnu.org, Oleh Krehel To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Mar 09 23:19:21 2021 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 1lJkhE-000AMy-OZ for ged-emacs-devel@m.gmane-mx.org; Tue, 09 Mar 2021 23:19:20 +0100 Original-Received: from localhost ([::1]:34102 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lJkhD-0005lM-PH for ged-emacs-devel@m.gmane-mx.org; Tue, 09 Mar 2021 17:19:19 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45196) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lJkgF-0005B3-Vu for emacs-devel@gnu.org; Tue, 09 Mar 2021 17:18:20 -0500 Original-Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]:50246) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lJkgC-0000Li-7q for emacs-devel@gnu.org; Tue, 09 Mar 2021 17:18:19 -0500 Original-Received: by mail-wm1-x329.google.com with SMTP id i9so4140834wml.0 for ; Tue, 09 Mar 2021 14:18:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=x3cEUKfc3sT2T8oOFSzrU1Vz8efGpSHmVUL+c92nNn0=; b=YeP42mnFKd7egOsU0rRk4PAtDEYsUfeBZ0l6XkJx/VKNs2IOmrqxaWfvZwJMYj7dhQ daG3DVkmrWp/5OrS1KtXGa0EbJXvTxjMUeMU1XyEINFjwbDBkHiAlcglVAeWCB7nxsL+ s5E2OCYSfFeIE5DOK8RAvjX7B1EXIVKxeprPFg4Hmj0XDeWGhsC0kwSApoiUNBgve7Ez 1raPFozoXGFPsXUlo74NOygBQOpG2b2hWYfe3JWJZcW3XAw4VgV+Juu3YZWeLYGvKLQN anvU/coOtwxxLT8Ps3Xjgx9vTerZFfHxsO+g0r/ht2oL4PQ4IATKkORynEcK80Ga27fq vayQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=x3cEUKfc3sT2T8oOFSzrU1Vz8efGpSHmVUL+c92nNn0=; b=grZDVi7aqZO1dxWODakJBTdvyaELXVlDBj/JA1WYMa5DFgBbX2+IjY21kfsmIhum7U H8XDnivSAAYzu1r/GrA4qI8M0Fx/rQYwok+lUEmNqKyqAf1GYNc5yP5wfog2ZLAl1Bd7 AsZ4bTUyKAdVMxDkvXbz+ndFuvdXmSGAmLhHVUQxdaCy4swKZdXSIl0TjdlpzQ4bChhH Q+1WVeE0xgPiX5yjv4tcRaG9/Ngman6YdM8zN8zokpgZJUO9hZ5L+LU9rq1bXrW0hSNP yqdsYbccyykPM6Q6I4/7DoerDwI5XziQRB939Y6db8b6gpkWYz2n/FHDx3hqvK1SGM+r 6c6g== X-Gm-Message-State: AOAM530bMUd9Ully9bpE2sJw9HNDhBScZrdANnLeIT6T71V3Of3aLEyl hutD+6wYiCB+vZX1F2lswhRprQ== X-Google-Smtp-Source: ABdhPJz3W6IlKx0GoIVtAQQeQxd1+XfN3FO9L7cEpXf19qEnoH21LY9b8MgSE9W9yGBEFr/8G9KSvw== X-Received: by 2002:a1c:a7d3:: with SMTP id q202mr45496wme.93.1615328280963; Tue, 09 Mar 2021 14:18:00 -0800 (PST) Original-Received: from localhost ([2a02:8084:20e2:c380:d15:339e:aa10:60f1]) by smtp.gmail.com with ESMTPSA id s84sm6149762wme.11.2021.03.09.14.17.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Mar 2021 14:17:59 -0800 (PST) In-Reply-To: <87mtvsundg.fsf@tcd.ie> (Basil L. Contovounesios's message of "Thu, 25 Feb 2021 16:24:11 +0000") Received-SPF: pass client-ip=2a00:1450:4864:20::329; envelope-from=contovob@tcd.ie; helo=mail-wm1-x329.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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:266254 Archived-At: --=-=-= Content-Type: text/plain "Basil L. Contovounesios" writes: > Stefan Monnier writes: > >> Another option is to have separate manually-synced branches in the >> upstream, one per ELPA package. This is basically the same as what we >> have currently, except that the manual syncing is done between the "main" >> branch" and the "for-elpa branches" (all within the upstream repository) >> rather than between the main branch in the upstream and the elpa >> branches in `elpa.git`. To me, it seems to bring no benefit, but >> I guess depending on your workflow (and access rights) it could make >> a difference. > > For better or worse I have access rights in both repositories, and I > don't mind maintaining these branches in swiper.git. To me, the main > benefit of this would be not having to switch between different > repositories for development or Git trickery, and then elpa.git would > remain more declarative. But ultimately I'm happy to do either. I've now bumped all the swiper.git versions to 0.13.3, and merged the upstream changes into the five corresponding branches in elpa.git. The elpa-admin release detection doesn't seem happy with it though: 'make build/ivy' git-resets to the literal commit in swiper.git that changed the Version header, which means it discards all the local deletions etc. in elpa.git. I attach a debug log of this in action, where the presence of files from swiper.git that were meant to be deleted in elpa.git causes the copyright check to barf. The following seems to fix the revision detection locally: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-Handle-merges-when-looking-for-release-revision.patch >From 5d2120a287ae781e778e05383d8e8d223c49999d Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Tue, 9 Mar 2021 21:53:34 +0000 Subject: [PATCH] Handle merges when looking for release revision For some discussion, see the following thread: https://lists.gnu.org/r/emacs-devel/2021-02/msg01935.html * elpa-admin.el (elpaa--get-release-revision): Follow only the first parent of merge commits. This handles cases where the Version header is updated in a different branch to the current one, as is the case with, e.g., ivy/swiper/counsel, whose external branches in elpa.git have local deletions not present in the upstream. --- elpa-admin.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elpa-admin.el b/elpa-admin.el index 5cb3d261c5..17b3bb1bd4 100644 --- a/elpa-admin.el +++ b/elpa-admin.el @@ -170,7 +170,7 @@ elpaa--get-release-revision (elpaa--call (current-buffer) "git" "log" "-n1" "--oneline" "--no-patch" - "--pretty=format:%H" + "--pretty=format:%H" "--first-parent" "-L" (concat "/^;;* *\\(Package-\\)\\?Version:/,+1:" (elpaa--main-file pkg-spec)))) (buffer-string) -- 2.30.1 --=-=-= Content-Type: text/plain It seems to work with ivy and ivy-avy, which introduce releases via merge commits, as well as dash, which doesn't. WDYT? Is there a better/different way? The only alternative I can think of is to enter revisions manually in the :version-map, but that doesn't seem desirable in the long run. P.S. Sorry if this breaks anything on elpa.gnu.org :(. Thanks, -- Basil --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=ivy.log Content-Transfer-Encoding: quoted-printable Content-Description: Ivy build log -*- mode: compilation; default-directory: "~/.local/src/elpa/" -*- Compilation started at Tue Mar 9 21:51:00 make build/ivy emacs --batch -l /home/blc/.local/src/elpa/admin/elpa-admin.el \ -f elpaa-batch-make-one-package ivy Checking package ivy for updates... ivy up-to-date pkg-spec for ivy: ("ivy" :url "https://github.com/abo-abo/swiper" :renames = (("doc/" "")) :doc "doc/ivy.texi") metadata =3D (nil "0.13.3" "Incremental Vertical completYon" ((emacs (24 5)= )) ((:authors ("Oleh Krehel" . "ohwoeowho@gmail.com")) (:maintainer "Oleh K= rehel" . "ohwoeowho@gmail.com") (:keywords "matching") (:url . "https://git= hub.com/abo-abo/swiper"))) call-process git ("show" "--pretty=3Dformat:%cI" "--no-patch") call-process date ("-d" "2021-03-09T19:30:39+00:00" "+%Y%m%d.%H%M%S") Building tarball archive-devel/ivy-0.13.3.0.20210309.193039.tar... call-process git ("status" "--porcelain") call-process git ("clean" "-x" "-d" "-f") call-sandboxed ("makeinfo" "--no-split" "doc/ivy.texi" "-o" "ivy.info") call-process bwrap ("--unshare-all" "--dev" "/dev" "--proc" "/proc" "--tmpf= s" "/tmp" "--ro-bind" "/etc/emacs" "/etc/emacs" "--ro-bind" "/etc/alternati= ves" "/etc/alternatives" "--ro-bind" "/usr" "/usr" "--ro-bind" "/bin" "/bin= " "--ro-bind" "/lib64" "/lib64" "--ro-bind" "/lib" "/lib" "--bind" "/home/b= lc/.local/src/elpa/packages/ivy/" "/home/blc/.local/src/elpa/packages/ivy/"= "makeinfo" "--no-split" "doc/ivy.texi" "-o" "ivy.info") call-sandboxed ("install-info" "--dir=3D/home/blc/.local/src/elpa/packages/= ivy/dir" "ivy.info") call-process bwrap ("--unshare-all" "--dev" "/dev" "--proc" "/proc" "--tmpf= s" "/tmp" "--ro-bind" "/etc/emacs" "/etc/emacs" "--ro-bind" "/etc/alternati= ves" "/etc/alternatives" "--ro-bind" "/usr" "/usr" "--ro-bind" "/bin" "/bin= " "--ro-bind" "/lib64" "/lib64" "--ro-bind" "/lib" "/lib" "--bind" "/home/b= lc/.local/src/elpa/packages/ivy/" "/home/blc/.local/src/elpa/packages/ivy/"= "install-info" "--dir=3D/home/blc/.local/src/elpa/packages/ivy/dir" "ivy.i= nfo") call-process tar ("--exclude-vcs" "-X" "/home/blc/.local/src/elpa/packages/= ivy/.elpaignore" "--transform=3Ds|^packages/ivy/doc\\($\\|/\\)|packages/ivy= /|" "--transform" "s|^packages/ivy|ivy-0.13.3.0.20210309.193039|" "-chf" "a= rchive-devel/ivy-0.13.3.0.20210309.193039.tar" "packages/ivy") ivy: (ivy . [(0 13 3 0 20210309 193039) ((emacs (24 5))) "Incremental Verti= cal completYon" tar ((:url . "https://github.com/abo-abo/swiper") (:keyword= s "matching") (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") (:authors= ("Oleh Krehel" . "ohwoeowho@gmail.com")))]) current AC: (1) new AC: (1 (ivy . [(0 13 3 0 20210309 193039) ((emacs (24 5))) "Incremental= Vertical completYon" tar ((:url . "https://github.com/abo-abo/swiper") (:k= eywords "matching") (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") (:a= uthors ("Oleh Krehel" . "ohwoeowho@gmail.com")))])) maint=3D("Oleh Krehel" . "ohwoeowho@gmail.com") Built new package archive-devel/ivy-0.13.3.0.20210309.193039.tar! Deleting temp files: ("/home/blc/.local/src/elpa/packages/ivy/ivy-pkg.el" "= /home/blc/.local/src/elpa/packages/ivy/dir" "/home/blc/.local/src/elpa/pack= ages/ivy/ivy.info" (closure ((temp-buffer . #) (generated-fi= les) (dir . "/home/blc/.local/src/elpa/packages/ivy") elpaa--temp-files t) = nil (let ((temp-buffer (generate-new-buffer " *temp*" t))) (save-current-bu= ffer (set-buffer temp-buffer) (unwind-protect (progn (let* ((default-direct= ory (elpaa--dirname dir))) (elpaa--call t "git" "clean" "-x" "-d" "-f") (el= paa--call t "git" "checkout" "--" ".")) (elpaa--message "%s" (buffer-string= ))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))))) call-process git ("clean" "-x" "-d" "-f") call-process git ("checkout" "--" ".") Building tarball archive/ivy-0.13.3.tar... call-process git ("status" "--porcelain") call-process git ("clean" "-x" "-d" "-f") call-process git ("log" "-n1" "--oneline" "--no-patch" "--pretty=3Dformat:%= H" "-L" "/^;;* *\\(Package-\\)\\?Version:/,+1:ivy.el") Found release rev: "9eb63d5b48f1958f814a4d684b8498c12a7abe6b" call-process git ("reset" "--merge" "9eb63d5b48f1958f814a4d684b8498c12a7abe= 6b") Reverted to release revision 9eb63d5b48f1958f814a4d684b8498c12a7abe6b Problem with copyright notices: Missing copyright notice in ivy/targets/plain.el Missing copyright notice in ivy/targets/obsolete-config.el Missing copyright notice in ivy/targets/install-deps.el Missing copyright notice in ivy/targets/checkdoc.el Missing copyright notice in ivy/elpa.el Debugger entered--Lisp error: (error "Abort") signal(error ("Abort")) error("Abort") (progn (message "Problem with copyright notices:\n%s" (mapconcat #'(lambd= a (line) (if (string-match ":" line) line (concat "Missing copyright notice= in " line))) filtered "\n")) (error "Abort")) (if filtered (progn (message "Problem with copyright notices:\n%s" (mapco= ncat #'(lambda (line) (if (string-match ":" line) line (concat "Missing cop= yright notice in " line))) filtered "\n")) (error "Abort"))) (let* ((collected (elpaa--copyright-collect pkg-spec)) (filtered (elpaa--= copyright-filter collected))) (if filtered (progn (message "Problem with co= pyright notices:\n%s" (mapconcat #'(lambda (line) (if ... line ...)) filter= ed "\n")) (error "Abort")))) (progn (let* ((collected (elpaa--copyright-collect pkg-spec)) (filtered (= elpaa--copyright-filter collected))) (if filtered (progn (message "Problem = with copyright notices:\n%s" (mapconcat #'(lambda ... ...) filtered "\n")) = (error "Abort"))))) (if (file-readable-p elpaa--copyright-file) (progn (let* ((collected (elp= aa--copyright-collect pkg-spec)) (filtered (elpaa--copyright-filter collect= ed))) (if filtered (progn (message "Problem with copyright notices:\n%s" (m= apconcat #'... filtered "\n")) (error "Abort")))))) elpaa--copyright-check(("ivy" :url "https://github.com/abo-abo/swiper" :r= enames (("doc/" "")) :doc "doc/ivy.texi")) (let* ((destdir (file-name-directory tarball)) (pkgname (car pkg-spec)) (= _ (if (and destdir (not (file-directory-p destdir))) (progn (make-directory= destdir)))) (vers (nth 1 metadata)) (elpaignore (expand-file-name ".elpaig= nore" dir)) (ignores (elpaa--spec-get pkg-spec :ignored-files)) (renames (e= lpaa--spec-get pkg-spec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-di= r)) (re (concat "\\`" (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\= \)\\(\\.[a-z]*z\\)?\\'")) (oldtarballs (if one-tarball nil (mapcar #'(lambd= a (file) (string-match re file) (cons ... file)) (directory-files destdir n= il re))))) (if ldir (progn (setq renames (let* ((va (list ... ""))) (if (me= mber va renames) renames (cons va renames)))))) (if revision-function (prog= n (elpaa--select-revision dir pkg-spec (funcall revision-function)))) (elpa= a--copyright-check pkg-spec) (elpaa--make pkg-spec dir) (elpaa--build-Info = pkg-spec dir) (elpaa--write-pkg-file dir pkgname metadata) (progn (or (not = (string-match "[][*\\|?]" pkgname)) (cl--assertion-failed '(not (string-mat= ch "[][*\\|?]" pkgname)))) nil) (progn (or (not (string-match "[][*\\|?]" v= ers)) (cl--assertion-failed '(not (string-match "[][*\\|?]" vers)))) nil) (= apply #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (cond (ignores = (mapcar #'... ignores)) ((file-readable-p elpaignore) (list "-X" elpaignore= ))) (mapcar #'(lambda (r) (elpaa--make-tar-transform pkgname r)) renames) (= list "--transform" (format "s|^packages/%s|%s-%s|" pkgname pkgname vers) "-= chf" tarball (concat "packages/" pkgname))))) (if one-tarball nil (let* ((p= kgdesc (elpaa--process-multi-file-package dir pkgname 'dont-rename))) (elpa= a--message "%s: %S" pkgname pkgdesc) (elpaa--update-archive-contents pkgdes= c destdir) (if (and nil revision-function) (progn (let ((default-directory = ...)) (elpaa--call nil "git" "tag" "-f" (format "%s-release/%s-%s" elpaa--n= ame pkgname vers))))) (let ((link (expand-file-name (format "%s.tar" pkgnam= e) destdir))) (if (file-symlink-p link) (progn (delete-file link))) (make-s= ymbolic-link (file-name-nondirectory tarball) link)) (setq oldtarballs (elp= aa--prune-old-tarballs tarball oldtarballs destdir)) (let* ((default-direct= ory (expand-file-name destdir))) (elpaa--html-make-pkg pkgdesc pkg-spec (co= ns (cons vers (file-name-nondirectory tarball)) oldtarballs) dir)) (message= "Built new package %s!" tarball) 'new))) (closure ((one-tarball) (revision-function closure ((tarball . "archive/i= vy-0.13.3.tar") (new . new) (tarball . "archive-devel/ivy-0.13.3.0.20210309= .193039.tar") (devel-vers . "0.13.3.0.20210309.193039") (date-version . "20= 210309.193039") (vers . "0.13.3") (metadata nil "0.13.3" "Incremental Verti= cal completYon" ((emacs (24 5))) ((:authors ("Oleh Krehel" . "ohwoeowho@gma= il.com")) (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") (:keywords "m= atching") (:url . "https://github.com/abo-abo/swiper"))) (_ . "pkg-spec for= ivy: (\"ivy\" :url \"https://github.com/...") (_) (dir . "/home/blc/.local= /src/elpa/packages/ivy") (pkgname . "ivy") (one-tarball) (pkg-spec "ivy" :u= rl "https://github.com/abo-abo/swiper" :renames (("doc/" "")) :doc "doc/ivy= .texi") elpaa--temp-files t) nil (elpaa--get-release-revision dir pkg-spec = vers (plist-get (cdr pkg-spec) :version-map))) (metadata nil "0.13.3" "Incr= emental Vertical completYon" ((emacs (24 5))) ((:authors ("Oleh Krehel" . "= ohwoeowho@gmail.com")) (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") = (:keywords "matching") (:url . "https://github.com/abo-abo/swiper"))) (pkg-= spec "ivy" :url "https://github.com/abo-abo/swiper" :renames (("doc/" "")) = :doc "doc/ivy.texi") (dir . "/home/blc/.local/src/elpa/packages/ivy") (tarb= all . "archive/ivy-0.13.3.tar") elpaa--temp-files t) nil (let* ((destdir (f= ile-name-directory tarball)) (pkgname (car pkg-spec)) (_ (if (and destdir (= not (file-directory-p destdir))) (progn (make-directory destdir)))) (vers (= nth 1 metadata)) (elpaignore (expand-file-name ".elpaignore" dir)) (ignores= (elpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--spec-get pkg-s= pec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (re (concat "\\`= " (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]*z\\)?\= \'")) (oldtarballs (if one-tarball nil (mapcar #'(lambda ... ... ...) (dire= ctory-files destdir nil re))))) (if ldir (progn (setq renames (let* ((va ..= .)) (if (member va renames) renames (cons va renames)))))) (if revision-fun= ction (progn (elpaa--select-revision dir pkg-spec (funcall revision-functio= n)))) (elpaa--copyright-check pkg-spec) (elpaa--make pkg-spec dir) (elpaa--= build-Info pkg-spec dir) (elpaa--write-pkg-file dir pkgname metadata) (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 (con= d (ignores (mapcar ... ignores)) ((file-readable-p elpaignore) (list "-X" e= lpaignore))) (mapcar #'(lambda ... ...) renames) (list "--transform" (forma= t "s|^packages/%s|%s-%s|" pkgname pkgname vers) "-chf" tarball (concat "pac= kages/" pkgname))))) (if one-tarball nil (let* ((pkgdesc (elpaa--process-mu= lti-file-package dir pkgname 'dont-rename))) (elpaa--message "%s: %S" pkgna= me pkgdesc) (elpaa--update-archive-contents pkgdesc destdir) (if (and nil r= evision-function) (progn (let (...) (elpaa--call nil "git" "tag" "-f" ...))= )) (let ((link (expand-file-name ... destdir))) (if (file-symlink-p link) (= progn (delete-file link))) (make-symbolic-link (file-name-nondirectory tarb= all) link)) (setq oldtarballs (elpaa--prune-old-tarballs tarball oldtarball= s destdir)) (let* ((default-directory (expand-file-name destdir))) (elpaa--= html-make-pkg pkgdesc pkg-spec (cons (cons vers ...) oldtarballs) dir)) (me= ssage "Built new package %s!" tarball) 'new))))() funcall((closure ((one-tarball) (revision-function closure ((tarball . "a= rchive/ivy-0.13.3.tar") (new . new) (tarball . "archive-devel/ivy-0.13.3.0.= 20210309.193039.tar") (devel-vers . "0.13.3.0.20210309.193039") (date-versi= on . "20210309.193039") (vers . "0.13.3") (metadata nil "0.13.3" "Increment= al Vertical completYon" ((emacs ...)) ((:authors ...) (:maintainer "Oleh Kr= ehel" . "ohwoeowho@gmail.com") (:keywords "matching") (:url . "https://gith= ub.com/abo-abo/swiper"))) (_ . "pkg-spec for ivy: (\"ivy\" :url \"https://g= ithub.com/...") (_) (dir . "/home/blc/.local/src/elpa/packages/ivy") (pkgna= me . "ivy") (one-tarball) (pkg-spec "ivy" :url "https://github.com/abo-abo/= swiper" :renames (("doc/" "")) :doc "doc/ivy.texi") elpaa--temp-files t) ni= l (elpaa--get-release-revision dir pkg-spec vers (plist-get (cdr pkg-spec) = :version-map))) (metadata nil "0.13.3" "Incremental Vertical completYon" ((= emacs (24 5))) ((:authors ("Oleh Krehel" . "ohwoeowho@gmail.com")) (:mainta= iner "Oleh Krehel" . "ohwoeowho@gmail.com") (:keywords "matching") (:url . = "https://github.com/abo-abo/swiper"))) (pkg-spec "ivy" :url "https://github= .com/abo-abo/swiper" :renames (("doc/" "")) :doc "doc/ivy.texi") (dir . "/h= ome/blc/.local/src/elpa/packages/ivy") (tarball . "archive/ivy-0.13.3.tar")= elpaa--temp-files t) nil (let* ((destdir (file-name-directory tarball)) (p= kgname (car pkg-spec)) (_ (if (and destdir (not ...)) (progn (make-director= y destdir)))) (vers (nth 1 metadata)) (elpaignore (expand-file-name ".elpai= gnore" dir)) (ignores (elpaa--spec-get pkg-spec :ignored-files)) (renames (= elpaa--spec-get pkg-spec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-d= ir)) (re (concat "\\`" (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el= \\)\\(\\.[a-z]*z\\)?\\'")) (oldtarballs (if one-tarball nil (mapcar #'... (= directory-files destdir nil re))))) (if ldir (progn (setq renames (let* (..= .) (if ... renames ...))))) (if revision-function (progn (elpaa--select-rev= ision dir pkg-spec (funcall revision-function)))) (elpaa--copyright-check p= kg-spec) (elpaa--make pkg-spec dir) (elpaa--build-Info pkg-spec dir) (elpaa= --write-pkg-file dir pkgname metadata) (progn (or (not (string-match "[][*\= \|?]" pkgname)) (cl--assertion-failed '(not ...))) nil) (progn (or (not (st= ring-match "[][*\\|?]" vers)) (cl--assertion-failed '(not ...))) nil) (appl= y #'elpaa--call nil "tar" (cons "--exclude-vcs" (append (cond (ignores ...)= (... ...)) (mapcar #'... renames) (list "--transform" (format "s|^packages= /%s|%s-%s|" pkgname pkgname vers) "-chf" tarball (concat "packages/" pkgnam= e))))) (if one-tarball nil (let* ((pkgdesc (elpaa--process-multi-file-packa= ge dir pkgname ...))) (elpaa--message "%s: %S" pkgname pkgdesc) (elpaa--upd= ate-archive-contents pkgdesc destdir) (if (and nil revision-function) (prog= n (let ... ...))) (let ((link ...)) (if (file-symlink-p link) (progn ...)) = (make-symbolic-link (file-name-nondirectory tarball) link)) (setq oldtarbal= ls (elpaa--prune-old-tarballs tarball oldtarballs destdir)) (let* ((default= -directory ...)) (elpaa--html-make-pkg pkgdesc pkg-spec (cons ... oldtarbal= ls) dir)) (message "Built new package %s!" tarball) 'new))))) (progn (elpaa--clean dir) (funcall f)) (unwind-protect (progn (elpaa--clean dir) (funcall f)) (elpaa--message "D= eleting temp files: %S" elpaa--temp-files) (let ((--dolist-tail-- elpaa--te= mp-files)) (while --dolist-tail-- (let ((f (car --dolist-tail--))) (if (str= ingp f) (delete-file f) (funcall f)) (setq --dolist-tail-- (cdr --dolist-ta= il--)))))) (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/blc/.local/src/elpa/packages/ivy" (clo= sure ((one-tarball) (revision-function closure ((tarball . "archive/ivy-0.1= 3.3.tar") (new . new) (tarball . "archive-devel/ivy-0.13.3.0.20210309.19303= 9.tar") (devel-vers . "0.13.3.0.20210309.193039") (date-version . "20210309= .193039") (vers . "0.13.3") (metadata nil "0.13.3" "Incremental Vertical co= mpletYon" ((emacs ...)) ((:authors ...) (:maintainer "Oleh Krehel" . "ohwoe= owho@gmail.com") (:keywords "matching") (:url . "https://github.com/abo-abo= /swiper"))) (_ . "pkg-spec for ivy: (\"ivy\" :url \"https://github.com/..."= ) (_) (dir . "/home/blc/.local/src/elpa/packages/ivy") (pkgname . "ivy") (o= ne-tarball) (pkg-spec "ivy" :url "https://github.com/abo-abo/swiper" :renam= es (("doc/" "")) :doc "doc/ivy.texi") elpaa--temp-files t) nil (elpaa--get-= release-revision dir pkg-spec vers (plist-get (cdr pkg-spec) :version-map))= ) (metadata nil "0.13.3" "Incremental Vertical completYon" ((emacs (24 5)))= ((:authors ("Oleh Krehel" . "ohwoeowho@gmail.com")) (:maintainer "Oleh Kre= hel" . "ohwoeowho@gmail.com") (:keywords "matching") (:url . "https://githu= b.com/abo-abo/swiper"))) (pkg-spec "ivy" :url "https://github.com/abo-abo/s= wiper" :renames (("doc/" "")) :doc "doc/ivy.texi") (dir . "/home/blc/.local= /src/elpa/packages/ivy") (tarball . "archive/ivy-0.13.3.tar") elpaa--temp-f= iles t) nil (let* ((destdir (file-name-directory tarball)) (pkgname (car pk= g-spec)) (_ (if (and destdir (not ...)) (progn (make-directory destdir)))) = (vers (nth 1 metadata)) (elpaignore (expand-file-name ".elpaignore" dir)) (= ignores (elpaa--spec-get pkg-spec :ignored-files)) (renames (elpaa--spec-ge= t pkg-spec :renames)) (ldir (elpaa--spec-get pkg-spec :lisp-dir)) (re (conc= at "\\`" (regexp-quote pkgname) "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]= *z\\)?\\'")) (oldtarballs (if one-tarball nil (mapcar #'... (directory-file= s destdir nil re))))) (if ldir (progn (setq renames (let* (...) (if ... ren= ames ...))))) (if revision-function (progn (elpaa--select-revision dir pkg-= spec (funcall revision-function)))) (elpaa--copyright-check pkg-spec) (elpa= a--make pkg-spec dir) (elpaa--build-Info pkg-spec dir) (elpaa--write-pkg-fi= le dir pkgname metadata) (progn (or (not (string-match "[][*\\|?]" pkgname)= ) (cl--assertion-failed '(not ...))) nil) (progn (or (not (string-match "[]= [*\\|?]" vers)) (cl--assertion-failed '(not ...))) nil) (apply #'elpaa--cal= l nil "tar" (cons "--exclude-vcs" (append (cond (ignores ...) (... ...)) (m= apcar #'... renames) (list "--transform" (format "s|^packages/%s|%s-%s|" pk= gname pkgname vers) "-chf" tarball (concat "packages/" pkgname))))) (if one= -tarball nil (let* ((pkgdesc (elpaa--process-multi-file-package dir pkgname= ...))) (elpaa--message "%s: %S" pkgname pkgdesc) (elpaa--update-archive-co= ntents pkgdesc destdir) (if (and nil revision-function) (progn (let ... ...= ))) (let ((link ...)) (if (file-symlink-p link) (progn ...)) (make-symbolic= -link (file-name-nondirectory tarball) link)) (setq oldtarballs (elpaa--pru= ne-old-tarballs tarball oldtarballs destdir)) (let* ((default-directory ...= )) (elpaa--html-make-pkg pkgdesc pkg-spec (cons ... oldtarballs) dir)) (mes= sage "Built new package %s!" tarball) 'new))))) (if (or (file-readable-p tarball) (file-readable-p (replace-regexp-in-str= ing "\\.tar\\'" ".el" tarball))) (progn (elpaa--message "Tarball %s already= built!" tarball) nil) (elpaa--call-with-temp-files dir #'(lambda nil (let*= ((destdir (file-name-directory tarball)) (pkgname (car pkg-spec)) (_ (if .= .. ...)) (vers (nth 1 metadata)) (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)) = (re (concat "\\`" ... "-\\([0-9].*\\)\\.\\(tar\\|el\\)\\(\\.[a-z]*z\\)?\\'"= )) (oldtarballs (if one-tarball nil ...))) (if ldir (progn (setq renames ..= .))) (if revision-function (progn (elpaa--select-revision dir pkg-spec ...)= )) (elpaa--copyright-check pkg-spec) (elpaa--make pkg-spec dir) (elpaa--bui= ld-Info pkg-spec dir) (elpaa--write-pkg-file dir pkgname metadata) (progn (= or (not ...) (cl--assertion-failed ...)) nil) (progn (or (not ...) (cl--ass= ertion-failed ...)) nil) (apply #'elpaa--call nil "tar" (cons "--exclude-vc= s" (append ... ... ...))) (if one-tarball nil (let* (...) (elpaa--message "= %s: %S" pkgname pkgdesc) (elpaa--update-archive-contents pkgdesc destdir) (= if ... ...) (let ... ... ...) (setq oldtarballs ...) (let* ... ...) (messag= e "Built new package %s!" tarball) 'new)))))) elpaa--make-one-tarball("archive/ivy-0.13.3.tar" "/home/blc/.local/src/el= pa/packages/ivy" ("ivy" :url "https://github.com/abo-abo/swiper" :renames (= ("doc/" "")) :doc "doc/ivy.texi") (nil "0.13.3" "Incremental Vertical compl= etYon" ((emacs (24 5))) ((:authors ("Oleh Krehel" . "ohwoeowho@gmail.com"))= (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") (:keywords "matching")= (:url . "https://github.com/abo-abo/swiper"))) (closure ((tarball . "archi= ve/ivy-0.13.3.tar") (new . new) (tarball . "archive-devel/ivy-0.13.3.0.2021= 0309.193039.tar") (devel-vers . "0.13.3.0.20210309.193039") (date-version .= "20210309.193039") (vers . "0.13.3") (metadata nil "0.13.3" "Incremental V= ertical completYon" ((emacs (24 5))) ((:authors ("Oleh Krehel" . "ohwoeowho= @gmail.com")) (:maintainer "Oleh Krehel" . "ohwoeowho@gmail.com") (:keyword= s "matching") (:url . "https://github.com/abo-abo/swiper"))) (_ . "pkg-spec= for ivy: (\"ivy\" :url \"https://github.com/...") (_) (dir . "/home/blc/.l= ocal/src/elpa/packages/ivy") (pkgname . "ivy") (one-tarball) (pkg-spec "ivy= " :url "https://github.com/abo-abo/swiper" :renames (("doc/" "")) :doc "doc= /ivy.texi") elpaa--temp-files t) nil (elpaa--get-release-revision dir pkg-s= pec vers (plist-get (cdr pkg-spec) :version-map)))) (if (elpaa--make-one-tarball tarball dir pkg-spec metadata #'(lambda nil = (elpaa--get-release-revision dir pkg-spec vers (plist-get (cdr pkg-spec) :v= ersion-map)))) (progn (elpaa--release-email pkg-spec metadata dir))) (let ((tarball (concat elpaa--release-subdir (format "%s-%s.tar" pkgname = vers)))) (if (elpaa--make-one-tarball tarball dir pkg-spec metadata #'(lamb= da nil (elpaa--get-release-revision dir pkg-spec vers (plist-get (cdr pkg-s= pec) :version-map)))) (progn (elpaa--release-email pkg-spec metadata dir)))) (cond (one-tarball nil) ((or (equal vers "0") (member '-4 (version-to-lis= t vers))) (cond ((equal vers "0") (elpaa--message "Package %s not released = yet!" pkgname)) ((not new) (elpaa--message "Nothing new for package %s!" pk= gname)) (t (let* ((last-rel (elpaa--get-last-release pkg-spec)) (tarball (c= oncat elpaa--release-subdir ...)) (metadata (cons nil ...))) (if (not last-= rel) (elpaa--message "Package %s not released yet!" pkgname) (if (elpaa--ma= ke-one-tarball tarball dir pkg-spec metadata ...) (progn ...))))))) (t (let= ((tarball (concat elpaa--release-subdir (format "%s-%s.tar" pkgname vers))= )) (if (elpaa--make-one-tarball tarball dir pkg-spec metadata #'(lambda nil= (elpaa--get-release-revision dir pkg-spec vers ...))) (progn (elpaa--relea= se-email pkg-spec metadata dir)))))) (let* ((date-version (elpaa--get-devel-version dir pkg-spec)) (devel-vers= (concat vers (if (string-match "[0-9]\\'" vers) ".") "0." date-version)) (= tarball (or one-tarball (concat elpaa--devel-subdir (format "%s-%s.tar" pkg= name 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 one-tarball)))) (cond (one-tarball nil) ((or (equa= l vers "0") (member '-4 (version-to-list vers))) (cond ((equal vers "0") (e= lpaa--message "Package %s not released yet!" pkgname)) ((not new) (elpaa--m= essage "Nothing new for package %s!" pkgname)) (t (let* ((last-rel ...) (ta= rball ...) (metadata ...)) (if (not last-rel) (elpaa--message "Package %s n= ot released yet!" pkgname) (if ... ...)))))) (t (let ((tarball (concat elpa= a--release-subdir (format "%s-%s.tar" pkgname vers)))) (if (elpaa--make-one= -tarball tarball dir pkg-spec metadata #'(lambda nil ...)) (progn (elpaa--r= elease-email pkg-spec metadata dir))))))) (if (null metadata) (error "No metadata found for package: %s" pkgname) (= let* ((v metadata)) (setcar v nil)) (let* ((date-version (elpaa--get-devel-= version dir pkg-spec)) (devel-vers (concat vers (if (string-match "[0-9]\\'= " vers) ".") "0." date-version)) (tarball (or one-tarball (concat elpaa--de= vel-subdir (format "%s-%s.tar" pkgname devel-vers)))) (new (let ((elpaa--na= me (concat elpaa--name "-devel"))) (elpaa--make-one-tarball tarball dir pkg= -spec (cons nil (cons devel-vers ...)) nil one-tarball)))) (cond (one-tarba= ll nil) ((or (equal vers "0") (member '-4 (version-to-list vers))) (cond ((= equal vers "0") (elpaa--message "Package %s not released yet!" pkgname)) ((= not new) (elpaa--message "Nothing new for package %s!" pkgname)) (t (let* (= ... ... ...) (if ... ... ...))))) (t (let ((tarball (concat elpaa--release-= subdir ...))) (if (elpaa--make-one-tarball tarball dir pkg-spec metadata #'= ...) (progn (elpaa--release-email pkg-spec metadata dir)))))))) (let* ((pkgname (car pkg-spec)) (dir (expand-file-name pkgname "packages"= )) (_ (cond (one-tarball nil) ((eq (nth 1 pkg-spec) :core) (elpaa--core-pac= kage-sync pkg-spec)) (t (elpaa--worktree-sync pkg-spec)))) (_ (elpaa--messa= ge "pkg-spec for %s: %S" pkgname pkg-spec)) (metadata (elpaa--metadata dir = pkg-spec)) (vers (nth 1 metadata))) (elpaa--message "metadata =3D %S" metad= ata) (if (null metadata) (error "No metadata found for package: %s" pkgname= ) (let* ((v metadata)) (setcar v nil)) (let* ((date-version (elpaa--get-dev= el-version dir pkg-spec)) (devel-vers (concat vers (if (string-match "[0-9]= \\'" vers) ".") "0." date-version)) (tarball (or one-tarball (concat elpaa-= -devel-subdir (format "%s-%s.tar" pkgname devel-vers)))) (new (let ((elpaa-= -name ...)) (elpaa--make-one-tarball tarball dir pkg-spec (cons nil ...) ni= l one-tarball)))) (cond (one-tarball nil) ((or (equal vers "0") (member '-4= (version-to-list vers))) (cond ((equal vers "0") (elpaa--message "Package = %s not released yet!" pkgname)) ((not new) (elpaa--message "Nothing new for= package %s!" pkgname)) (t (let* ... ...)))) (t (let ((tarball ...)) (if (e= lpaa--make-one-tarball tarball dir pkg-spec metadata ...) (progn ...)))))))) elpaa--make-one-package(("ivy" :url "https://github.com/abo-abo/swiper" := renames (("doc/" "")) :doc "doc/ivy.texi")) (while command-line-args-left (elpaa--make-one-package (elpaa--get-packag= e-spec (car-safe (prog1 command-line-args-left (setq command-line-args-left= (cdr command-line-args-left))))))) elpaa-batch-make-one-package() command-line-1(("-l" "/home/blc/.local/src/elpa/admin/elpa-admin.el" "-f"= "elpaa-batch-make-one-package" "ivy")) command-line() normal-top-level() make: *** [GNUmakefile:21: build/ivy] Error 255 Compilation exited abnormally with code 2 at Tue Mar 9 21:51:01 --=-=-=--