From unknown Mon Jun 23 07:53:27 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14082: 24.3; Package dependences calculated in reverse Resent-From: Donald Curtis Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 28 Mar 2013 20:43:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 14082 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 14082@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.13645033425565 (code B ref -1); Thu, 28 Mar 2013 20:43:02 +0000 Received: (at submit) by debbugs.gnu.org; 28 Mar 2013 20:42:22 +0000 Received: from localhost ([127.0.0.1]:50010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1ULJeP-0001Rg-EQ for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:42:22 -0400 Received: from eggs.gnu.org ([208.118.235.92]:58291) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1ULJeM-0001RY-67 for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:42:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ULJbo-0004ik-Qe for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:39:46 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,RCVD_IN_XBL, T_FRT_PACKAGE autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:59067) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbo-0004iZ-NS for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:39:40 -0400 Received: from eggs.gnu.org ([208.118.235.92]:41411) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbl-0005nK-S7 for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ULJbi-0004ff-Sf for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:37 -0400 Received: from mail-ie0-x22a.google.com ([2607:f8b0:4001:c03::22a]:43772) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbi-0004fF-N3 for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:34 -0400 Received: by mail-ie0-f170.google.com with SMTP id c11so12361952ieb.29 for ; Thu, 28 Mar 2013 13:39:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:content-type:content-transfer-encoding:subject :message-id:date:to:mime-version:x-mailer:x-gm-message-state; bh=l6QZYHGPjroTxnLFLd7QX1aSuNAz2qFIW9mUYbOjLws=; b=BWg4XjXKmD7OcsCu9Lzj8A4LO0LCUpblX0Y7vNjAu9C0m/Yc6XE6EGAVAC7upiHd9A +67TQH3yPk5TIfmAijgyTNuKPrAn+/gVGxL91VWn1MQJWw0nzDL3n4UrdofeNHcx1i+O X3b24/iQiljTecMRbRfYzpvbgt1GcrgQUJjrsMjSFYwxv9H9MqvMjx14bxw4giFfOUJQ kL7WqDHJ6whxQk1fcBDnm65biFBUw0BYNR5Cc/mmKr0H4y8Fmx8PeYf8m0CLgFjYnKv3 Y7R7dihKQLljwP6bRUoAp4AnLUqEwqCt+pmWvb0bX6NSDGZVXDiteS6Iaq6Fsq5zLmhx 36GQ== X-Received: by 10.43.103.195 with SMTP id dj3mr49127icc.3.1364503172700; Thu, 28 Mar 2013 13:39:32 -0700 (PDT) Received: from [172.16.14.104] ([192.133.84.6]) by mx.google.com with ESMTPS id p11sm9409676igr.4.2013.03.28.13.39.30 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 28 Mar 2013 13:39:31 -0700 (PDT) From: Donald Curtis Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Message-Id: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> Date: Thu, 28 Mar 2013 15:38:48 -0500 Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) X-Mailer: Apple Mail (2.1503) X-Gm-Message-State: ALoCoQlGB+Z6AifUnIcQhGWzEnagJEClzOsdc6bPwXLxWuT/WU3El1x5X1t/I5eHBNbjFc0zHljv X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -6.9 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) When `package.el' calculates package dependencies, they are installed in the incorrect order. Consider the rinari third-party package, * rinari requires: ruby-mode, inf-ruby, ruby-compilation, jump * jump requires: findr, inflections * ruby-compilation requires: inf-ruby Yet, the order of compilation appears to be: 1. inflections 2. findr 3. jump 4. ruby-compilation *fails missing inf-ruby* 5. inf-ruby 6. rinary *fails missing ruby-compilation* It seems to be that the `jump' dependency of `rinari' is being installed first, and even it's dependencies are being installed in a reverse order. The way that I have personally fixed this problem was to add advice to the `package-compute-transaction' function: (defadvice package-compute-transaction (before package-compute-transaction-reverse (package-list requirements) activate compile) "reverse the requirements" (setq requirements (reverse requirements)) (print requirements)) It seems like there must be something in the way the requirements is being built that means that when they are read they are done in reverse order. In GNU Emacs 24.3.1 (x86_64-apple-darwin12.3.0, NS apple-appkit-1187.37) of 2013-03-28 on hendrix.local Windowing system distributor `Apple', version 10.3.1187 Configured using: `configure '--prefix=3D/usr/local/Cellar/emacs/24.3' '--without-dbus' '--enable-locallisppath=3D/usr/local/share/emacs/site-lisp' '--infodir=3D/usr/local/Cellar/emacs/24.3/share/info/emacs' '--with-ns' '--disable-ns-self-contained' 'CC=3Dcc'' Important settings: locale-coding-system: utf-8 default enable-multibyte-characters: t Major mode: Info Minor modes in effect: which-function-mode: t ido-everywhere: t delete-selection-mode: t global-subword-mode: t subword-mode: t winner-mode: t show-paren-mode: t savehist-mode: t shell-dirtrack-mode: t global-auto-revert-mode: t recentf-mode: t tooltip-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: C-x RET p a c k l i C-s r i n=20 a r C-a i x y C-x b C-g C-x RET b u g C-w=20 C-w C-w c r e s u b C-g C-s s m e x C-a i x y C-x RET=20 b u g C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n =20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-b=20 C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-p=20 C-p C-p C-p C-p M-f M-f M-f M-f M-f M-[ ESC ESC ESC=20 ESC C-g C-g C-x b b u g =20 C-g C-x RET e m a c s b u g C-n P a c k a=20 g e SPC D e p e n d e n c e s SPC C a l c u l a t e=20 d SPC i n SPC R e v e r s e C-p C-n C-w h=20 e W h e n C-w C-w C-/ C-/ C-/=20 C-/ C-/ C-/ C-/ C-/ C-? C-? C-? C-c k C-x RET Recent messages: Checking 70 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/erc... Checking 48 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/emulation... Checking 147 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/emacs-lisp... Checking 24 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/cedet... Checking 57 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/calendar... Checking 87 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/calc... Checking 77 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/obsolete... Checking 1 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/leim... Checking for load-path shadows...done Undo! [8 times] Load-path shadows: ~/.emacs.d/custom hides = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/custom Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader sendmail info smex smex-autoloads rinari-autoloads easy-mmode inf-ruby ruby-mode inf-ruby-autoloads ruby-compilation-autoloads inflections findr jump-autoloads findr-autoloads compile inflections-autoloads autoload misearch multi-isearch mule-util time-stamp vc-git mail-utils network-stream starttls url-http tls mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw url-cache url-auth url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util url-parse url-vars mailcap finder-inf whitespace base16-ocean-theme which-func imenu cus-start cus-load rx ido delsel subword winner paren savehist tramp-cache tramp-sh tramp tramp-compat auth-source eieio gnus-util mm-util mail-prsvr password-cache tramp-loaddefs shell pcomplete comint ansi-color ring format-spec autorevert byte-opt warnings bytecomp byte-compile cconv edmacro kmacro windmove server defun uniquify advice help-fns advice-preload saveplace recentf tree-widget wid-edit misc midnight checkdoc thingatpt help-mode easymenu package cl-macs gv cl cl-lib time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process ns multi-tty emacs) From unknown Mon Jun 23 07:53:27 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.428 (Entity 5.428) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Donald Curtis Subject: bug#14082: closed (Re: bug#14082: 24.3; Package dependences calculated in reverse) Message-ID: References: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> X-Gnu-PR-Message: they-closed 14082 X-Gnu-PR-Package: emacs Reply-To: 14082@debbugs.gnu.org Date: Thu, 04 Apr 2013 02:51:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1365043863-26080-1" This is a multi-part message in MIME format... ------------=_1365043863-26080-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #14082: 24.3; Package dependences calculated in reverse which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 14082@debbugs.gnu.org. --=20 14082: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D14082 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1365043863-26080-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 14082-done) by debbugs.gnu.org; 4 Apr 2013 02:50:16 +0000 Received: from localhost ([127.0.0.1]:60936 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UNaFi-0006lf-K3 for submit@debbugs.gnu.org; Wed, 03 Apr 2013 22:50:15 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:29342) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UNaFg-0006lX-OT for 14082-done@debbugs.gnu.org; Wed, 03 Apr 2013 22:50:13 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av8EABK/CFFFxLSu/2dsb2JhbABEDrsng1kXc4IeAQEEAVYjBQsLDiYSFBgNJIgeBsEtkQoDkloBA5IcgV6COVo X-IPAS-Result: Av8EABK/CFFFxLSu/2dsb2JhbABEDrsng1kXc4IeAQEEAVYjBQsLDiYSFBgNJIgeBsEtkQoDkloBA5IcgV6COVo X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="6440769" Received: from 69-196-180-174.dsl.teksavvy.com (HELO fmsmemgm.homelinux.net) ([69.196.180.174]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 03 Apr 2013 22:47:01 -0400 Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 71030AE3CB; Wed, 3 Apr 2013 22:46:44 -0400 (EDT) From: Stefan Monnier To: Donald Curtis Subject: Re: bug#14082: 24.3; Package dependences calculated in reverse Message-ID: References: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> Date: Wed, 03 Apr 2013 22:46:44 -0400 In-Reply-To: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> (Donald Curtis's message of "Thu, 28 Mar 2013 15:38:48 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.8 (/) X-Debbugs-Envelope-To: 14082-done Cc: 14082-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.5 (/) > * rinari requires: ruby-mode, inf-ruby, ruby-compilation, jump > * jump requires: findr, inflections > * ruby-compilation requires: inf-ruby > Yet, the order of compilation appears to be: > 1. inflections > 2. findr > 3. jump > 4. ruby-compilation *fails missing inf-ruby* Indeed, thanks. I installed the patch below which should fix this problem. Note that a better fix would be to first download packages, the unpack packages, then autoload packages, then compile packages. This way, ordering won't matter (including circular dependencies). Stefan === modified file 'lisp/emacs-lisp/package.el' --- lisp/emacs-lisp/package.el 2013-04-04 01:51:33 +0000 +++ lisp/emacs-lisp/package.el 2013-04-04 02:42:31 +0000 @@ -811,7 +811,10 @@ (package-version-join (package-desc-vers (cdr pkg-desc))))) ;; Only add to the transaction if we don't already have it. (unless (memq next-pkg package-list) - (push next-pkg package-list)) + (setq package-list + ;; Move to front, so it gets installed early enough + ;; (bug#14082). + (cons next-pkg (delq next-pkg package-list)))) (setq package-list (package-compute-transaction package-list (package-desc-reqs ------------=_1365043863-26080-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 28 Mar 2013 20:42:22 +0000 Received: from localhost ([127.0.0.1]:50010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1ULJeP-0001Rg-EQ for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:42:22 -0400 Received: from eggs.gnu.org ([208.118.235.92]:58291) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1ULJeM-0001RY-67 for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:42:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ULJbo-0004ik-Qe for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:39:46 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,RCVD_IN_XBL, T_FRT_PACKAGE autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:59067) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbo-0004iZ-NS for submit@debbugs.gnu.org; Thu, 28 Mar 2013 16:39:40 -0400 Received: from eggs.gnu.org ([208.118.235.92]:41411) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbl-0005nK-S7 for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ULJbi-0004ff-Sf for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:37 -0400 Received: from mail-ie0-x22a.google.com ([2607:f8b0:4001:c03::22a]:43772) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULJbi-0004fF-N3 for bug-gnu-emacs@gnu.org; Thu, 28 Mar 2013 16:39:34 -0400 Received: by mail-ie0-f170.google.com with SMTP id c11so12361952ieb.29 for ; Thu, 28 Mar 2013 13:39:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:content-type:content-transfer-encoding:subject :message-id:date:to:mime-version:x-mailer:x-gm-message-state; bh=l6QZYHGPjroTxnLFLd7QX1aSuNAz2qFIW9mUYbOjLws=; b=BWg4XjXKmD7OcsCu9Lzj8A4LO0LCUpblX0Y7vNjAu9C0m/Yc6XE6EGAVAC7upiHd9A +67TQH3yPk5TIfmAijgyTNuKPrAn+/gVGxL91VWn1MQJWw0nzDL3n4UrdofeNHcx1i+O X3b24/iQiljTecMRbRfYzpvbgt1GcrgQUJjrsMjSFYwxv9H9MqvMjx14bxw4giFfOUJQ kL7WqDHJ6whxQk1fcBDnm65biFBUw0BYNR5Cc/mmKr0H4y8Fmx8PeYf8m0CLgFjYnKv3 Y7R7dihKQLljwP6bRUoAp4AnLUqEwqCt+pmWvb0bX6NSDGZVXDiteS6Iaq6Fsq5zLmhx 36GQ== X-Received: by 10.43.103.195 with SMTP id dj3mr49127icc.3.1364503172700; Thu, 28 Mar 2013 13:39:32 -0700 (PDT) Received: from [172.16.14.104] ([192.133.84.6]) by mx.google.com with ESMTPS id p11sm9409676igr.4.2013.03.28.13.39.30 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 28 Mar 2013 13:39:31 -0700 (PDT) From: Donald Curtis Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Subject: 24.3; Package dependences calculated in reverse Message-Id: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> Date: Thu, 28 Mar 2013 15:38:48 -0500 To: bug-gnu-emacs@gnu.org Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) X-Mailer: Apple Mail (2.1503) X-Gm-Message-State: ALoCoQlGB+Z6AifUnIcQhGWzEnagJEClzOsdc6bPwXLxWuT/WU3El1x5X1t/I5eHBNbjFc0zHljv X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -6.9 (------) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) When `package.el' calculates package dependencies, they are installed in the incorrect order. Consider the rinari third-party package, * rinari requires: ruby-mode, inf-ruby, ruby-compilation, jump * jump requires: findr, inflections * ruby-compilation requires: inf-ruby Yet, the order of compilation appears to be: 1. inflections 2. findr 3. jump 4. ruby-compilation *fails missing inf-ruby* 5. inf-ruby 6. rinary *fails missing ruby-compilation* It seems to be that the `jump' dependency of `rinari' is being installed first, and even it's dependencies are being installed in a reverse order. The way that I have personally fixed this problem was to add advice to the `package-compute-transaction' function: (defadvice package-compute-transaction (before package-compute-transaction-reverse (package-list requirements) activate compile) "reverse the requirements" (setq requirements (reverse requirements)) (print requirements)) It seems like there must be something in the way the requirements is being built that means that when they are read they are done in reverse order. In GNU Emacs 24.3.1 (x86_64-apple-darwin12.3.0, NS apple-appkit-1187.37) of 2013-03-28 on hendrix.local Windowing system distributor `Apple', version 10.3.1187 Configured using: `configure '--prefix=3D/usr/local/Cellar/emacs/24.3' '--without-dbus' '--enable-locallisppath=3D/usr/local/share/emacs/site-lisp' '--infodir=3D/usr/local/Cellar/emacs/24.3/share/info/emacs' '--with-ns' '--disable-ns-self-contained' 'CC=3Dcc'' Important settings: locale-coding-system: utf-8 default enable-multibyte-characters: t Major mode: Info Minor modes in effect: which-function-mode: t ido-everywhere: t delete-selection-mode: t global-subword-mode: t subword-mode: t winner-mode: t show-paren-mode: t savehist-mode: t shell-dirtrack-mode: t global-auto-revert-mode: t recentf-mode: t tooltip-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: C-x RET p a c k l i C-s r i n=20 a r C-a i x y C-x b C-g C-x RET b u g C-w=20 C-w C-w c r e s u b C-g C-s s m e x C-a i x y C-x RET=20 b u g C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n =20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n=20 C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-b=20 C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p=20 C-p C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-p=20 C-p C-p C-p C-p M-f M-f M-f M-f M-f M-[ ESC ESC ESC=20 ESC C-g C-g C-x b b u g =20 C-g C-x RET e m a c s b u g C-n P a c k a=20 g e SPC D e p e n d e n c e s SPC C a l c u l a t e=20 d SPC i n SPC R e v e r s e C-p C-n C-w h=20 e W h e n C-w C-w C-/ C-/ C-/=20 C-/ C-/ C-/ C-/ C-/ C-? C-? C-? C-c k C-x RET Recent messages: Checking 70 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/erc... Checking 48 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/emulation... Checking 147 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/emacs-lisp... Checking 24 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/cedet... Checking 57 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/calendar... Checking 87 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/calc... Checking 77 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/obsolete... Checking 1 files in = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/leim... Checking for load-path shadows...done Undo! [8 times] Load-path shadows: ~/.emacs.d/custom hides = /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/custom Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader sendmail info smex smex-autoloads rinari-autoloads easy-mmode inf-ruby ruby-mode inf-ruby-autoloads ruby-compilation-autoloads inflections findr jump-autoloads findr-autoloads compile inflections-autoloads autoload misearch multi-isearch mule-util time-stamp vc-git mail-utils network-stream starttls url-http tls mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw url-cache url-auth url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util url-parse url-vars mailcap finder-inf whitespace base16-ocean-theme which-func imenu cus-start cus-load rx ido delsel subword winner paren savehist tramp-cache tramp-sh tramp tramp-compat auth-source eieio gnus-util mm-util mail-prsvr password-cache tramp-loaddefs shell pcomplete comint ansi-color ring format-spec autorevert byte-opt warnings bytecomp byte-compile cconv edmacro kmacro windmove server defun uniquify advice help-fns advice-preload saveplace recentf tree-widget wid-edit misc midnight checkdoc thingatpt help-mode easymenu package cl-macs gv cl cl-lib time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process ns multi-tty emacs) ------------=_1365043863-26080-1-- From unknown Mon Jun 23 07:53:27 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14082: 24.3; Package dependences calculated in reverse Resent-From: Donald Curtis Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 05 Apr 2013 15:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14082 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: 14082-done@debbugs.gnu.org Received: via spool by 14082-done@debbugs.gnu.org id=D14082.136517586132414 (code D ref 14082); Fri, 05 Apr 2013 15:31:02 +0000 Received: (at 14082-done) by debbugs.gnu.org; 5 Apr 2013 15:31:01 +0000 Received: from localhost ([127.0.0.1]:35710 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UO8bV-0008Ql-C9 for submit@debbugs.gnu.org; Fri, 05 Apr 2013 11:31:01 -0400 Received: from mail-ia0-f172.google.com ([209.85.210.172]:35061) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UO8bS-0008Qc-JH for 14082-done@debbugs.gnu.org; Fri, 05 Apr 2013 11:30:59 -0400 Received: by mail-ia0-f172.google.com with SMTP id l29so3337247iag.31 for <14082-done@debbugs.gnu.org>; Fri, 05 Apr 2013 08:27:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:content-type:mime-version:subject:from:in-reply-to:date :cc:content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=wMW2gLrEaZoCSD06HHjM5/s09bkbtMuBfIz1ftc2GWQ=; b=W2rYCsQkk4LjUnK+UuhedEio2EiVDGpdxAr7cY1+Ofy35rzwAfcAtxtZa/Mc9I8Kxm aX+Z1VkRmAdcZvRkIllegGBjpEPesQOI2oDcwTsxMPrztjzfuOEgqREWNRBE5ZiSpCSP qSfWx6H274Bhza4RDjUY8KRJEZuvGp/lb0PCnUIDIBZFZ3MgzKvf4J5wKRZ3xccZ+1NY A1bGcRCKGjuzqgHziAolqAKf2cqLazkN3NjA2x5ZiivHvj4+IlCImFpiCS1K+cGdEB7b tTyQUwZRzdczaH0OzbY6qu6fWyGjwEePsF0NLckLxwpvoz1GgpHvK84cVQzQjxrMBZj5 DHHg== X-Received: by 10.50.17.234 with SMTP id r10mr1780243igd.102.1365175662215; Fri, 05 Apr 2013 08:27:42 -0700 (PDT) Received: from [172.16.14.104] ([192.133.84.6]) by mx.google.com with ESMTPS id qs4sm3078860igb.10.2013.04.05.08.27.39 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 05 Apr 2013 08:27:40 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) From: Donald Curtis In-Reply-To: Date: Fri, 5 Apr 2013 10:27:38 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <110E0219-69CB-4A85-AF3B-9A074704575C@coe.edu> References: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> X-Mailer: Apple Mail (2.1503) X-Gm-Message-State: ALoCoQk2ZWzBgttjrBW3xPtHyGMqvdfRY+pOPDAq2vKogeTnpDPbmwMOtThttpiLFAPVmVf9smXU X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) It appears the bug is still happening because if the package already = exists then the new code will not get called because it is wrapped in = the `unless'. The following patch works perfectly for me. It just always = adds the package to the front. diff --git a/package.el.orig b/package.el index ab17ec1..064e1db 100644 --- a/package.el.orig +++ b/package.el @@ -810,11 +810,10 @@ but version %s required" (symbol-name next-pkg) (package-version-join next-version) (package-version-join (package-desc-vers (cdr = pkg-desc))))) ;; Only add to the transaction if we don't already have it. - (unless (memq next-pkg package-list) - (setq package-list - ;; Move to front, so it gets installed early enough - ;; (bug#14082). - (cons next-pkg (delq next-pkg package-list)))) + (setq package-list + ;; Move to front, so it gets installed early enough + ;; (bug#14082). + (cons next-pkg (delq next-pkg package-list))) (setq package-list (package-compute-transaction package-list (package-desc-reqs Donald On Apr 3, 2013, at 21:46, Stefan Monnier = wrote: >> * rinari requires: ruby-mode, inf-ruby, ruby-compilation, jump >> * jump requires: findr, inflections >> * ruby-compilation requires: inf-ruby >=20 >> Yet, the order of compilation appears to be: >=20 >> 1. inflections >> 2. findr >> 3. jump >> 4. ruby-compilation *fails missing inf-ruby* >=20 > Indeed, thanks. I installed the patch below which should fix > this problem. Note that a better fix would be to first download = packages, > the unpack packages, then autoload packages, then compile packages. > This way, ordering won't matter (including circular dependencies). >=20 >=20 > Stefan >=20 >=20 > =3D=3D=3D modified file 'lisp/emacs-lisp/package.el' > --- lisp/emacs-lisp/package.el 2013-04-04 01:51:33 +0000 > +++ lisp/emacs-lisp/package.el 2013-04-04 02:42:31 +0000 > @@ -811,7 +811,10 @@ > (package-version-join (package-desc-vers (cdr pkg-desc))))) > ;; Only add to the transaction if we don't already have it. > (unless (memq next-pkg package-list) > - (push next-pkg package-list)) > + (setq package-list > + ;; Move to front, so it gets installed early enough > + ;; (bug#14082). > + (cons next-pkg (delq next-pkg package-list)))) > (setq package-list > (package-compute-transaction package-list > (package-desc-reqs >=20 From unknown Mon Jun 23 07:53:27 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14082: 24.3; Package dependences calculated in reverse Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 05 Apr 2013 18:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14082 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Donald Curtis Cc: 14082-done@debbugs.gnu.org Received: via spool by 14082-done@debbugs.gnu.org id=D14082.136518793826970 (code D ref 14082); Fri, 05 Apr 2013 18:53:02 +0000 Received: (at 14082-done) by debbugs.gnu.org; 5 Apr 2013 18:52:18 +0000 Received: from localhost ([127.0.0.1]:35915 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UOBkH-00070w-Ry for submit@debbugs.gnu.org; Fri, 05 Apr 2013 14:52:18 -0400 Received: from pruche.dit.umontreal.ca ([132.204.246.22]:60706) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UOBkF-00070q-VN for 14082-done@debbugs.gnu.org; Fri, 05 Apr 2013 14:52:16 -0400 Received: from faina.iro.umontreal.ca (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id r35Imv8F003373; Fri, 5 Apr 2013 14:48:57 -0400 Received: by faina.iro.umontreal.ca (Postfix, from userid 20848) id 68041B4178; Fri, 5 Apr 2013 14:48:57 -0400 (EDT) From: Stefan Monnier Message-ID: References: <75CA5373-3097-48D1-AB94-0018583483B1@coe.edu> <110E0219-69CB-4A85-AF3B-9A074704575C@coe.edu> Date: Fri, 05 Apr 2013 14:48:57 -0400 In-Reply-To: <110E0219-69CB-4A85-AF3B-9A074704575C@coe.edu> (Donald Curtis's message of "Fri, 5 Apr 2013 10:27:38 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV4539=0 X-NAI-Spam-Version: 2.3.0.9362 : core <4539> : streams <934053> : uri <1385003> X-Spam-Score: -4.0 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.9 (-----) > - (unless (memq next-pkg package-list) > - (setq package-list > - ;; Move to front, so it gets installed early enough > - ;; (bug#14082). > - (cons next-pkg (delq next-pkg package-list)))) > + (setq package-list > + ;; Move to front, so it gets installed early enough > + ;; (bug#14082). > + (cons next-pkg (delq next-pkg package-list))) Duh! Of course, you're right, sorry about that. Should be fixed now, Stefan