Emacs is not reproducible

  • Open
  • quality assurance status badge
Details
6 participants
  • Bone Baboon
  • Cayetano Santos
  • Jack Hill
  • Ludovic Courtès
  • Maxim Cournoyer
  • zimoun
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
normal
Merged with
M
M
Maxim Cournoyer wrote on 2 Apr 2019 17:55
(name . bug-guix)(address . bug-guix@gnu.org)
87a7h88kro.fsf@gmail.com
Found on the latest staging branch. The diffoscope log produced by:

Toggle snippet (3 lines)
diffoscope --exclude-command '/gnu/store/.*/bin/stat' --text=emacs.diffoscope /gnu/store/cjmgl8820dhxb400q9zv90b1a1z0px14-emacs-26.1{,-check}

The 'stat' command output was muted to ignore the many occurrences of
differing link numbers (and reduce the attached log size).

Here's an excerpt:

Toggle snippet (28 lines)
--- /gnu/store/cjmgl8820dhxb400q9zv90b1a1z0px14-emacs-26.1
+++ /gnu/store/cjmgl8820dhxb400q9zv90b1a1z0px14-emacs-26.1-check
??? bin
? ??? .emacs-26.1-real
? ? ??? /gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/bin/readelf --wide --decompress --hex-dump=.data {}
? ? ? @@ -13602,17 +13602,17 @@
? ? ? 0x0068f670 9caa9600 00000000 01000000 00000000 ................
? ? ? 0x0068f680 ffffffff ffffffff 00000000 00000000 ................
? ? ? 0x0068f690 07af9600 00000000 07000000 00000000 ................
? ? ? 0x0068f6a0 ffffffff ffffffff 00000000 00000000 ................
? ? ? 0x0068f6b0 94aa9600 00000000 09000000 00000000 ................
? ? ? 0x0068f6c0 ffffffff ffffffff 00000000 00000000 ................
? ? ? 0x0068f6d0 8aaa9600 00000000 8e720100 00000000 .........r......
? ? ? - 0x0068f6e0 ebf66800 00000000 36f00100 00000000 ..h.....6.......
? ? ? - 0x0068f6f0 fbf66800 00000000 ce3d3800 00000000 ..h......=8.....
? ? ? - 0x0068f700 0bf76800 00000000 22e03b00 00000000 ..h.....".;.....
? ? ? + 0x0068f6e0 ebf66800 00000000 12ec0100 00000000 ..h.............
? ? ? + 0x0068f6f0 fbf66800 00000000 4abd2e00 00000000 ..h.....J.......
? ? ? + 0x0068f700 0bf76800 00000000 c2313100 00000000 ..h......11.....
? ? ? 0x0068f710 00000000 00000000 06000012 00000040 ...............@
? ? ? 0x0068f720 5bf76800 00000000 7cf76800 00000000 [.h.....|.h.....
? ? ? 0x0068f730 9df76800 00000000 32000000 00000000 ..h.....2.......
? ? ? 0x0068f740 b6b1a700 00000000 fcf96800 00000000 ..........h.....
? ? ? 0x0068f750 00000000 00000000 50280000 00000000 ........P(......
? ? ? 0x0068f760 6bf76800 00000000 10df4300 00000000 k.h.......C.....
? ? ? 0x0068f770 00000000 00000000 9c000000 00000000 ................
? ? ??? /gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/bin/readelf --wide --decompress --hex-dump=,bss {}
L
L
Ludovic Courtès wrote on 30 Nov 2019 15:32
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 35085@debbugs.gnu.org)
87tv6lph8p.fsf@gnu.org
Just a heads-up to say that this still applies to 26.3. The affected
files are:

Toggle snippet (19 lines)
$ diff -r --no-dereference /tmp/emacs.{1,2}
Binary files /tmp/emacs.1/bin/.emacs-26.3-real and /tmp/emacs.2/bin/.emacs-26.3-real differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/calendar/cal-iso.elc and /tmp/emacs.2/share/emacs/26.3/lisp/calendar/cal-iso.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/cedet/semantic/lex-spp.elc and /tmp/emacs.2/share/emacs/26.3/lisp/cedet/semantic/lex-spp.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/cedet/semantic/tag-ls.elc and /tmp/emacs.2/share/emacs/26.3/lisp/cedet/semantic/tag-ls.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/cedet/semantic/tag-write.elc and /tmp/emacs.2/share/emacs/26.3/lisp/cedet/semantic/tag-write.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/emacs-lisp/easy-mmode.elc and /tmp/emacs.2/share/emacs/26.3/lisp/emacs-lisp/easy-mmode.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/eshell/esh-proc.elc and /tmp/emacs.2/share/emacs/26.3/lisp/eshell/esh-proc.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/progmodes/ada-xref.elc and /tmp/emacs.2/share/emacs/26.3/lisp/progmodes/ada-xref.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/progmodes/ebnf-bnf.elc and /tmp/emacs.2/share/emacs/26.3/lisp/progmodes/ebnf-bnf.elc differ
Binary files /tmp/emacs.1/share/emacs/26.3/lisp/vc/ediff-mult.elc and /tmp/emacs.2/share/emacs/26.3/lisp/vc/ediff-mult.elc differ
$ guix describe
Generation 117 Nov 27 2019 16:43:08 (current)
guix f678cc9
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: f678cc9c793bcf23ced842f815c5d98bbde5fa31

Ludo’.
Z
Z
zimoun wrote on 7 Jan 2020 21:01
bug#35085: Emacs is not reproducible
CAJ3okZ145cdCsGakvaJUM+ve+RaTN0ry5VAnLK=X3yKJYW2UTg@mail.gmail.com
Dear,

An update to say that the situation is maybe worse.


Let build the same version than Ludo [1] with:

Toggle snippet (7 lines)
guix time-machine --commit=f678cc9 -- build emacs
guix time-machine --commit=f678cc9 -- build emacs \
--check --no-grafts -K
diff -r --no-dereference
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3{,-check}



Then, Ludo reported theses ones that I do not have:

Toggle snippet (8 lines)
lisp/calendar/cal-iso.elc
lisp/cedet/semantic/lex-spp.elc
lisp/cedet/semantic/tag-ls.elc
lisp/emacs-lisp/easy-mode.elc
lisp/eshell/esh-proc.elc
lisp/vc/ediff-mult.elc

but instead I have these ones:

Toggle snippet (14 lines)
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/calendar/cal-islam.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/emacs-lisp/eieio.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/eshell/esh-cmd.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/gnus/gnus-int.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/gnus/gnus-start.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/net/tramp-ftp.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/org/org-lint.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/org/org-mobile.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/org/ox-md.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/org/ox-odt.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/progmodes/ada-xref.elc
/gnu/store/zja4gdq52wxlppa0pq2j5id7pl9zfqkq-emacs-26.3/share/emacs/26.3/lisp/progmodes/ebnf-abn.elc

And building several times changes a bit this list, e.g., sometimes
'lisp/progmodes/ada-xref.elc' differs, sometimes not.


Using Guix commit 3c9e86ae8bf09d993e2e7a4ecb43d80da8fabb99, * means
appears in the Ludo's list and # in mine (above).

Toggle snippet (16 lines)
*/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/bin/.emacs-26.3-real
*/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/emacs-lisp/easy-mmode.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/emacs-lisp/eieio.elc
*/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/eshell/esh-proc.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/gnus/gnus-int.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/gnus/gnus-start.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/net/tramp-ftp.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/org/org-lint.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/org/org-mobile.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/org/ox-md.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/org/ox-odt.elc
#/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/progmodes/ebnf-abn.elc
*/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/progmodes/ebnf-bnf.elc
*/gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3/share/emacs/26.3/lisp/vc/ediff-mult.elc

For example, the file 'lisp/cedet/semantic/lex-spp.elc' sometimes
differs, sometimes not.


Maybe, the first step is to inspect the .elc files. But I am not sure
how to use diffoscope, I mean, I am not able to find my road with:

Toggle snippet (5 lines)
diffoscope /gnu/store/54m1fqnkhjm5jy22barxy3r86jg6nsxs-emacs-26.3{,-check}/share/emacs/26.3/lisp/emacs-lisp/easy-mmode.elc



All the best,
simon
J
J
Jack Hill wrote on 2 May 2020 06:08
(no subject)
(address . control@debbugs.gnu.org)
alpine.DEB.2.20.2005020007210.5735@marsh.hcoop.net
merge 35085 41012
J
J
Jack Hill wrote on 2 May 2020 06:10
emacs reproducability problem also affects emacs-next 27.0.91
(address . 35085@debbugs.gnu.org)
alpine.DEB.2.20.2005020008170.5735@marsh.hcoop.net
Hi,

I filed a duplicate bug earlier today while working on emacs-next. The
problem now also seems to include the new .pdmp files.

Best,
Jack
Z
Z
zimoun wrote on 9 Sep 2020 17:37
Re: bug#35085: Emacs is not reproducible
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 35085@debbugs.gnu.org)
878sdjufjo.fsf@gmail.com
Dear,

Just a heads-up to say that this still applies to 27.1.

Toggle snippet (16 lines)
guix describe
Generation 86 Sep 09 2020 12:21:38 (current)
guix ce022b2
repository URL: https://git.savannah.gnu.org/git/guix.git
commit: ce022b2e142c75b9e4d05fc1aec91e345dc374a7

guix time-machine --commit=057d584b98 -- build emacs --no-grafts
[...]
/gnu/store/wn1m7lwnasvwygbaf8ky413qzbm96mys-emacs-27.1

guix time-machine --commit=057d584b98 \
-- build emacs --check --no-grafts
[...]
guix build: error: derivation `/gnu/store/s9avsbm004zjrkba9v58ricy2vk56gzz-emacs-27.1.drv' may not be deterministic: output `/gnu/store/wn1m7lwnasvwygbaf8ky413qzbm96mys-emacs-27.1' differs

Then the files that differ are:

Toggle snippet (17 lines)
diff -r --no-dereference /gnu/store/wn1m7lwnasvwygbaf8ky413qzbm96mys-emacs-27.1{,-check}
Binary files /gnu/store/…-emacs-27.1/libexec/emacs/27.1/x86_64-pc-linux-gnu/emacs.pdmp
and /gnu/store/…-emacs-27.1-check/libexec/emacs/27.1/x86_64-pc-linux-gnu/emacs.pdmp differ
Binary files /gnu/store/…-emacs-27.1/share/emacs/27.1/lisp/cedet/semantic/lex-spp.elc
and /gnu/store/…-emacs-27.1-check/share/emacs/27.1/lisp/cedet/semantic/lex-spp.elc differ
Binary files /gnu/store/…-emacs-27.1/share/emacs/27.1/lisp/cedet/semantic/tag-file.elc
and /gnu/store/…-emacs-27.1-check/share/emacs/27.1/lisp/cedet/semantic/tag-file.elc differ
Binary files /gnu/store/…-emacs-27.1/share/emacs/27.1/lisp/cedet/semantic/tag-ls.elc
and /gnu/store/…-emacs-27.1-check/share/emacs/27.1/lisp/cedet/semantic/tag-ls.elc differ
Binary files /gnu/store/…-emacs-27.1/share/emacs/27.1/lisp/cedet/semantic.elc
and /gnu/store/…-emacs-27.1-check/share/emacs/27.1/lisp/cedet/semantic.elc differ
Binary files /gnu/store/…-emacs-27.1/share/emacs/27.1/lisp/gnus/mm-extern.elc
and /gnu/store/…-emacs-27.1-check/share/emacs/27.1/lisp/gnus/mm-extern.elc differ



All the best,
simon
B
B
Bone Baboon wrote on 17 May 2021 02:30
Re: bug#35085: Emacs is not reproducible
(address . 35085@debbugs.gnu.org)
87wnrycic1.fsf@disroot.org
Emacs 27.2 is not reproducible.

`guix describe` outputs:

```
Generation 24 May 12 2021 18:06:24 (current)
guix d6aeebb
branch: master
commit: d6aeebb23639258311fdfb9dbf5f903079fde51a
```

`guix challenge emacs` outputs:

```
/gnu/store/c52rwsavrj62dc50y599zi215ibh6a5h-emacs-27.2 contents differ:
local hash: 1d2cwadp5dhjmaw7ai3jnp306iqqs89dw5gm793j84wk0sxpyvhz
https://ci.guix.gnu.org/nar/lzip/c52rwsavrj62dc50y599zi215ibh6a5h-emacs-27.2:1ny8qvr5aha5ffm4mfh70b37512vxkayxq1nd25hsadpfyc19wj5
differing files:
/libexec/emacs/27.2/i686-pc-linux-gnu/emacs.pdmp
/share/emacs/27.2/lisp/eshell/esh-cmd.elc
/share/emacs/27.2/lisp/net/tramp.elc
/share/emacs/27.2/lisp/net/tramp-ftp.elc
/share/emacs/27.2/lisp/net/tramp-gvfs.elc
/share/emacs/27.2/lisp/gnus/mm-extern.elc
/share/emacs/27.2/lisp/gnus/gnus-registry.elc
/share/emacs/27.2/lisp/gnus/nnmairix.elc
/share/emacs/27.2/lisp/gnus/nnir.elc
/share/emacs/27.2/lisp/vc/ediff-util.elc
/share/emacs/27.2/lisp/cedet/semantic/util.elc
/share/emacs/27.2/lisp/cedet/semantic/texi.elc
/share/emacs/27.2/lisp/calendar/cal-mayan.elc
/share/emacs/27.2/lisp/calendar/cal-persia.elc
/share/emacs/27.2/lisp/calendar/cal-tex.elc
/share/emacs/27.2/lisp/org/org-agenda.elc
/share/emacs/27.2/lisp/org/ox-odt.elc
/share/emacs/27.2/lisp/mh-e/mh-junk.elc

1 store items were analyzed:
- 0 (0.0%) were identical
- 1 (100.0%) differed
- 0 (0.0%) were inconclusive
```
B
B
Bone Baboon wrote on 17 May 2021 15:57
Re: bug#35085: Emacs is not reproducible
(address . 35085@debbugs.gnu.org)
87r1i5cvjv.fsf@disroot.org
Bone Baboon writes:

Toggle quote (44 lines)
> Emacs 27.2 is not reproducible.
>
> `guix describe` outputs:
>
> ```
> Generation 24 May 12 2021 18:06:24 (current)
> guix d6aeebb
> repository URL: https://git.savannah.gnu.org/git/guix.git
> branch: master
> commit: d6aeebb23639258311fdfb9dbf5f903079fde51a
> ```
>
> `guix challenge emacs` outputs:
>
> ```
> /gnu/store/c52rwsavrj62dc50y599zi215ibh6a5h-emacs-27.2 contents differ:
> local hash: 1d2cwadp5dhjmaw7ai3jnp306iqqs89dw5gm793j84wk0sxpyvhz
> https://ci.guix.gnu.org/nar/lzip/c52rwsavrj62dc50y599zi215ibh6a5h-emacs-27.2: 1ny8qvr5aha5ffm4mfh70b37512vxkayxq1nd25hsadpfyc19wj5
> differing files:
> /libexec/emacs/27.2/i686-pc-linux-gnu/emacs.pdmp
> /share/emacs/27.2/lisp/eshell/esh-cmd.elc
> /share/emacs/27.2/lisp/net/tramp.elc
> /share/emacs/27.2/lisp/net/tramp-ftp.elc
> /share/emacs/27.2/lisp/net/tramp-gvfs.elc
> /share/emacs/27.2/lisp/gnus/mm-extern.elc
> /share/emacs/27.2/lisp/gnus/gnus-registry.elc
> /share/emacs/27.2/lisp/gnus/nnmairix.elc
> /share/emacs/27.2/lisp/gnus/nnir.elc
> /share/emacs/27.2/lisp/vc/ediff-util.elc
> /share/emacs/27.2/lisp/cedet/semantic/util.elc
> /share/emacs/27.2/lisp/cedet/semantic/texi.elc
> /share/emacs/27.2/lisp/calendar/cal-mayan.elc
> /share/emacs/27.2/lisp/calendar/cal-persia.elc
> /share/emacs/27.2/lisp/calendar/cal-tex.elc
> /share/emacs/27.2/lisp/org/org-agenda.elc
> /share/emacs/27.2/lisp/org/ox-odt.elc
> /share/emacs/27.2/lisp/mh-e/mh-junk.elc
>
> 1 store items were analyzed:
> - 0 (0.0%) were identical
> - 1 (100.0%) differed
> - 0 (0.0%) were inconclusive
> ```

Attached is the diffoscope output for Emacs 27.2.
C
C
Cayetano Santos wrote on 5 Nov 12:34 +0100
(address . 35085@debbugs.gnu.org)
87pln929u8.fsf@inventati.org
Follow up as for today on emacs 29.4.

guix pull
guix build emacs --check --no-grafts

guix challenge emacs --diff=diffoscope --substitute-urls="https://ci.guix.gnu.org"

1 éléments du dépôt ont été analysés :
- 1 (100.0 %) étaient identiques
- 0 (0.0 %) étaient différents
- 0 (0.0 %) étaient impossibles à évaluer

guix challenge emacs --diff=diffoscope --substitute-urls="https://bordeaux.guix.gnu.org"
le contenu de /gnu/store/ca30y70bqjh3dvarixyrp6qwqz2l1wgy-emacs-29.4 diffère :
empreinte locale : 184bn05cjw8nqs3zcyzmc99mph65zadjkh35mn011sigy1jxpkyl
https://bordeaux.guix.gnu.org/nar/lzip/ca30y70bqjh3dvarixyrp6qwqz2l1wgy-emacs-29.4: 1mjal5c9iwkkvkffcbcwhlw8bpmbl7kizy0c1kbl7dhswawf5j2l

guix challenge emacs --diff=diffoscope --substitute-urls="https://guix.bordeaux.inria.fr"
le contenu de /gnu/store/ca30y70bqjh3dvarixyrp6qwqz2l1wgy-emacs-29.4 diffère :
empreinte locale : 184bn05cjw8nqs3zcyzmc99mph65zadjkh35mn011sigy1jxpkyl

Not sure if this is good of bad news, though.

C.
S
S
Simon Tournier wrote on 7 Nov 18:14 +0100
87msibhsod.fsf@gmail.com
Hi,

On Tue, 05 Nov 2024 at 12:34, Cayetano Santos via Bug reports for GNU Guix <bug-guix@gnu.org> wrote:

Toggle quote (2 lines)
> Follow up as for today on emacs 29.4.

The good news:


Let see if there is an upstream willing to tackle this. :-)

Cheers,
simon
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 35085@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 35085
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch