all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#71899] [PATCH v2] gnu: erlang-lfe: Make LFE compiler deterministic.
@ 2024-07-02 12:46 Igor Goryachev via Guix-patches via
  2024-07-03  3:30 ` bug#71899: " Andrew Tropin via Guix-patches via
  0 siblings, 1 reply; 2+ messages in thread
From: Igor Goryachev via Guix-patches via @ 2024-07-02 12:46 UTC (permalink / raw)
  To: 71899; +Cc: Igor Goryachev, Andrew Tropin

* gnu/packages/erlang.scm (erlang-lfe): Make LFE compiler deterministic.

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

diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
index dd07c1a617..a236722474 100644
--- a/gnu/packages/erlang.scm
+++ b/gnu/packages/erlang.scm
@@ -792,6 +792,13 @@ (define-public erlang-lfe
       #:phases
       #~(modify-phases %standard-phases
           (delete 'configure)
+          ;; By default LFE compiler itself is not deterministic. We fix it
+          ;; here. For more details see: https://github.com/lfe/lfe/issues/492.
+          (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: 4b3a553ca5ba5ac190739309eb5f7aa8170cf2a8
-- 
2.45.2





^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#71899: [PATCH v2] gnu: erlang-lfe: Make LFE compiler deterministic.
  2024-07-02 12:46 [bug#71899] [PATCH v2] gnu: erlang-lfe: Make LFE compiler deterministic Igor Goryachev via Guix-patches via
@ 2024-07-03  3:30 ` Andrew Tropin via Guix-patches via
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Tropin via Guix-patches via @ 2024-07-03  3:30 UTC (permalink / raw)
  To: Igor Goryachev via Guix-patches via, 71899-done; +Cc: Igor Goryachev

[-- Attachment #1: Type: text/plain, Size: 1421 bytes --]

On 2024-07-02 15:46, Igor Goryachev via Guix-patches via wrote:

> * gnu/packages/erlang.scm (erlang-lfe): Make LFE compiler deterministic.
>
> Change-Id: I0cf00eeda8502384b746795802f1b2291d0e8a3b
> ---
>  gnu/packages/erlang.scm | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm
> index dd07c1a617..a236722474 100644
> --- a/gnu/packages/erlang.scm
> +++ b/gnu/packages/erlang.scm
> @@ -792,6 +792,13 @@ (define-public erlang-lfe
>        #:phases
>        #~(modify-phases %standard-phases
>            (delete 'configure)
> +          ;; By default LFE compiler itself is not deterministic. We fix it
> +          ;; here. For more details see: https://github.com/lfe/lfe/issues/492.
> +          (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: 4b3a553ca5ba5ac190739309eb5f7aa8170cf2a8

Thank you for making guix even more reproducible :)

Applied, pushed as
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=972c06dc79

-- 
Best regards,
Andrew Tropin

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-07-03  3:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-02 12:46 [bug#71899] [PATCH v2] gnu: erlang-lfe: Make LFE compiler deterministic Igor Goryachev via Guix-patches via
2024-07-03  3:30 ` bug#71899: " Andrew Tropin via Guix-patches via

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.