-
-
Notifications
You must be signed in to change notification settings - Fork 44
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
Update to OCaml 4.14 #1366
Update to OCaml 4.14 #1366
Conversation
Hey Brian, find the docker images at:
For the multiarch image, one of the deps seems to not be compatible with arm32 & 32bit
Our target platforms for multi arch build are: Is there a way we can fix that or do we ditch arm support ? |
Can you try core 0.16.0 instead of 0.16.1? It doesn’t look like it has the same restriction in the metadata, but that doesn’t mean it will build necessarily. |
See: ocaml/opam-repository#23918 0.16.1 had this restriction added back, but it should be fine if those platforms use a different minor version |
Nice! I'll rebuild, it might take a while ... |
Looks like I got timeout for downloading so many packages haha, I'll try again in the morning. |
I think the main Linux image and the developers should still be 16.1 |
|
Two things: was there an |
I've already tried with |
While I'm debugging the (for the record, the version we build for google collab has been downloaded 44 times for just 2.33.1, and the base cmdstan 2.33.1 ~15 thousand times) If we need to disable builds on that platform for a little while I think that is OK |
@andrjohns - you originally added the different arch builds for stanc. Was there a specific reason for the selection of archs? mips64el and s390x both seem relatively obscure |
Codecov Report
@@ Coverage Diff @@
## master #1366 +/- ##
==========================================
+ Coverage 89.45% 89.93% +0.48%
==========================================
Files 65 63 -2
Lines 10774 10704 -70
==========================================
- Hits 9638 9627 -11
+ Misses 1136 1077 -59
|
Not particularly, it was just all archs supported by Debian. I figured that would cover the majority of use-cases |
This is now building with mips64el disabled. @serban-nicusor-toptal is there a good way to test build the other binaries we normally only build on |
One fast way would be to comment out the test stages, the whens for each binary build and run the pipeline. ( this can also be done in the Jenkins UI after hitting Replay on a pipeline without the need to commit here ). |
Everything built fine, thanks @serban-nicusor-toptal for the tip |
Thanks to some help from some Opam maintainers we determined that the issue with the mips64el architecture comes from the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'mips64el' port is a 64-bit little endian port using the N64 ABI, hardware floating point and the MIPS64R2 ISA
I'm not sure the math library is compatible with the nintendo 64 so I think we can remove this jenkins path (unless??)
We actually just fixed mips64el! I just have to uncomment the Jenkins and test to make sure, but it should be the same as before now |
Existing developers should install and use a new opam switch after this merge: Tagging those that come to mind: @SteveBronder @rok-cesnovar @andrjohns @spinkney |
This updates to OCaml 4.14, the last update of the 4.x release line.
It is source-compatible with OCaml 5.0 if someone wishes to compile with that instead.
It also updates the Jane Street libraries to v0.16, which included migrating from Core_kernel to Core.
Finally, it also bumped some other dependencies:
This final change required some re-formatting, but with proper configuration it was not too bad.
Existing developers should install and use a new opam switch after this is merged:
cd scripts/; ./setup_dev_env.sh
The required updates for building on Windows were done in: ocaml-cross/opam-cross-windows#277 ocaml-cross/opam-cross-windows#278 ocaml-cross/opam-cross-windows#279 ocaml-cross/opam-cross-windows#280 ocaml-cross/opam-cross-windows#286
@serban-nicusor-toptal: this will need new versions of all of our docker images, and a new opam environment on the Jenkins mac. Let me know if you need any help!
Submission Checklist
Release notes
Updated the compiler to use OCaml 4.14 and newer versions of its dependencies.
Copyright and Licensing
By submitting this pull request, the copyright holder is agreeing to
license the submitted work under the BSD 3-clause license (https://opensource.org/licenses/BSD-3-Clause)