[PATCH] gnu: erlang-lfe: Make LFE compiler deterministic.

  • Done
  • quality assurance status badge
Details
2 participants
  • Andrew Tropin
  • Igor Goryachev
Owner
unassigned
Submitted by
Igor Goryachev
Severity
normal

Debbugs page

Igor Goryachev wrote 8 months ago
(address . guix-patches@gnu.org)
5db9d2295039cce1032a9dbe53a7048c358d5ceb.1719910637.git.igor@goryachev.org
* gnu/packages/erlang.scm (erlang-lfe): Make LFE compiler deterministic.

Change-Id: I0cf00eeda8502384b746795802f1b2291d0e8a3b
---
gnu/packages/erlang.scm | 5 +++++
1 file changed, 5 insertions(+)

Toggle diff (20 lines)
diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
index dd07c1a617..58aac2bead 100644
--- a/gnu/packages/erlang.scm
+++ b/gnu/packages/erlang.scm
@@ -792,6 +792,11 @@ (define-public erlang-lfe
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
+ (add-after 'unpack 'make-deterministic
+ (lambda _
+ (substitute* "src/lfe_env.erl"
+ (("maps:fold\\(F, A, D\\)")
+ "lists:sort(maps:fold(F, A, D))"))))
;; The following is inspired by rebar-build-system.scm
(add-before 'check 'erlang-depends
(lambda* (#:key inputs #:allow-other-keys)

base-commit: 5f1e4e4c0242af6bcba656aedf8b49afbe7247b7
--
2.45.2
Andrew Tropin wrote 8 months ago
(name . Igor Goryachev)(address . igor@goryachev.org)
87jzi483bu.fsf@trop.in
On 2024-07-02 11:57, Igor Goryachev wrote:

Toggle quote (21 lines)
> * gnu/packages/erlang.scm (erlang-lfe): Make LFE compiler deterministic.
>
> Change-Id: I0cf00eeda8502384b746795802f1b2291d0e8a3b
> ---
> gnu/packages/erlang.scm | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
> index dd07c1a617..58aac2bead 100644
> --- a/gnu/packages/erlang.scm
> +++ b/gnu/packages/erlang.scm
> @@ -792,6 +792,11 @@ (define-public erlang-lfe
> #:phases
> #~(modify-phases %standard-phases
> (delete 'configure)
> + (add-after 'unpack 'make-deterministic
> + (lambda _
> + (substitute* "src/lfe_env.erl"
> + (("maps:fold\\(F, A, D\\)")
> + "lists:sort(maps:fold(F, A, D))"))))

It would be useful to add some explanation in the comment and probably a
link to upstream PR/thread.

Toggle quote (6 lines)
> ;; The following is inspired by rebar-build-system.scm
> (add-before 'check 'erlang-depends
> (lambda* (#:key inputs #:allow-other-keys)
>
> base-commit: 5f1e4e4c0242af6bcba656aedf8b49afbe7247b7

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmaD3iUACgkQIgjSCVjB
3rBSZQ//RTe73UnCtuxYwL1TnBT9ZcDS/XNmWVC3OMOCdIU3GTcbVVcc6A5PZ6+q
5ClYvHlqFdB8bHw9zU/YSMZeD/SDBhaF3qslOOB6osKzcKKbtJdiVor2Ow747Z0C
SWVlO/Q8N6t/xQzoXTFQ8m19Evlf1EAY92q0qL2mDmtr8gWvl/iT23Y0AEO1WE5C
YJfGKx5DfelB0riKZ6NZeTNk8YGXA08jnIZWDWX8ktNRJzp9YbK9N4vtT5pPjhfg
ImQJVSDPumeT9GEs5F+gYknAf9UtbNy8x2qKqYoDNJZVXF/8HWjhk66ztDWc8TRU
DESObpKdfrhclz+/vqdvBex5jXIgHCmwxdFt6gj5IDksh22IaRUXZrrmOvBt5Hdm
pixB+wuavxtE+dVp4Pt3wuZwbyebLVCYW5w2M6rjn0vL5mVm0rNJhvuFO+91eoW5
qyaEVr0dcGdN/7YPD2MfnBR54KZ2zCxfI7t5lIYi5Z6PIbt5PI46wzCpSxQINB1h
Hcv67dQWruLWonhZaYfZJjvedX/HRPozs/qKdn0kKuZgyYAv29rBrz82s3Mjr4nQ
jlFfPLCunGa9QO37dWJiFra5IeTNT2+watw2bprel565lWtsE/2R4vS07vHCVZaR
RE+CATdz3vPOBrxRduqJjVE8W/Ac7VmkHI8K6ObAy0UrFqOhDM4=
=spxq
-----END PGP SIGNATURE-----

Andrew Tropin wrote 8 months ago
Re: [bug#71898] [PATCH] gnu: erlang-lfe: Make LFE compiler deterministic.
(name . Igor Goryachev)(address . igor@goryachev.org)
875xthfxle.fsf@trop.in
On 2024-07-02 11:57, Igor Goryachev via Guix-patches via wrote:

Toggle quote (26 lines)
> * gnu/packages/erlang.scm (erlang-lfe): Make LFE compiler deterministic.
>
> Change-Id: I0cf00eeda8502384b746795802f1b2291d0e8a3b
> ---
> gnu/packages/erlang.scm | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
> index dd07c1a617..58aac2bead 100644
> --- a/gnu/packages/erlang.scm
> +++ b/gnu/packages/erlang.scm
> @@ -792,6 +792,11 @@ (define-public erlang-lfe
> #:phases
> #~(modify-phases %standard-phases
> (delete 'configure)
> + (add-after 'unpack 'make-deterministic
> + (lambda _
> + (substitute* "src/lfe_env.erl"
> + (("maps:fold\\(F, A, D\\)")
> + "lists:sort(maps:fold(F, A, D))"))))
> ;; The following is inspired by rebar-build-system.scm
> (add-before 'check 'erlang-depends
> (lambda* (#:key inputs #:allow-other-keys)
>
> base-commit: 5f1e4e4c0242af6bcba656aedf8b49afbe7247b7

Superseded by 71899.

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmaKSS0ACgkQIgjSCVjB
3rAWpg//UvGuegnNFwyDdzBCdlMavC4SNCr3/OzacEdq57YwEyWpO7FTOewi9V7L
RObGduwlmTAzyi3KdBBkj438QtwDukS0NbUVVqrrC/pVwDTJW3fP7ZcSPswlZKKh
xHpfX2zKibB8JBxfqJnmtPXY0S7wgfrHcBekpg4ti41IPnRzthSqbBijAANldjec
gEiEIwtCRfKiNOmLCLDNh0N+BmWXbLmT4P6boHegUZTYNJkKqFWOJL4UghM6Cx+H
oipTp6lbvIMFwfzYz8nwfxcuBBEMQQcDCmlQneBddJby87fphjkMv3LEGvc2SFQo
JngCl70iiJW9MoQIRovzw5tKhP9zZmz5L92xJyVgZrO/hGeEj9IzgtW+skEnHGMN
3g5gRR00bvZsTqJomsx4WBZZZB82MRSfia/SvGptxTMAbmeqvStUQMMWl2zWNn32
A5WkrtdbG+NGQoh6neOdS/mSkmnxFvyfnXLNFkin0xn01eOTCnh47F6gUOnKhe5r
tU1pdi7R9klZ4vE/SZKvk3iG3z/JBPhtQ3wA89D3YiILdabvEcHV8G/eMecxFGze
0kPux3ufWf4jQCYL3TWE2z5HOVHJno1pWzOrG4CQZKoB/MB1EbWfe4uD2+ydoOne
b4jKzul1V0JbK6+xa1a6DYT0Ec6zdrdsB5uw+iUoTNcWayn4uFQ=
=5GuB
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 71898
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
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help