Skip to content

build!: require Rust 1.97 for v0.8.0#523

Merged
acgetchell merged 3 commits into
mainfrom
build/496-rust-1.97-msrv
Jul 14, 2026
Merged

build!: require Rust 1.97 for v0.8.0#523
acgetchell merged 3 commits into
mainfrom
build/496-rust-1.97-msrv

Conversation

@acgetchell

Copy link
Copy Markdown
Owner
  • align MSRV metadata, tooling, and documentation with Rust 1.97
  • adopt the stabilized Hilbert highest-bit helper
  • apply new Clippy and rustdoc diagnostics and finish assertion cleanup
  • clarify the predicate benchmark workload and cold-path audit evidence

BREAKING CHANGE: The minimum supported Rust version is now 1.97.0.

Closes #496

- align MSRV metadata, tooling, and documentation with Rust 1.97
- adopt the stabilized Hilbert highest-bit helper
- apply new Clippy and rustdoc diagnostics and finish assertion cleanup
- clarify the predicate benchmark workload and cold-path audit evidence

BREAKING CHANGE: The minimum supported Rust version is now 1.97.0.
@acgetchell acgetchell self-assigned this Jul 14, 2026
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 46891a90-a13a-4744-b116-6cd6d5530916

📥 Commits

Reviewing files that changed from the base of the PR and between e734fe6 and b7c25ce.

⛔ Files ignored due to path filters (1)
  • papers/validation.pdf is excluded by !**/*.pdf
📒 Files selected for processing (8)
  • .github/workflows/audit.yml
  • .github/workflows/codacy.yml
  • .github/workflows/codeql.yml
  • .github/workflows/rust-clippy.yml
  • .github/workflows/semgrep-sarif.yml
  • docs/dev/tooling-alignment.md
  • papers/validation.bib
  • src/geometry/quality.rs
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/dev/tooling-alignment.md

Walkthrough

The repository’s MSRV and pinned toolchain move from Rust 1.96.0 to 1.97.0. Documentation, CI workflows, benchmarks, rustdoc links, assertions, Hilbert bit handling, bibliography metadata, and compatibility audit notes are updated.

Changes

Rust 1.97 MSRV and audit

Layer / File(s) Summary
MSRV configuration and audit documentation
AGENTS.md, Cargo.toml, rust-toolchain.toml, clippy.toml, README.md, justfile, docs/dev/tooling-alignment.md
Repository configuration and documentation now specify Rust 1.97.0, with updated tooling references, coverage policy, and Rust 1.97 audit results.
Centered predicate benchmark workload
benches/cold_path_predicates.rs
The benchmark uses centered queries around the simplex circumsphere instead of the previous near-boundary fixture.
Rust compatibility and validation cleanup
src/core/algorithms/pl_manifold_repair.rs, src/core/util/hilbert.rs, src/geometry/quality.rs, src/topology/..., src/lib.rs, src/core/vertex.rs
Tests, assertions, rustdoc links, Hilbert mask derivation, error formatting, and quality-metric expectations are updated.
CI and bibliography maintenance
.github/workflows/*, papers/validation.bib
SARIF uploads use CodeQL action v4.37.0, cargo-audit failures are no longer ignored, and bibliography metadata is revised.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Possibly related issues

  • acgetchell/markov-chain-monte-carlo#104 — Both changes update a repository’s Rust MSRV and associated Rust 1.97 compatibility audit.

Possibly related PRs

Suggested labels: documentation, rust, breaking change, bug, enhancement

Suggested reviewers: dependabot[bot]

Poem

A rabbit bounds where Rust winds blow,
One-seven-nine-seven starts the show.
Centered queries softly spin,
Fresh tests check the paths within.
CI guards the trail tonight.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly matches the main change: bumping the MSRV to Rust 1.97 for v0.8.0 as a breaking change.
Description check ✅ Passed The description directly describes the MSRV bump and related cleanup, so it matches the changeset.
Linked Issues check ✅ Passed The PR aligns with #496 by updating MSRV/tooling/docs, adopting the Hilbert helper, cleaning assertions, and documenting benchmark/audit results.
Out of Scope Changes check ✅ Passed No clearly unrelated changes are evident; the workflow, docs, benchmark, and test updates all support the Rust 1.97 MSRV bump.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 100.00%.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch build/496-rust-1.97-msrv

Comment @coderabbitai help to get the list of available commands.

@acgetchell acgetchell enabled auto-merge (squash) July 14, 2026 03:58
@codacy-production

codacy-production Bot commented Jul 14, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 8 complexity

Metric Results
Complexity 8

View in Codacy

🟢 Coverage 95.83% diff coverage · +0.03% coverage variation

Metric Results
Coverage variation +0.03% coverage variation (-1.00%)
Diff coverage 95.83% diff coverage

View coverage diff in Codacy

Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (e6e22f6) 80246 73097 91.09%
Head commit (b7c25ce) 80300 (+54) 73167 (+70) 91.12% (+0.03%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#523) 72 69 95.83%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@coderabbitai coderabbitai Bot added breaking change documentation Improvements or additions to documentation rust Pull requests that update rust code labels Jul 14, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/dev/tooling-alignment.md`:
- Around line 395-396: Update the stabilization-version wording in the
assert_matches! migration note from “Rust 1.95 cleanup” to “Rust 1.96 cleanup,”
leaving the rest of the documentation unchanged.

In `@README.md`:
- Line 126: Update the Rust version prerequisite wording in README.md to state
that the minimum supported version is declared in Cargo.toml, while the exact
toolchain is pinned by rust-toolchain.toml.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: d3c665ed-8407-4897-87b9-e204c34e1e19

📥 Commits

Reviewing files that changed from the base of the PR and between e6e22f6 and a2a414d.

⛔ Files ignored due to path filters (1)
  • papers/validation.pdf is excluded by !**/*.pdf
📒 Files selected for processing (14)
  • AGENTS.md
  • Cargo.toml
  • README.md
  • benches/cold_path_predicates.rs
  • clippy.toml
  • docs/dev/tooling-alignment.md
  • justfile
  • rust-toolchain.toml
  • src/core/algorithms/pl_manifold_repair.rs
  • src/core/util/hilbert.rs
  • src/core/vertex.rs
  • src/lib.rs
  • src/topology/ridge.rs
  • src/topology/spaces/spherical.rs

Comment thread docs/dev/tooling-alignment.md Outdated
Comment thread README.md Outdated
@codecov

codecov Bot commented Jul 14, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 95.83333% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 91.09%. Comparing base (e6e22f6) to head (b7c25ce).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
src/core/algorithms/pl_manifold_repair.rs 95.08% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #523      +/-   ##
==========================================
+ Coverage   91.06%   91.09%   +0.02%     
==========================================
  Files          88       88              
  Lines       80025    80079      +54     
==========================================
+ Hits        72878    72948      +70     
+ Misses       7147     7131      -16     
Flag Coverage Δ
unittests 91.09% <95.83%> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

- Clarify that Cargo.toml declares the MSRV while rust-toolchain.toml pins the repository toolchain.
- Cover typed PL-manifold repair errors, boundary candidate filtering, and invalid facet handles.
- Refresh the validation paper artifact used by the Papers workflow.
- enforce cargo-audit failures and refresh CodeQL action pins
- require valid mixed-scale geometry quality metrics
- align tooling documentation and scientific citation metadata
- regenerate the validation paper artifact
@coderabbitai coderabbitai Bot added bug Something isn't working enhancement New feature or request labels Jul 14, 2026
@acgetchell acgetchell disabled auto-merge July 14, 2026 06:26
@acgetchell acgetchell merged commit 9592849 into main Jul 14, 2026
22 checks passed
@acgetchell acgetchell deleted the build/496-rust-1.97-msrv branch July 14, 2026 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking change bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adopt Rust 1.97.0 as the v0.8.0 MSRV

1 participant