From: Michael Albinus <michael.albinus@gmx.de>
To: Jim Porter <jporterbugs@gmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>,
65023@debbugs.gnu.org, monnier@iro.umontreal.ca
Subject: bug#65023: 29.1.50; Tramp 2.6.1.1 cannot be installed as ELPA package
Date: Sun, 06 Aug 2023 10:57:20 +0200 [thread overview]
Message-ID: <877cq8czv3.fsf@gmx.de> (raw)
In-Reply-To: <bbaecc60-8bef-4ab5-5e8a-eb592d19d528@gmail.com> (Jim Porter's message of "Sat, 5 Aug 2023 13:34:48 -0700")
Jim Porter <jporterbugs@gmail.com> writes:
Hi Jim,
> I'm not sure if it's a good idea or not, but the following advice
> seems to fix things in Emacs 29.1 for me:
>
> (advice-add #'loaddefs-generate--parse-file :around
> (lambda (fn file main-outfile package-data)
> (funcall fn file main-outfile (or package-data t)))
>
> This makes the 'package-data' argument never be nil, which avoids
> running the broken code. I'd be a little worried about publishing this
> without further testing, but hopefully it (or something like it) could
> be a solution until 29.2 is released...
I've tried to apply this change, but it doesn't work as expected yet. I
have performed the following steps:
- Uninstall ELPA Tramp package.
- Recompile Emacs 29.1, based on commit
--8<---------------cut here---------------start------------->8---
8cbd4a02a2b (HEAD) Delete comment saying that project.el is experimental
--8<---------------cut here---------------end--------------->8---
This is the one before your patch.
- Start emacs -Q
- Evaluate in *scratch*
--8<---------------cut here---------------start------------->8---
(use-package tramp
:preface
(progn
(advice-add
#'loaddefs-generate--parse-file
:around (lambda (fn file main-outfile package-data)
(funcall fn file main-outfile (or package-data t))))
(setq package-install-upgrade-built-in t)
(package-install 'tramp 'don-select))
:ensure t)
--8<---------------cut here---------------end--------------->8---
This results in *scratch*
--8<---------------cut here---------------start------------->8---
;;; tramp-autoloads.el --- automatically extracted autoloads (do not edit) -*- lexical-binding: t -*-
;; Generated by the `loaddefs-generate' function.
;; This file is part of GNU Emacs.
;;; Code:
(provide 'tramp-autoloads)
;; Local Variables:
;; version-control: never
;; no-byte-compile: t
;; no-update-autoloads: t
;; no-native-compile: t
;; coding: utf-8-emacs-unix
;; End:
;;; tramp-autoloads.el ends here
;;; tramp-loaddefs.el --- automatically extracted autoloads (do not edit) -*- lexical-binding: t -*-
;; Generated by the `loaddefs-generate' function.
;; This file is part of GNU Emacs.
;;; Code:
(provide 'tramp-loaddefs)
;; Local Variables:
;; version-control: never
;; no-byte-compile: t
;; no-update-autoloads: t
;; no-native-compile: t
;; coding: utf-8-emacs-unix
;; End:
;;; tramp-loaddefs.el ends here
--8<---------------cut here---------------end--------------->8---
These parts are missing in tramp-autoloads.el and tramp-loaddefs.el. And
indeed, there is the error
--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (error "Loading file /home/albinus/.emacs.d/elpa/tramp-2.6.1.1/tramp-loaddefs.el failed to provide feature ‘tramp-loaddefs’")
require(tramp-loaddefs)
eval-buffer(#<buffer *load*> nil "/home/albinus/.emacs.d/elpa/tramp-2.6.1.1/tramp.el" nil t) ; Reading at buffer position 3700
load-with-code-conversion("/home/albinus/.emacs.d/elpa/tramp-2.6.1.1/tramp.el" "/home/albinus/.emacs.d/elpa/tramp-2.6.1.1/tramp.el" t t)
require(tramp nil t)
(not (require 'tramp nil t))
(if (not (require 'tramp nil t)) (display-warning 'use-package (format "Cannot load %s" 'tramp) :error))
(condition-case err (if (not (require 'tramp nil t)) (display-warning 'use-package (format "Cannot load %s" 'tramp) :error)) ((debug error) (funcall use-package--warning0 :catch err)))
(progn (use-package-ensure-elpa 'tramp '(t) 'nil) '"Package ‘tramp’ installed." (defvar use-package--warning0 #'(lambda (keyword err) (let ((msg (format "%s/%s: %s" ... keyword ...))) (display-warning 'use-package msg :error)))) (condition-case err (if (not (require 'tramp nil t)) (display-warning 'use-package (format "Cannot load %s" 'tramp) :error)) ((debug error) (funcall use-package--warning0 :catch err))))
(progn (progn (use-package-ensure-elpa 'tramp '(t) 'nil) '"Package ‘tramp’ installed." (defvar use-package--warning0 #'(lambda (keyword err) (let ((msg ...)) (display-warning 'use-package msg :error)))) (condition-case err (if (not (require 'tramp nil t)) (display-warning 'use-package (format "Cannot load %s" 'tramp) :error)) ((debug error) (funcall use-package--warning0 :catch err)))))
eval((progn (progn (use-package-ensure-elpa 'tramp '(t) 'nil) '"Package ‘tramp’ installed." (defvar use-package--warning0 #'(lambda (keyword err) (let (...) (display-warning ... msg :error)))) (condition-case err (if (not (require 'tramp nil t)) (display-warning 'use-package (format "Cannot load %s" 'tramp) :error)) ((debug error) (funcall use-package--warning0 :catch err))))) t)
elisp--eval-last-sexp(t)
eval-last-sexp(t)
eval-print-last-sexp(nil)
funcall-interactively(eval-print-last-sexp nil)
call-interactively(eval-print-last-sexp nil nil)
command-execute(eval-print-last-sexp)
--8<---------------cut here---------------end--------------->8---
next prev parent reply other threads:[~2023-08-06 8:57 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-02 14:16 bug#65023: 29.1.50; Tramp 2.6.1.1 cannot be installed as ELPA package Michael Albinus
2023-08-04 16:40 ` Jim Porter
2023-08-04 17:52 ` Eli Zaretskii
2023-08-04 18:20 ` Jim Porter
2023-08-05 9:19 ` Michael Albinus
2023-08-05 20:34 ` Jim Porter
2023-08-06 8:57 ` Michael Albinus [this message]
2023-08-07 15:28 ` Michael Albinus
2023-08-08 2:44 ` Jim Porter
2023-08-08 7:03 ` Michael Albinus
2023-08-15 3:09 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=877cq8czv3.fsf@gmx.de \
--to=michael.albinus@gmx.de \
--cc=65023@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=jporterbugs@gmail.com \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).