Skip to content

Conversation

@jtojnar
Copy link
Member

@jtojnar jtojnar commented Oct 22, 2022

Description of changes
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.11 Release Notes (or backporting 22.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. label Oct 22, 2022
@ofborg ofborg bot added 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Oct 22, 2022
https://github.com/thierry-martinez/pyml/releases/tag/20220905

Aldo switch to dune, which has been available since 2021-09-24.
And remove unneeded dependencies:
- ncurses was needed for Python in the past
- ocaml and findlib are implied by dune
@jtojnar
Copy link
Member Author

jtojnar commented Oct 24, 2022

Looks like the dune build system does not install top-levels. Not sure if those are necessary.

@jtojnar
Copy link
Member Author

jtojnar commented Oct 24, 2022

I tried to fix that but got stuck. From the warning in https://github.com/thierry-martinez/pyml/pull/87, it looks like that utop package might need cmx files? I am not familiar with OCaml to know if it is expected.

@jtojnar
Copy link
Member Author

jtojnar commented Oct 24, 2022

The following includes the cmx files in utop, which gets rid of the warning:

--- a/pkgs/development/tools/ocaml/utop/default.nix
+++ b/pkgs/development/tools/ocaml/utop/default.nix
@@ -57,6 +57,10 @@ buildDunePackage rec {
    done
    '';
 
+   postPatch = ''
+    sed -Ei '/modes byte/d' src/lib/dune
+   '';
+
   meta = {
     description = "Universal toplevel for OCaml";
     longDescription = ''

but pymlutop still fails to build:

    ocamlopt pyutop.exe (exit 2)
(cd _build/default && /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/bin/ocamlopt.opt -w -40 -g -o pyutop.exe /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml/compiler-libs/ocamlcommon.cmxa /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml/compiler-libs/ocamlbytecomp.cmxa /nix/store/bgvrgmks30gxafy3sh60ng6dykicna2b-ocaml-findlib-1.9.3/lib/ocaml/4.14.0/site-lib/findlib/findlib.cmxa /nix/store/bgvrgmks30gxafy3sh60ng6dykicna2b-ocaml-findlib-1.9.3/lib/ocaml/4.14.0/site-lib/findlib/findlib_top.cmxa /nix/store/jrphls518xviz7zwj5c3qc68d3mpva3a-ocaml4.14.0-result-1.5/lib/ocaml/4.14.0/site-lib/result/result.cmxa /nix/store/dr52y52442zh2hzaxbiswv5jsxak95r7-ocaml4.14.0-lwt-5.5.0/lib/ocaml/4.14.0/site-lib/lwt/lwt.cmxa /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml/unix.cmxa -I /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml/bigarray.cmxa -I /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml /nix/store/sbz98lbzxlqlkiww9ppzw780sgbg2c03-ocaml4.14.0-mmap-1.1.0/lib/ocaml/4.14.0/site-lib/mmap/mmap.cmxa /nix/store/4aj6hrgxiigj84zyqz6z3vjdrzz3j94b-ocaml4.14.0-ocplib-endian-1.2/lib/ocaml/4.14.0/site-lib/ocplib-endian/ocplib_endian.cmxa /nix/store/4aj6hrgxiigj84zyqz6z3vjdrzz3j94b-ocaml4.14.0-ocplib-endian-1.2/lib/ocaml/4.14.0/site-lib/ocplib-endian/bigstring/ocplib_endian_bigstring.cmxa /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml/threads/threads.cmxa -I /nix/store/xnyj7c27kdyf6pxfdqv04l2i8fdpmp6p-ocaml-4.14.0/lib/ocaml /nix/store/dr52y52442zh2hzaxbiswv5jsxak95r7-ocaml4.14.0-lwt-5.5.0/lib/ocaml/4.14.0/site-lib/lwt/unix/lwt_unix.cmxa -I /nix/store/dr52y52442zh2hzaxbiswv5jsxak95r7-ocaml4.14.0-lwt-5.5.0/lib/ocaml/4.14.0/site-lib/lwt/unix /nix/store/xm570wj1aj7vwkgzzygc8ii8a8wk7080-ocaml-react-1.2.1/lib/ocaml/4.14.0/site-lib/react/react.cmxa /nix/store/cfr9kw5qyrabrg46faf7nxcp2wl1v1l1-ocaml4.14.0-lwt_react-1.1.5/lib/ocaml/4.14.0/site-lib/lwt_react/lwt_react.cmxa /nix/store/b89j619h9vq8d1iljpr5bvc5v03kp2il-ocaml4.14.0-camomile-1.0.2/lib/ocaml/4.14.0/site-lib/camomile/default_config/camomileDefaultConfig.cmxa /nix/store/b89j619h9vq8d1iljpr5bvc5v03kp2il-ocaml4.14.0-camomile-1.0.2/lib/ocaml/4.14.0/site-lib/camomile/library/camomileLibrary.cmxa /nix/store/b89j619h9vq8d1iljpr5bvc5v03kp2il-ocaml4.14.0-camomile-1.0.2/lib/ocaml/4.14.0/site-lib/camomile/lib_default/camomileLibraryDefault.cmxa /nix/store/b89j619h9vq8d1iljpr5bvc5v03kp2il-ocaml4.14.0-camomile-1.0.2/lib/ocaml/4.14.0/site-lib/camomile/dyn/camomileLibraryDyn.cmxa /nix/store/b89j619h9vq8d1iljpr5bvc5v03kp2il-ocaml4.14.0-camomile-1.0.2/lib/ocaml/4.14.0/site-lib/camomile/camomile_yuge.cmxa /nix/store/h8wp1yi799v7h70khsf9xy7a5xxckw4q-ocaml4.14.0-charInfo_width-1.1.0/lib/ocaml/4.14.0/site-lib/charInfo_width/charInfo_width.cmxa /nix/store/sy7hzwq1k6a68rgwx4yvchg5vli5nwxl-ocaml4.14.0-zed-3.1.0/lib/ocaml/4.14.0/site-lib/zed/zed.cmxa /nix/store/d51ddknw86c07fp55s1i70hxsizl8j07-ocaml4.14.0-lwt_log-1.1.2/lib/ocaml/4.14.0/site-lib/lwt_log/core/lwt_log_core.cmxa /nix/store/d51ddknw86c07fp55s1i70hxsizl8j07-ocaml4.14.0-lwt_log-1.1.2/lib/ocaml/4.14.0/site-lib/lwt_log/lwt_log.cmxa /nix/store/kp0jbcfjiq45irfyv89l8b07ii7qg73y-ocaml4.14.0-trie-1.0.0/lib/ocaml/4.14.0/site-lib/trie/trie.cmxa /nix/store/9f8f5sfz10lwac5k3adwjg4hlc602gk2-ocaml4.14.0-mew-0.1.0/lib/ocaml/4.14.0/site-lib/mew/mew.cmxa /nix/store/h55ym2m7aapfxw9afs4d7k682vq6labk-ocaml4.14.0-mew_vi-0.5.0/lib/ocaml/4.14.0/site-lib/mew_vi/mew_vi.cmxa /nix/store/mpp5armq3ngh7s5xwd13g16rgqx1zcs5-ocaml4.14.0-lambda-term-3.2.0/lib/ocaml/4.14.0/site-lib/lambda-term/lambda_term.cmxa -I /nix/store/mpp5armq3ngh7s5xwd13g16rgqx1zcs5-ocaml4.14.0-lambda-term-3.2.0/lib/ocaml/4.14.0/site-lib/lambda-term /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa .pyutop.eobjs/native/dune__exe__Pyutop.cmx)
File "_none_", line 1:
Error: No implementations provided for the following modules:
         Toploop referenced from /nix/store/bgvrgmks30gxafy3sh60ng6dykicna2b-ocaml-findlib-1.9.3/lib/ocaml/4.14.0/site-lib/findlib/findlib_top.cmxa(Topfind),
           /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa(UTop),
           /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa(UTop_complete),
           /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa(UTop_main)
         Topdirs referenced from /nix/store/bgvrgmks30gxafy3sh60ng6dykicna2b-ocaml-findlib-1.9.3/lib/ocaml/4.14.0/site-lib/findlib/findlib_top.cmxa(Topfind),
           /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa(UTop),
           /nix/store/wsn5clmgm4q2igq14vpcfj8bwphb58fl-ocaml4.14.0-utop-2.9.2/lib/ocaml/4.14.0/site-lib/utop/uTop.cmxa(UTop_main)

@vbgl
Copy link
Contributor

vbgl commented Dec 13, 2022

What’s the status of this? The first commit looks good and could be merged (it makes stdcompat compatible with OCaml 5).

@jtojnar
Copy link
Member Author

jtojnar commented Dec 13, 2022

Unless there is need for toplevels (I am still not completely sure what they are for), it should be okay to merge as is.

@vbgl
Copy link
Contributor

vbgl commented Dec 13, 2022

Thanks.

@github-actions
Copy link
Contributor

Successfully created backport PR #205912 for release-22.11.

@github-actions
Copy link
Contributor

Git push to origin failed for release-22.11 with exitcode 1

@jtojnar jtojnar deleted the cocci-deps branch December 13, 2022 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants