Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add CI testing on 32-bit i386 of OCaml 4.14 and 5.3 via Docker containers #335

Merged
merged 3 commits into from
Mar 6, 2025

Conversation

jmid
Copy link
Collaborator

@jmid jmid commented Mar 6, 2025

This PR adds CI tests on 32-bit i386 of OCaml 4.14 and 5.3 via Docker containers.

Background:
The PRNG changed in OCaml5, meaning outputs differ between 4 and 5, even when run with the same seed.
On top, OCaml supports 32-bit (on OCaml5 only via bytecode). Again, this means different output behaviour between 32-bit and 64-bit, resulting in 4 combinations overall, that QCheck supports.

Our current CI only tests on 64-bit, thus leaving a blind angle.
More than once have I discovered out-of-date 32-bit expect test files during a release to the opam-repo, which tests 32-bit in its CI. This is a bit late to catch something that ideally would come with each PR.
This PR thus offers exactly that: CI testing of 32-bit builds via Docker containers.
I've only added 2 entries - one representative (4.14 and 5.3) from each side of the PRNG split.

The addition battles a bit to make the ends meet between the prebuilt opam-images using HOME=/home/opam and an accompanying opam user with ~/.opamrc etc, and GitHub actions insisting on adding -e "HOME=/github/home" last when invoking docker 🤷

@jmid
Copy link
Collaborator Author

jmid commented Mar 6, 2025

FTR, these can just be removed again if we move to ocaml-ci #276

@jmid
Copy link
Collaborator Author

jmid commented Mar 6, 2025

The #331 CI runs were indicating that we were missing an opam update in the workflows.

I've added one here - to both 64-bit and 32-bit workflows.

I'll go ahead and merge, so that #331 can benefit.

@jmid jmid merged commit 858fb07 into c-cube:main Mar 6, 2025
18 checks passed
@jmid jmid deleted the test-32-bit branch March 6, 2025 20:53
@jmid jmid mentioned this pull request Mar 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant