Subject: bug#37023: 27.0.50; Package.el error

From: Tim Cross <[email-masked]>
Date: Wed, 14 Aug 2019 14:14:13 +1000

Attempting to install the package elisp-demos from MELPA results in the
error "package does not untar cleanly into directory". However

1. package installs fine with Emacs 26.2
2. Package tar file untars fine from the command line
3. M-x tar-untar-buffer works without error

The author has indicated the package contains an *.org file which is quite
large and includes Chinese characters, so this may be some sort of encoding
issue?

To reporoduce

1. Start emacs -Q
2. Add MELPA repository to package archives e.g.

(add-to-list 'package-archives `("melpa" . "https://melpa.org/packages/"))

3. M-x package-l;ist-packages
4. Try to install elisp-demos package

This is with current emacs 27.0.50 (commit
f4974d6fe6137f436763998be2). Tested under both Ubuntu 189.04 and current
ArchLinux systems.

Backtrace:

Debugger entered--Lisp error: (error "Package does not untar cleanly into
directory elis...")
  signal(error ("Package does not untar cleanly into directory elis..."))
  error("Package does not untar cleanly into directory %s/"
"elisp-demos-20190720.1301")
  package-untar-buffer("elisp-demos-20190720.1301")
  package-unpack(#s(package-desc :name elisp-demos :version (20190720 1301)
:summary "Elisp API Demos" :reqs ((emacs (24 4))) :kind tar :archive
"melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil))
  #f(compiled-function (&optional good-sigs) #<bytecode
0x155b13f35359>)(nil)
  #f(compiled-function () #<bytecode 0x155b13f353b9>)()
  package--with-response-buffer-1("https://melpa.org/packages/"
#f(compiled-function () #<bytecode 0x155b13f3538d>) :file
"elisp-demos-20190720.1301.tar.sig" :async nil :error-function
#f(compiled-function () #<bytecode 0x155b13f353b9>) :noerror t)
  package--check-signature("https://melpa.org/packages/"
"elisp-demos-20190720.1301.tar"
"elisp-demos-20190720.1301/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0..."
nil #f(compiled-function (&optional good-sigs) #<bytecode 0x155b13f35359>))
  #f(compiled-function () #<bytecode 0x155b13f8ee91>)()
  package--with-response-buffer-1("https://melpa.org/packages/"
#f(compiled-function () #<bytecode 0x155b13f8ee91>) :file
"elisp-demos-20190720.1301.tar" :async nil :error-function
#f(compiled-function () #<bytecode 0x155b134ac1b1>) :noerror nil)
  package-install-from-archive(#s(package-desc :name elisp-demos :version
(20190720 1301) :summary "Elisp API Demos" :reqs ((emacs (24 4))) :kind tar
:archive "melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil))
  mapc(package-install-from-archive (#s(package-desc :name elisp-demos
:version (20190720 1301) :summary "Elisp API Demos" :reqs ((emacs (24 4)))
:kind tar :archive "melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil)))
  package-download-transaction((#s(package-desc :name elisp-demos :version
(20190720 1301) :summary "Elisp API Demos" :reqs ((emacs (24 4))) :kind tar
:archive "melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil)))
  package-install(#s(package-desc :name elisp-demos :version (20190720
1301) :summary "Elisp API Demos" :reqs ((emacs (24 4))) :kind tar :archive
"melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil) dont-select)
  package-menu--perform-transaction((#s(package-desc :name elisp-demos
:version (20190720 1301) :summary "Elisp API Demos" :reqs ((emacs (24 4)))
:kind tar :archive "melpa" :dir nil :extras ((:commit .
"8a517e8457c42735538c38555c6ac799f33855ef") (:keywords "lisp" "docs")
(:authors ("Xu Chunyang" . "[email-masked]")) (:maintainer "Xu
Chunyang" . "[email-masked]") (:url . "
https://github.com/xuchunyang/elisp-demos")) :signed nil)) nil)
  package-menu-execute()
  funcall-interactively(package-menu-execute)
  call-interactively(package-menu-execute nil nil)
  command-execute(package-menu-execute)

In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.8,
cairo version 1.16.0)
 of 2019-08-14 built on tim-desktop
Repository revision: f4974d6fe6137f436763998be27afafea9866098
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12004000
System Description: Ubuntu 19.04

Recent messages:
Operation [ Install 1 ] started
Setting ‘package-selected-packages’ temporarily since "emacs -q" would
overwrite customizations
Contacting host: melpa.org:443 [2 times]
Parsing tar file...
Warning: premature EOF parsing tar file
Entering debugger...
Mark set
next-line: End of buffer [3 times]
Quit [2 times]
previous-line: Beginning of buffer [19 times]
previous-line: Beginning of buffer
Configured using:
 'configure --with-cairo'

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

Important settings:
  value of $LC_CTYPE: en_AU.UTF-8
  value of $LANG: en_AU.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Apropos

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-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
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug sendmail apropos cl-extra help-fns
radix-tree cl-print debug backtrace help-mode find-func tar-mode
arc-mode archive-mode cus-edit cus-start cus-load wid-edit mm-archive
message dired dired-loaddefs format-spec rfc822 mml mml-sec epa derived
gnus-util rmail rmail-loaddefs text-property-search time-date mailabbrev
gmm-utils mailheader mm-decode mm-bodies mm-encode misearch
multi-isearch mail-utils mule-util gnutls network-stream url-http
mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw
nsm rmc puny url-cache url-auth url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap epg
epg-config finder-inf package easymenu browse-url url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache json subr-x map url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit
x multi-tty make-network-process emacs)

Memory information:
((conses 16 1044878 119457)
 (symbols 48 15160 2)
 (strings 32 131539 21291)
 (string-bytes 1 4673095)
 (vectors 16 31527)
 (vector-slots 8 379598 46544)
 (floats 8 44 321)
 (intervals 56 141549 2603)
 (buffers 992 20))

-- 

-- 
regards,

Tim

--
Tim Cross