Subject: Re: bug#48137: 27.2; `package-install-file' fails when loading a package file with DOS line endings

From: Stefan Monnier <[email-masked]>
Date: Mon, 03 May 2021 16:12:17 -0400

>> If not, I would like to suggest a slightly
>> updated patch that is targeting .el files directly as an exemption:
>> 
>> diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el
>> index ecb2573cab..19ab0445b9 100644
>> --- a/lisp/emacs-lisp/package.el
>> +++ b/lisp/emacs-lisp/package.el
>> @@ -2147,7 +2147,9 @@ package-install-file
>>          (progn
>>            (setq default-directory file)
>>            (dired-mode))
>> -      (insert-file-contents-literally file)
>> +      (if (string-match "\\.el\\'" file)
>> +          (insert-file-contents file)
>> +        (insert-file-contents-literally file))
>>        (when (string-match "\\.tar\\'" file) (tar-mode)))
>>      (package-install-from-buffer)))
>
> is not something I can endorse, especially as it decodes much more
> than just the EOL format.

package.el should do *some* decoding because it needs to look at
the pseudo-headers in the file to generate the `<pkg>-pkg.el` which
contains among other things the package's short description.
Admittedly, these will usually work OK in undecoded buffers as well,
but not in all cases.

        Stefan