Skip to content

Modernize CI setup - #715

Merged
devmotion merged 6 commits into
mainfrom
modernize-ci
Oct 16, 2026
Merged

devmotion merged 6 commits into
mainfrom
modernize-ci

Conversation

@devmotion

@devmotion devmotion commented Oct 15, 2026 •

Copy link
Copy Markdown
Member

Brings the CI setup in line with current Julia ecosystem practice.

CI changes

  • Dependabot replaces CompatHelper: adds a julia ecosystem entry for / and /docs, grouping package updates into one weekly PR. CompatHelper.yml is removed.
  • Spell check: new SpellCheck.yml workflow running crate-ci/typos.
  • Test matrix: lts and 1 on Linux, macOS and Windows with arch: default. On macos-latest (Apple Silicon) this runs native aarch64 binaries. The 32-bit x86 job is unchanged. pre now runs only on Linux and is allowed to fail. The separate JuliaNightly.yml workflow is removed.
  • Docs: build on Julia 1 and install dependencies with Pkg.instantiate(), relying on [sources] in docs/Project.toml instead of Pkg.develop. Adds actions: write so julia-actions/cache can prune old caches.
  • Downgrade: run on lts, actually pass mode to julia-downgrade-compat, and add the cache, permissions and concurrency settings. Removes the unused group/GROUP matrix entry, a stale comment and the no-op skip: Pkg,TOML. In v2 the action leaves stdlibs out of the downgrade on its own.
  • IntegrationTest: add permissions so the cache works, and drop the redundant arch: x64. Drop Diffractor: it only ran on Julia nightly, where its dependency Cthulhu doesn't precompile, and it hasn't had a code change since June 2025. The ChainRulesOverloadGeneration job stays; its failing demo tests are fixed in Fix type piracy in demo tests ChainRulesOverloadGeneration.jl#22.

Typo fixes

Fixes about 40 misspellings found by typos in comments, docstrings, docs and tests, including the test-only function mixed_vararg_type_constaint. Two variable names that typos flags are renamed instead of allowlisted: dne → nt in test/tangent_types/abstract_zero.jl, and somes/some → results/result in a docs example.

Repo settings needed

  • Add CODECOV_TOKEN as a Dependabot secret (Settings → Secrets and variables → Dependabot). Dependabot PRs can't read normal Actions secrets, and fail_ci_if_error: true would otherwise fail CI on them.
  • Update the required status checks: remove the pre matrix jobs and JuliaNightly, and add Spell Check.

Testing

  • typos passes locally on the whole repo.
  • Pkg.test() passes locally on Julia 1.10.12 (lts) and 1.13.1.
  • The workflow files parse as valid YAML. actionlint was not run.

🤖 Generated with Claude Code

devmotion and others added 3 commits October 16, 2026 01:45
Fix misspellings in comments, docstrings, docs and tests found by typos,
and rename variables that typos flags (`dne` -> `nt`, `somes` -> `results`).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Replace CompatHelper with Dependabot for Julia packages (root and docs)
- Add spell check workflow using typos
- Test lts and 1 on Linux, macOS (native aarch64) and Windows; run pre
  on Linux only and allow it to fail; remove separate JuliaNightly workflow
- Build docs on Julia 1 using [sources] instead of Pkg.develop
- Downgrade: use lts, pass downgrade mode, add cache, drop unused settings
- Add permissions for julia-actions/cache where missing

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov

codecov Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.39%. Comparing base (0aa1554) to head (4e89211).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #715   +/-   ##
=======================================
  Coverage   93.39%   93.39%           
=======================================
  Files          15       15           
  Lines         999      999           
=======================================
  Hits          933      933           
  Misses         66       66           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

devmotion and others added 3 commits October 16, 2026 10:54
Apply JuliaFormatter suggestions, fix typos missed by typos, and rename
the NoTangent test variable to `no_tangent` (`nt` usually denotes a
NamedTuple in this codebase).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffractor only runs on Julia nightly and has been failing for a long time
because its dependency Cthulhu does not precompile there; its last code
change was in June 2025.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@devmotion
devmotion marked this pull request as ready for review October 16, 2026 13:47
@devmotion
devmotion merged commit 43ca573 into main Oct 16, 2026
25 of 27 checks passed
@devmotion
devmotion deleted the modernize-ci branch October 16, 2026 13:50
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