ci: add lint and security-audit jobs#47
Merged
Merged
Conversation
Apply cargo fmt across src/ and tests/ so the new CI fmt gate starts green. No behavioural change. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Add a parallel lint job (cargo fmt --check + clippy -D warnings, with the clippy and rustfmt components requested on the toolchain) and a security job running rustsec/audit-check over the dependency tree. The lint job uses its own cache key so a style nit and a test failure stay separable. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
74524bc to
e7eefa5
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR strengthens the project’s CI pipeline by adding dedicated linting and dependency security-audit jobs, and applies cargo fmt formatting across the codebase/tests so the new formatting gate passes immediately.
Changes:
- Add a Lint CI job running
cargo fmt --checkandcargo clippy -D warnings. - Add a Security audit CI job running
rustsec/audit-checkagainst the dependency tree. - Apply
cargo fmt-driven formatting updates acrosssrc/andtests/(no behavioral changes intended).
Reviewed changes
Copilot reviewed 46 out of 46 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/ci.yml | Adds separate lint and RustSec audit jobs alongside existing tests. |
| src/main.rs | Formatting-only changes (imports, multiline formatting). |
| src/cli.rs | Formatting-only changes to clap attribute layout. |
| src/report.rs | Formatting-only changes in format_outcome and its unit tests. |
| src/core/mod.rs | Formatting-only re-export ordering. |
| src/core/executor.rs | Formatting-only change to trait method signature layout. |
| src/core/file_error.rs | Formatting-only struct initialization layout. |
| src/core/comparisons/comparator.rs | Formatting-only test/layout changes; no logic change. |
| src/core/values/value.rs | Formatting-only changes in parsing logic/tests. |
| src/engine/mod.rs | Formatting-only re-export ordering. |
| src/engine/parser.rs | Formatting-only changes in struct construction/tests. |
| src/engine/report.rs | Formatting-only changes in tests. |
| src/engine/executor.rs | Formatting-only refactor of formatting/line breaks; no dispatch logic change. |
| src/text/value/functions.rs | Formatting-only function signature layout. |
| src/text/value/executor.rs | Formatting-only import/function layout. |
| src/text/length/executor.rs | Formatting-only import/function layout. |
| src/file/exists/executor.rs | Formatting-only import/function layout. |
| src/file/empty/executor.rs | Formatting-only import/function layout. |
| src/file/lines/executor.rs | Formatting-only import/function layout. |
| src/file/size/executor.rs | Formatting-only import/function layout. |
| src/file/compression/functions.rs | Formatting-only changes in value wrappers/classification/tests. |
| src/file/compression/executor.rs | Formatting-only changes in import/function layout. |
| src/delimited/functions.rs | Formatting-only changes in tests. |
| src/delimited/line_count/executor.rs | Formatting-only import/function layout. |
| src/delimited/column_count/functions.rs | Formatting-only changes around read/parse expression and tests. |
| src/delimited/column_count/executor.rs | Formatting-only import/function layout. |
| src/delimited/column_all/functions.rs | Formatting-only change in enum construction layout. |
| src/delimited/column_all/executor.rs | Formatting-only changes in parsing/execution/test layout. |
| src/delimited/cell/functions.rs | Formatting-only error construction layout. |
| src/delimited/cell/executor.rs | Formatting-only changes in parsing/execution/test layout. |
| src/bam/functions.rs | Formatting-only cache insert and test assertion layout. |
| src/bam/count/executor.rs | Formatting-only import/function layout. |
| src/bam/header/executor.rs | Formatting-only parsing/execution/result layout. |
| src/bam/read_group/executor.rs | Formatting-only execution/result layout. |
| src/fasta/functions.rs | Formatting-only cache insert and tests. |
| src/fasta/count/executor.rs | Formatting-only import/function layout. |
| src/fasta/sequence/executor.rs | Formatting-only parsing/execution/result/test layout. |
| tests/assert_subcommand_test.rs | Formatting-only (multiline args/asserts). |
| tests/bam_subcommand_test.rs | Formatting-only (multiline args/asserts). |
| tests/cli_flags_test.rs | Formatting-only (multiline asserts). |
| tests/conditional_subcommand_test.rs | Formatting-only (multiline args/snapshots/asserts). |
| tests/fasta_subcommand_test.rs | Formatting-only (multiline args/snapshots/asserts). |
| tests/file_compression_test.rs | Formatting-only (multiline args/asserts). |
| tests/report_test.rs | Formatting-only (multiline args/asserts). |
| tests/resource_subcommand_test.rs | Formatting-only (multiline snapshot call). |
| tests/run_subcommand_test.rs | Formatting-only (multiline write/snapshot call). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Merged
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.
What
Extends CI beyond
cargo testwith two new jobs:cargo fmt --all -- --checkandcargo clippy --all-targets --all-features -- -D warnings. The toolchain step requests theclippyandrustfmtcomponents, and the job uses its own cache key so a formatting nit and a test failure stay reported separately.rustsec/audit-checkover the dependency tree (104 crates incl. thenoodlesstack), flagging RUSTSEC advisories.A preceding commit runs
cargo fmtacrosssrc/andtests/(46 files) so the new fmt gate starts green. That commit is formatting only, no behavioural change.Verified locally
cargo fmt --all -- --checkcleancargo clippy --all-targets --all-features -- -D warningscleancargo testgreenThe
cargo auditadvisory scan was not pre-checked locally (cargo-audit not installed); it runs first on the CI runner.Notes
Deliberately left out for a project this size: MSRV matrix, multi-OS matrix (Linux test + Docker + release-binaries already cover platforms), and a
cargo docgate.🤖 Generated with Claude Code