GNU bug report logs - #51116
28.0.60; tty-run-terminal-initialization unnecessarily decompresses .el.gz file

Previous Next

Package: emacs;

Reported by: "Sebastian Arlund Nørgaard" <sebastian <at> bsnrg.net>

Date: Sun, 10 Oct 2021 16:14:01 UTC

Severity: normal

Found in version 28.0.60

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51116 in the body.
You can then email your comments to 51116 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#51116; Package emacs. (Sun, 10 Oct 2021 16:14:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Sebastian Arlund Nørgaard" <sebastian <at> bsnrg.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sun, 10 Oct 2021 16:14:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Sebastian Arlund Nørgaard" <sebastian <at> bsnrg.net>
To: bug-gnu-emacs <at> gnu.org
Subject: 28.0.60; tty-run-terminal-initialization unnecessarily
 decompresses .el.gz file
Date: Sun, 10 Oct 2021 09:37:35 +0000
When compressed elisp files are installed, tty-run-terminal-initialization will decompress and interpret an el.gz file rather than use the available compiled .elc file.

The problem is this bit of code (line 2288-2293 in lisp/faces.el):

	(tty-find-type #'(lambda (type)
			   (let ((file (locate-library (concat term-file-prefix type))))
			     (and file
				  (or (assoc file load-history)
				      (load (file-name-sans-extension file)
                                            t t)))))

In my case, the locate-library call will resolve to (locate-library "term/xterm"), which will return

/path/to/install/lisp/term/xterm.el.gz

A bit further down, the call to file-name-sans-extension will strip the extension to xterm.el. But there is only xterm.el.gz and xterm.elc in the path, so load will resolve to the xterm.el.gz, rather than the .elc file. I can reproduce this as follows:

- emacs -nw -Q
- switch to *Messages* buffer
- Buffer contains "uncompressing xterm.el.gz...done"

Ideally the output of load-library should be stripped completely of extensions, so load will resolve to xterm.elc.

(xterm is the tty type for my system, but this would apply just as well for other tty types.)

----------------------

In GNU Emacs 28.0.60 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.25, cairo version 1.16.0)
 of 2021-10-07 built on sebastian-Home-Linux
Repository revision: 160e62a23cd722744c74cec9e8d37cb678be0fb1
Repository branch: emacs-28
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Ubuntu 21.04

Configured using:
 'configure --prefix=/home/sebastian/emacs-master-install
 --with-native-compilation --with-cairo --with-dumping=pdumper
 --with-mailutils --with-json --with-x --enable-link-time-optimization
 'CFLAGS=-g3 -O3 -mtune=native -march=native -fomit-frame-pointer''

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LCMS2 LIBOTF LIBSELINUX LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS
X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51116; Package emacs. (Mon, 11 Oct 2021 09:23:01 GMT) Full text and rfc822 format available.

Message #8 received at 51116 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Sebastian Arlund Nørgaard <sebastian <at> bsnrg.net>
Cc: 51116 <at> debbugs.gnu.org
Subject: Re: bug#51116: 28.0.60; tty-run-terminal-initialization
 unnecessarily decompresses .el.gz file
Date: Mon, 11 Oct 2021 11:22:35 +0200
"Sebastian Arlund Nørgaard" <sebastian <at> bsnrg.net> writes:

> Ideally the output of load-library should be stripped completely of
> extensions, so load will resolve to xterm.elc.

This should now be fixed in emacs-28.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug marked as fixed in version 28.1, send any further explanations to 51116 <at> debbugs.gnu.org and "Sebastian Arlund Nørgaard" <sebastian <at> bsnrg.net> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 11 Oct 2021 09:23:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 08 Nov 2021 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 169 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.