owlbarn / owl

Owl - OCaml Scientific Computing @ https://ocaml.xyz
MIT License
1.2k stars 120 forks source link

Enable github actions for testing #658

Closed mseri closed 2 months ago

mseri commented 4 months ago

This tests separately the three packages, should catch packaging issues before releases are made. It also tests the arm builds for macos (they will fail until https://github.com/owlbarn/owl/pull/609 is merged)

jzstark commented 4 months ago

Thanks a lot for adding test for various platforms other than Ubuntu. The test shows that building on most macos systems fails. Besides the main workflow based on ubuntu-latest, I have also tested a Github action on macos-latest, where Owl builds well. Perhaps this mac.yml would be helpful. I believe in the tests we should build Owl from source instead of opam repository, where the Owl code is actually outdated.

mseri commented 4 months ago

The tests here are building the code from the repository not from the released packages in opam. The packages are automatically pinned to the version in the PR branches by the setup-ocaml action (in the way it is configured now) and then use the pinned version.

I will have a look at the Mac action you linked, the failure on Mac arm is expected but I was not expecting the other failure

mseri commented 4 months ago

I looked at the mac script, it works only because it is restricted to ocaml 5.1, I think if you enable 4.14 or earlier you should see the same failures. The libquadmath failure should be fixed by the same pr that fixes macos arm64.

The main advantage of using setup-ocaml in the way suggested here is that it will ensure that the depext, opam files and tests are properly setup for release and should work properly for the users that want to use the dev version.

jzstark commented 3 months ago

True, this issue arm64 issue is one that requires fixing. Thanks a lot for your help, and I'll take a look at both PRs soon.

tmcgilchrist commented 2 months ago

Looks like a reasonable change. 👍🏻