-
Notifications
You must be signed in to change notification settings - Fork 160
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
Draft Github CI integrations #484
Conversation
43ee178
to
22f807a
Compare
22f807a
to
366bb26
Compare
Related #483
366bb26
to
9fb1cb0
Compare
The ContinuousIntegration actions appears to work correctly. While the Documentation action works within this PR, I still have not verified that it will correctly push the documentation to gen.dev. I'm not sure that there is a way to easily test this behavior outside of merging this PR into master. |
runs-on: ${{ matrix.os }} | ||
strategy: | ||
matrix: | ||
julia-version: ['1.3', 'nightly'] |
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.
1.3
is quite old -- most packages in the ecosystem have dropped support for 1.3
. Let's test the latest LTS instead 1.6.7
.
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.
I am happy to bump it, but also not sure why the current Travis file tests against 1.3, maybe it is related to how Gen is configured in the official Julia Registry?
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.
It's not about the Julia Registry, it's that the current version of Gen (v0.4) still officially supports Julia 1.3 according to our Project.toml
file: https://github.com/probcomp/Gen.jl/blob/master/Project.toml
We could decide to drop support for Julia 1.3 and only support Julia 1.6 onwards, but I think that should be a separate change, and in the meantime I think our CI tests should still test on the versions we're claiming to support!
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.
Agreed, let's keep 1.3 for now and handle the upgrade to 1.6 in a future PR.
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.
So it looks for the Travis file, we are currently testing 1.3, 1.6, 1 (latest stable), and nightly -- I think we should do the same for the GitHub CI action.
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.
Testing against fewer versions has the advantage that it is faster to get the status checks (where each version can take several minutes) and saves computational resources, especially when the status checks are run against each commit in a PR (which is something we should disable).
For this PR I'm happy to test against the same versions of Travis, and then we can do a separate PR for deciding which versions CI should test against and formally support (e.g., "1.6" and "nightly").
It looks like the CI test for Julia 1.6 is failing on this test case due to some platform specific issue leading to different RNG seeds:
In contrast a recent Travis job for Julia 1.6 passes that test just fine. We should probably change the failing test to make them more error tolerant in a separate PR. But for the purposes of this PR, it looks like one difference is that previously, the (passing) Travis build was running on an x64 architecture:
Whereas the failing GitHub CI action is running on a x86 architecture (note the value for
To address this, I think we should try changing the GitHub action to run on |
Looks like the checks passed! Merging :) |
Related #483