Skip to content

Set edition, rust-version and lints once, at the workspace root - #15

Merged
GeEom merged 1 commit into
mainfrom
gate-v217
Oct 29, 2026
Merged

GeEom merged 1 commit into
mainfrom
gate-v217

Conversation

@GeEom

@GeEom GeEom commented Oct 27, 2026 •

Copy link
Copy Markdown
Owner

The manifest becomes a workspace of one:

  • [workspace.package] holds the edition and the promised rust-version (1.95), and [workspace.lints] holds the lint table.
  • The crate inherits all three, so a toolchain change moves one line.
  • tools/ is excluded from the workspace, so accuracy-bench stays a standalone crate.

The lint table also denies unsafe_op_in_unsafe_fn, undocumented_unsafe_blocks, multiple_unsafe_ops_per_block and iter_over_hash_type. None fires: the crate has no unsafe code and no hash collections.

[package.metadata.check] no_panic_coverage = ["src/ops"] records which code the no-panic proof must cover. Every public function there carries #[no_panic] and is called from the verify_no_panic binary, and all 26 do. Cargo ignores the table.

The published package is unchanged, since cargo resolves inherited edition and rust-version when packaging.

@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

The manifest becomes a workspace of one. [workspace.package] holds the
edition and the promised rust-version, [workspace.lints] holds the lint
table, and the crate inherits all three, so a toolchain change moves one
line. tools/ is excluded, so accuracy-bench stays a standalone crate.

The lint table also denies unsafe_op_in_unsafe_fn, undocumented_unsafe_blocks,
multiple_unsafe_ops_per_block and iter_over_hash_type. None of them fires:
the crate has no unsafe code and no hash collections.

[package.metadata.check] no_panic_coverage = ["src/ops"] records which code
the no-panic proof must cover: every public function there carries
#[no_panic] and is called from the verify_no_panic binary. All 26 do. Cargo
ignores the table, and the published package is unchanged.
@GeEom GeEom changed the title Gate v2.17.0: one manifest shape, and no-panic coverage as a gate step Set edition, rust-version and lints once, at the workspace root Oct 27, 2026
@GeEom
GeEom merged commit 470f211 into main Oct 29, 2026
12 checks passed
@GeEom
GeEom deleted the gate-v217 branch October 29, 2026 06:17
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.

2 participants