Subject: [bug#50317] [PATCH 0/2] Update ‘ocaml-ppxlib’

From: Xinglu Chen <[email-masked]>
Date: Sat, 04 Sep 2021 12:56:07 +0200

On Fri, Sep 03 2021, Ludovic Courtès wrote:

> Hi,
>
> Xinglu Chen <[email-masked]> skribis:
>
>> ‘ocaml-ppx-optcomp’ fails to build with the new ‘ocaml-ppxlib’, updating
>> it makes it build again.
>
> In that case, I’d suggest updating both in the same commit, so that each
> commit contains a working package set.

Or maybe I could reorder the commits so that the ‘ocaml-ppxlib’ update
comes last?

>>   gnu: ocaml-ppxlib: Update to 0.23.0.
>>   gnu: ocaml-ppx-optcomp: Update to 0.14.3.
>
> Unfortunately, at least one dependent fails to build:
>
> --8<---------------cut here---------------start------------->8---
> starting phase `build'
> File "src/ppx_variants_conv.ml", line 69, characters 22-41:
> 69 |   if Caml.Hashtbl.mem Lexer.keyword_table s
>                            ^^^^^^^^^^^^^^^^^^^
> Error: Unbound value Lexer.keyword_table
> command "dune" "build" "@install" "--profile" "release" failed with status 1
> builder for `/gnu/store/g73id3dchmqc0dirv9ahzmgbwsyba78b-ocaml-ppx-variants-conv-0.14.1.drv' failed with exit code 1
> --8<---------------cut here---------------end--------------->8---
>
> Could you check this one and other packages returned by ‘guix refresh -l
> ocaml-ppxlib’?
>

Good catch!  There is a patch that should fix this issue[1]; should I
apply the patch to fix the build?

I didn’t build the ‘ocaml-llwm’ packages since I would have to first
build ‘llvm’ from source...[*].  The ‘ocaml-markup0.8.0’ fails too, but
it was already failing before applying this patch, so I will send a
separate series to try to fix it.  I also had to update ‘ocamlformat’ to
make it build.

Thanks for the taking a look!

[*]: I have noticed that substitute availability has been pretty poor
lately.  :-(

[1]: <https://github.com/janestreet/ppx_variants_conv/pull/9>