-
Notifications
You must be signed in to change notification settings - Fork 43
Description
As of Julia 1.7, the Pkg.test function now has the optional force_latest_compatible_version keyword argument, which provides the solution to #160.
However, in order to deploy the force_latest_compatible_version fix into production, we need to modify the various continuous integration (CI) platforms to support auto-detection of CompatHelper/Dependabot pull requests. Basically, we need to modify the CI configurations as follows:
If the CI job is a pull request job, and the pull request was made by CompatHelper or Dependabot, then use the following Pkg.test command:
Pkg.test(; force_latest_compatible_version = true)If the CI job is not a pull request job, or if it is a pull request job but the pull request was not made by CompatHelper or Dependabot, then use the following Pkg.test command:
Pkg.test(; force_latest_compatible_version = false)Note that the force_latest_compatible_version keyword argument requires at least Julia 1.7. Therefore, for Julia versions prior to Julia 1.7, you should not provide the force_latest_compatible_version keyword argument.
In julia-actions/julia-runtest#20, we implemented the auto-detection as follows. We look at the name of the branch from which the pull request was made, and:
- If the branch name starts with either
compathelper/ordependabot/julia, we say that the current job is a CompatHelper/Dependabot job. - Otherwise, we say that the current job is not a CompatHelper/Dependabot job.
This table tracks our progress:
| Row | CI provider | Notes | Status | Repository | Pull Requests |
|---|---|---|---|---|---|
| 1 | GitHub Actions CI | For users that are using the julia-actions/julia-runtest action |
✅ | julia-actions/julia-runtest | julia-actions/julia-runtest#20 |
| 2 | GitHub Actions CI | For users that are NOT using the julia-actions/julia-runtest action |
❌ | ||
| 3 | Travis CI | For users that are using the default Travis CI setup for Julia | ❌ | travis-ci/travis-build | |
| 4 | AppVeyor CI | For users that are using JuliaCI/Appveyor.jl | ❌ | JuliaCI/Appveyor.jl | |
| 5 | Buildkite CI | For users that are using the JuliaGPU Buildkite | ❌ | JuliaCI/julia-test-buildkite-plugin | |
| 6 | GitLab CI | ❌ | |||
| 7 | Cirrus CI | For users that are using ararslan/CirrusCI.jl | ❌ | ararslan/CirrusCI.jl |