Subject: [bug#57050] [PATCH v2 05/13] gnu: racket: Update to 8.6.

From: Liliana Marie Prikler <[email-masked]>
Date: Thu, 11 Aug 2022 13:44:44 +0200

Am Donnerstag, dem 11.08.2022 um 07:08 -0400 schrieb Philip McGrath:
> Also, update 'chez-scheme-for-racket' to 9.5.9.2.
As with Zuo, can this be split into a separate patch?  If not, why does
it get mentioned here as something noteworthy rather than just being
part of the ChangeLog?

> [...]
> @@ -448,18 +456,52 @@ (define-public chez-scheme-for-racket
>         (delete "libx11" "util-linux:lib")))
>      (native-inputs
>       (modify-inputs (package-native-inputs chez-scheme)
> +       (append zuo)
>         (replace "chez-scheme-bootstrap-bootfiles"
>           chez-scheme-for-racket-bootstrap-bootfiles)))
Prefer prepend over append.

>      (arguments
>       (substitute-keyword-arguments (package-arguments chez-scheme)
> +       ((#:out-of-source? _ #f)
> +        #t)
> +       ((#:tests? _ #t)
> +        ;; FIXME: There have been some flaky test failures. Some have
> been
> +        ;; fixed upstream post-release but have proven non-trivial to
> +        ;; backport; at least one issue remains. Re-enable tests once
> +        ;; https://github.com/racket/racket/issues/4359 is fixed.
> +        #f)
Rather than skipping tests altogether, skip just the flaky ones.

> @@ -130,12 +132,12 @@ (define-module (gnu packages racket)
>  ;; output. The function 'racket-vm-for-system' returns the
> recomended Racket
>  ;; VM package for a given system.
>  ;;
> -;; The file 'racket.scm' builds on these packages to define 'racket-
> minimal'
> -;; and 'racket' packages. These use Racket's support for ``layered
> -;; installations'', which allow an immutable base layer to be
> extended with
> -;; additional packages. They use the layer configuration directly
> provide
> -;; ready-to-install FHS-like trees, rather than relying on the built
> in
> -;; ``Unix-style install'' mechanism.
> +;; We then define the packages 'racket-minimal' and
> +;; 'racket'. These use Racket's support for ``layered
> installations'', which
> +;; allow an immutable base layer to be extended with additional
> packages.
> +;; They use the layer configuration directly provide ready-to-
> install FHS-like
> +;; trees, rather than relying on the built in ``Unix-style install''
> +;; mechanism.
>  ;;
>  ;; Bootstrapping Racket:
>  ;; ---------------------
This is a leftover from 8.6, but do the "FHS-like" installations
actually adhere to the FHS or just to the bit that says "opt means we
can do whatever we want 😎️"?

> @@ -178,16 +180,18 @@ (define-module (gnu packages racket)
>  ;; However, other Racket subsystems implemented in Racket for Racket
> CS
>  ;; use older C implementations for Racket BC, whereas the reader,
> expander,
>  ;; and module system were completely replaced with the Racket
> implementation
> -;; as of Racket 7.0.
> +;; as of Racket 7.0. See also
> <https://racket.discourse.group/t/951/4>.
>  ;;
>  ;; For Racket BC, the compiled "linklet" s-expressions (primitive
> modules)
>  ;; are embeded in C as a static string constant. Eventually, they
> are further
>  ;; compiled by the C-implemented Racket BC bytecode and JIT
> compilers.
> -;; (On platforms where Racket BC's JIT is not supported, yet another
> compiler
> -;; instead compiles the linklets to C code, but this is not a
> bootstrapping
> -;; issue.)
>  ;;
> -;; Code:
> +;; Zuo is notably *not* a problem for bootstrapping. The
> implementation is a
> +;; single hand-written C file designed to build with just `cc -o zuo
> zuo.c`,
> +;; even with very old or limited compilers. (We use the Autoconf
> support for
> +;; convienience.)
> +;;
> +;; CODE:
Is that something that needs be mentioned?

As always, Racket contains a gazillion of updated hashes that I will
simply trust you on until a build fails.

Cheers