Subject: Re: [bug#33066] [PATCH 1/2] gnu: rust: workaround rust 1.25-27 reproducibility issues

From: Danny Milosavljevic <[email-masked]>
Date: Wed, 17 Oct 2018 13:14:06 +0200

Hi Nikolai,

On Tue, 16 Oct 2018 02:32:11 +0500
Nikolai Merinov <[email-masked]> wrote:

> * gnu/packages/patches/rust-mdbook-Support-reproducible-builds-by-forcing-window.search.patch:

Nitpick: No big "S" (file names are easier to find if they are all lower case).

> patch that make "searchindex.js" reproducible in rust 1.27 and newer.

"New file".

> * gnu/local.mk (dist_patch_DATA): Add new patch file.
> * gnu/packages/rust.scm (rust-1.19): Use system libssh2 library

Hmm, I'm not sure about doing this in the same commit.
Is it also related to reproducibility?

> during cargo build. Note: libgit2 still builded as part of cargo build,
> because cargo tests assume specific libgit2 minor release.

What does this mean?  Does it mean "bundled"?

> (rust-1.23): inherit native-inputs from previous package.

Ok.

> (rust-1.25): switch back to llvm 3.9.1 as workaround for
> https://github.com/rust-lang/rust/issues/50556 issue.

Please add the reasoning as a comment inside the source code instead.

> (rust-1.27): apply patch to make "searchindex.js" files reproducible.

Maybe add "[source]".

> -             (add-after 'configure 'enable-codegen-tests
> -               (lambda _
> -                 (substitute* "config.toml"
> -                   (("codegen-tests = false") ""))
> -                 #t))

I think I had reproducibility problems when enabling codegen tests and
parallel tests.  Is that not the case anymore?

>               ;; FIXME: Re-enable this test if it's indeed supposed to work.
>               ;; See <https://github.com/rust-lang/rust/issues/54178>.

Note to myself: I think the issue comments indicate that the newer gdb output
is better - so we should create a patch similar to
rust-1.25-accept-more-detailed-gdb-lines.patch to accept the newer output.