thierry-martinez / pyml

OCaml bindings for Python
BSD 2-Clause "Simplified" License
187 stars 31 forks source link

pyml and OCaml 5.0.0 #82

Closed pklehre closed 2 years ago

pklehre commented 2 years ago

Thank you for providing a useful OCaml package!

OCaml 5.0 is likely to release soon:

https://twitter.com/kc_srk/status/1535141465633853440

Will pyml still work with OCaml 5.0? There seems to be an issue with the stdcompat package which pyml relies on:

https://github.com/thierry-martinez/stdcompat/issues/15

Here is what I get

[pkl@zeta ocamlec]$ opam switch 5.0.0+trunk 
# Run eval $(opam env) to update the current shell environment
[pkl@zeta ocamlec]$ eval $(opam env)
[pkl@zeta ocamlec]$ opam install pyml
The following actions will be performed:
  ∗ install stdcompat 18       [required by pyml]
  ∗ install pyml      20220325
===== ∗ 2 =====
Do you want to continue? [Y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved pyml.20220325  (cached)
⬇ retrieved stdcompat.18  (cached)
[ERROR] The compilation of stdcompat.18 failed at "make all".

#=== ERROR while compiling stdcompat.18 =======================================#
# context     2.1.2 | linux/x86_64 | ocaml-variants.5.0.0+trunk | https://opam.ocaml.org/#13c823a5
# path        ~/.opam/5.0.0+trunk/.opam-switch/build/stdcompat.18
# command     ~/.opam/opam-init/hooks/sandbox.sh build make all
# exit-code   2
# env-file    ~/.opam/log/stdcompat-44536-4aff36.env
# output-file ~/.opam/log/stdcompat-44536-4aff36.out
### output ###
# [...]
# ocamlfind ocamldep stdcompat__init.ml stdcompat__root.ml stdcompat__either_s.ml stdcompat__either.ml stdcompat__seq_s.ml stdcompat__seq.ml stdcompat__tools.ml stdcompat__pervasives_s.ml stdcompat__arg_s.ml stdcompat__lazy_s.ml stdcompat__char_s.ml stdcompat__uchar_s.ml stdcompat__uchar.ml stdcompat__buffer_s.ml stdcompat__string_s.ml stdcompat__stringLabels_s.ml stdcompat__bytes_s.ml stdcompa[...]
# make  all-am
# make[1]: Entering directory '/home/pkl/.opam/5.0.0+trunk/.opam-switch/build/stdcompat.18'
# ocamlfind ocamlopt -c -package seq -bin-annot -no-alias-deps -nolabels -I . -alert -deprecated stdcompat__native.mli -o stdcompat__native.cmi
# ocamlfind ocamlopt -c -package seq -bin-annot -no-alias-deps -nolabels -I . -alert -deprecated stdcompat__init.mli -o stdcompat__init.cmi
# File "stdcompat__init.mli", line 45, characters 9-26:
# 45 | ('a, 'b) Pervasives.result =
#               ^^^^^^^^^^^^^^^^^
# Error: Unbound module Pervasives
# make[1]: *** [Makefile:1736: stdcompat__init.cmi] Error 2
# make[1]: Leaving directory '/home/pkl/.opam/5.0.0+trunk/.opam-switch/build/stdcompat.18'
# make: *** [Makefile:888: all] Error 2

<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
┌─ The following actions failed
│ λ build stdcompat 18
└─ 
╶─ No changes have been performed
thierry-martinez commented 2 years ago

Thank you for your interest in pyml! Indeed, I plan to make a release soon for stdcompat, pyml and some other libraries for OCaml 5.0. stdcompat master branch is already compatible with OCaml 5.0: if you do opam pin https://github.com/thierry-martinez/stdcompat.git, it should work...

pklehre commented 2 years ago

Yes, that works. Thank you.