2025-09-16 20:40.32: New job: test jmid/mutaml https://github.com/jmid/mutaml.git#refs/heads/main (cf593f1577bfe06b0872d09d7f42242e4394e578) (freebsd-x86_64:freebsd-14.2-4.14_opam-2.4)
Base: freebsd-14.2-ocaml-4.14
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/jmid/mutaml.git" -b "main" && cd "mutaml" && git reset --hard cf593f15
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM freebsd-14.2-ocaml-4.14
# freebsd-14.2-4.14_opam-2.4
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/local/bin/opam-2.4 /usr/local/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e 6ef6813522b6ea29933f6451236a1639bdbaec61 || git fetch origin master) && git reset -q --hard 6ef6813522b6ea29933f6451236a1639bdbaec61 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 mutaml.opam ./
RUN opam pin add -yn mutaml.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y mutaml.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . /src
RUN opam exec -- dune build @install @check @runtest && rm -rf _build
END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK
2025-09-16 20:40.32: Using cache hint "jmid/mutaml-freebsd-14.2-ocaml-4.14-freebsd-14.2-4.14_opam-2.4-9dbad31cfecdf54d97de1beb19a9bc4c"
2025-09-16 20:40.32: Using OBuilder spec:
((from freebsd-14.2-ocaml-4.14)
(comment freebsd-14.2-4.14_opam-2.4)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/local/bin/opam-2.4 /usr/local/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(workdir /src)
(run (shell "sudo chown opam /src"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 6ef6813522b6ea29933f6451236a1639bdbaec61 || git fetch origin master) && git reset -q --hard 6ef6813522b6ea29933f6451236a1639bdbaec61 && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src mutaml.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn mutaml.dev './'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
(env DEPS "base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.4 --depext-only -y mutaml.dev $DEPS"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
(copy (src .) (dst /src))
(run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
)
2025-09-16 20:40.32: Waiting for resource in pool OCluster
2025-09-16 20:40.32: Waiting for worker…
2025-09-16 20:40.32: Got resource from pool OCluster
Building on rosemary
All commits already cached
HEAD is now at cf593f1 Merge pull request #45 from jmid/use-dunes-maintenance-intent
(from freebsd-14.2-ocaml-4.14)
2025-09-16 20:39.36 ---> using "e232d73c9161ea3ff94ff4ae2b5a6983da9a9ca98d5185b2db1dbadeae5228e2" from cache
/: (comment freebsd-14.2-4.14_opam-2.4)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (shell "sudo ln -f /usr/local/bin/opam-2.4 /usr/local/bin/opam"))
2025-09-16 20:39.36 ---> using "ab3b72ff1bef5200ab51bf41b5ce466d603a607c082bc77b8cb9a89bd0ee8e2b" from cache
/src: (run (shell "opam init --reinit -ni"))
No configuration file found, using built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This version of opam requires an update to the layout of /home/opam/.opam from version 2.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [Y/n] y
[NOTE] The 'jobs' option was reset, its value was 1 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
opam option jobs=1 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///home/opam/opam-repository
2025-09-16 20:39.36 ---> using "4f5272944a297469599fadae70be6af0a741315c350ad35dc552c1741ce274b4" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
FreeBSD 14.2-RELEASE-p1
The OCaml toplevel, version 4.14.2
2.4.1
2025-09-16 20:39.37 ---> using "07a4e313abba0673771074c9860cdd9543e4761d68d2fb7c6d7221bc739a7e75" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2025-09-16 20:39.37 ---> using "3a9f22eefbfbdecb5fa973f708084041cdbe652271a081208757b5e926d582b0" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e 6ef6813522b6ea29933f6451236a1639bdbaec61 || git fetch origin master) && git reset -q --hard 6ef6813522b6ea29933f6451236a1639bdbaec61 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
4028320478..7949ff40d8 master -> origin/master
6ef6813522 Merge pull request #28449 from dra27/ocaml-compiler-msvc
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///home/opam/opam-repository
Everything as up-to-date as possible
The following packages are not being upgraded because the new versions conflict with other installed packages:
- ocaml.5.3.0
- ocaml-config.3
However, you may "opam upgrade" these packages explicitly at these versions (e.g. "opam upgrade ocaml.5.3.0"), which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
2025-09-16 20:39.37 ---> using "7725261d76654d1dd37a3cb5fdf4f69d667ba527d60d14c45d86c8dd0154d0d1" from cache
/src: (copy (src mutaml.opam) (dst ./))
2025-09-16 20:39.38 ---> saved as "c240c6aecb6636b39b0472acbbe3705730ca1af7aae4aa50d82da9d2b80323c1"
/src: (run (network host)
(shell "opam pin add -yn mutaml.dev './'"))
[mutaml.dev] synchronised (file:///src)
mutaml is now pinned to file:///src (version dev)
2025-09-16 20:39.39 ---> saved as "17b83d37760d959d574c7f42b50be022ee80897ea9014848ff175def29c15004"
/src: (run (network host)
(shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-09-16 20:39.39 ---> saved as "6bea178c9402e9dd15a8feb31a9471e36dbe1ab6c4cd8b6c2f4d49da1fbdaf7c"
/src: (env DEPS "base.v0.16.4 base-bigarray.base base-threads.base base-unix.base conf-diffutils.2 conf-timeout.1 cppo.1.8.0 csexp.1.5.2 dune.3.20.2 dune-configurator.3.20.2 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocamlfind.1.9.8 octavius.1.2.2 ounit2.2.2.7 ppx_derivers.1.2.1 ppx_deriving.6.0.3 ppx_js_style.v0.16.0 ppx_yojson_conv.v0.16.0 ppx_yojson_conv_lib.v0.16.0 ppxlib.0.35.0 seq.base sexplib0.v0.16.0 stdlib-random.1.2.0 stdlib-shims.0.3.0 yojson.3.0.0")
/src: (env CI true)
/src: (env OCAMLCI true)
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.4 --depext-only -y mutaml.dev $DEPS"))
[WARNING] Unknown update command for bsd, skipping system update
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[mutaml.dev] synchronised (file:///src)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following system packages will first need to be installed:
diffutils
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
+ /usr/local/bin/sudo "pkg" "install" "-y" "diffutils"
- Updating FreeBSD repository catalogue...
- [rosemary] Fetching data.pkg: ...
- .
- .
- ..
- ... done
- Processing entries:
- ...
- ..
- ..
- ..
- . done
- FreeBSD repository update completed. 35671 packages processed.
- All repositories are up to date.
- The following 1 package(s) will be affected (of 0 checked):
-
- New packages to be INSTALLED:
- diffutils: 3.12
-
- Number of packages to be installed: 1
-
- The process will require 2 MiB more space.
- 387 KiB to be downloaded.
- [rosemary] [1/1] Fetching diffutils-3.12.pkg: .......... done
- Checking integrity... done (0 conflicting)
- [rosemary] [1/1] Installing diffutils-3.12...
- [rosemary] [1/1] Extracting diffutils-3.12: .......... done
2025-09-16 20:39.56 ---> saved as "3ab5914145d199c394796275d80877c9d71da4a06de5724b9299f09d4860c73d"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 22 packages
∗ base v0.16.4
∗ conf-diffutils 2
∗ conf-timeout 1
∗ cppo 1.8.0
∗ csexp 1.5.2
∗ dune 3.20.2
∗ dune-configurator 3.20.2
∗ ocaml-compiler-libs v0.12.4
∗ ocamlfind 1.9.8
∗ octavius 1.2.2
∗ ounit2 2.2.7
∗ ppx_derivers 1.2.1
∗ ppx_deriving 6.0.3
∗ ppx_js_style v0.16.0
∗ ppx_yojson_conv v0.16.0
∗ ppx_yojson_conv_lib v0.16.0
∗ ppxlib 0.35.0
∗ seq base
∗ sexplib0 v0.16.0
∗ stdlib-random 1.2.0
∗ stdlib-shims 0.3.0
∗ yojson 3.0.0
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
∗ installed conf-timeout.1
∗ installed conf-diffutils.2
⬇ retrieved csexp.1.5.2 (cached)
⬇ retrieved cppo.1.8.0 (cached)
⬇ retrieved base.v0.16.4 (cached)
⬇ retrieved ocaml-compiler-libs.v0.12.4 (cached)
⬇ retrieved octavius.1.2.2 (cached)
⬇ retrieved ocamlfind.1.9.8 (cached)
⬇ retrieved ppx_derivers.1.2.1 (cached)
⬇ retrieved ounit2.2.2.7 (cached)
⬇ retrieved ppx_deriving.6.0.3 (cached)
⬇ retrieved ppx_js_style.v0.16.0 (cached)
⬇ retrieved ppx_yojson_conv.v0.16.0 (cached)
⬇ retrieved ppx_yojson_conv_lib.v0.16.0 (cached)
⬇ retrieved seq.base (cached)
∗ installed seq.base
⬇ retrieved sexplib0.v0.16.0 (cached)
⬇ retrieved stdlib-random.1.2.0 (cached)
⬇ retrieved stdlib-shims.0.3.0 (cached)
⬇ retrieved yojson.3.0.0 (cached)
⬇ retrieved ppxlib.0.35.0 (cached)
⬇ retrieved dune.3.20.2, dune-configurator.3.20.2 (cached)
∗ installed ocamlfind.1.9.8
∗ installed dune.3.20.2
∗ installed ppx_derivers.1.2.1
∗ installed stdlib-shims.0.3.0
∗ installed csexp.1.5.2
∗ installed yojson.3.0.0
∗ installed ounit2.2.2.7
∗ installed sexplib0.v0.16.0
∗ installed octavius.1.2.2
∗ installed ocaml-compiler-libs.v0.12.4
∗ installed ppx_yojson_conv_lib.v0.16.0
∗ installed cppo.1.8.0
∗ installed stdlib-random.1.2.0
∗ installed dune-configurator.3.20.2
∗ installed base.v0.16.4
∗ installed ppxlib.0.35.0
∗ installed ppx_js_style.v0.16.0
∗ installed ppx_deriving.6.0.3
∗ installed ppx_yojson_conv.v0.16.0
Done.
2025-09-16 20:40.52 ---> saved as "4df03aff57b8765b4e3a962c938b0464b2b97662a9f4075b2190aad14ca3a470"
/src: (copy (src .) (dst /src))
2025-09-16 20:40.52 ---> saved as "98698c4f2416464cf3613e72f7e2fb46161412d42eadda4a6bd07fbb445832ad"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/examples/testproj-2-modules/test && ./ounittest.exe)
..
Ran: 2 tests in: 0.11 seconds.
OK
(cd _build/default/examples/testproj-1-module && ./ounittest.exe)
....
Ran: 4 tests in: 0.11 seconds.
OK
2025-09-16 20:41.18 ---> saved as "302e223d602bfeaf6ec7a99ac41f50cbb8ea36d87716540301d07c1c4c25a195"
Job succeeded
2025-09-16 20:42.15: Job succeeded