Repository navigation
Modernize CI through Ruby 4, Mongoid 9, and MongoDB 8 - #17
Merged
Merged
Conversation
dblock
force-pushed
the
dblock/modernize-ci
branch
5 times, most recently
from
October 14, 2026 23:28
64394ea to
60688ee
Compare
Retain representative compatible legacy combinations and fix dependency and API incompatibilities exposed by the modern test matrix. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
dblock
force-pushed
the
dblock/modernize-ci
branch
from
October 14, 2026 23:34
60688ee to
9732a29
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Modern checkout, MongoDB container services, fail-fast disabled, and representative compatible legacy and modern combinations. Ruby 4.0 / Mongoid 9 / MongoDB Server 8.0 is a required test job. Fix associated dependency, stdlib, and API incompatibilities rather than skipping modern tests. Update README and changelog.
Validation
Local Ruby 4.0.6 / Mongoid 9.1.1 / MongoDB Server 8.0 suites pass. Ruby 2.7 / Mongoid 7 regression suites and retained lint baselines also pass. The final GitHub Actions matrix and retained lint baseline pass: https://github.com/dblock/mongoid-collection-snapshot/actions/runs/38651730036. Local modern suite: 15 examples, 0 failures. Legacy Mongoid 3–4 jobs use MongoDB 2.6 because Moped needs the removed system.namespaces collection; the old combinations are retained and verified, not skipped.
Scope
Based on upstream/master, not fork master. No changes to Danger workflows or other repositories. The public snapshot storage API fix overlaps #16. This branch is based on upstream/master and excludes the unmerged fork-master Danger PR #15; Danger is unchanged.
Coverage follow-up — verified
Remove obsolete quality badges (and the dead dependency badge where present), add Coveralls, and scope both CI and coverage badges to upstream master. Coverage starts before library requires and tracks lib/**/*.rb. Only the Ruby 4.0 representative job installs SimpleCov and submits its native coverage/.resultset.json using coverallsapp/github-action@v2 and automatic GITHUB_TOKEN; no custom secret or duplicate parallel upload. No legacy coverage dependency changes.
Final full CI matrix including retained lint and real Coveralls report step is green: https://github.com/dblock/mongoid-collection-snapshot/actions/runs/38654924326. Line coverage: 83.82%. Coveralls returned a successful API response with a job URL for this fork build. This does not establish that the upstream repository is activated or that its master badge has data; that requires an accepted upstream default-branch build after merge.