Modernize the GitHub Actions CI#322
Merged
Merged
Conversation
avsm/setup-ocaml@v1 fails on current runners ("the architecture is not
supported"), so every job aborts. Switch to ocaml/setup-ocaml@v3 and
actions/checkout@v4 and drop the removed "opam depext" step.
Build cstruct and its runtime siblings on OCaml 5.3/5.1/4.14. ppx_cstruct
(ocaml-migrate-parsetree) and cstruct-async (async) do not build on
OCaml 5, so run the full build and test on 4.14.
Their v0.17 releases require OCaml >= 5.1, but the Async binding only builds on OCaml 4.x. Without an upper bound the solver picks v0.17 on a 5.x switch and the build fails; cap the three at < v0.17.0 so the constraint that cstruct-async is OCaml 4.x-only lives in the package metadata.
fuzz/fuzz.ml uses Crowbar's char generator, added in crowbar 0.2; 0.1 lacks it. Without a lower bound the solver picks crowbar 0.1 and the fuzz build fails with "Unbound value char".
Member
Author
|
Need ocaml/opam-repository#30217 to fix the ocaml-ci issues. |
The Drone pipeline (cloud.drone.io) that ran the afl campaign no longer executes builds, so drop .drone.yml. The fuzz executable is afl-only: its generators are unbounded (cstructs up to 64 KiB, unbounded lists), so quickcheck mode hangs -- fuzz.ml itself guards against it. Build it under runtest as a compile check instead of running it; reinstate the afl campaign on an afl-instrumented switch when needed.
Member
Author
|
@avsm I've removed the Drone CI as it seems to be completely dead since they got acquired. |
Member
|
Looks good, thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CI currently fails on every PR:
avsm/setup-ocaml@v1errors with "the architecture is not supported" on today's runners, so all jobs abort in ~10s. This switches toocaml/setup-ocaml@v3+actions/checkout@v4, drops the removedopam depextstep, and bumps the matrix to OCaml 5.3/5.1/4.14 (which ship a dune supporting the 3.17 language, needed once #321 lands).