Adopt the Whitaker Dylint suite in the lint gate and CI - #10
Conversation
The doctest imported `mpsc-log::greet`, but hyphens are invalid in Rust paths, so `cargo test --doc` failed to compile the example. Use the crate's canonical module name, `mpsc_log`, instead.
The repository skeleton already ran the Whitaker Dylint suite from `make lint`, but CI pinned `whitaker-installer` to a git revision and built it from source with `cargo install --git`, caching the whole Whitaker installation. The estate rollout (see leynos/netsuke#410) standardizes on the released `whitaker-installer@0.2.5` from crates.io, fetched with `cargo binstall` and falling back to `cargo install --locked` where binstall is unavailable, with the cache keyed on the installer version and covering only the installer binary and the binstall download cache. Adopt that arrangement here: - Replace `WHITAKER_INSTALLER_REV` with `WHITAKER_INSTALLER_VERSION: '0.2.5'`. - Cache `~/.cargo/bin/whitaker-installer` and `~/.cache/cargo-binstall` under the standard version-keyed cache key, and run `whitaker-installer` on every job so the suite stays consistent with the pinned installer. - Keep the `--cranelift` installer flag, matching the toolchain's `rustc-codegen-cranelift-preview` component. - Mention Whitaker in the `lint` target's help text. The Dependabot-actor audit skip and scheduled audit workflow are deliberately untouched.
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 6 minutes Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fb07452871
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Pass WHITAKER_INSTALLER_VERSION to the run block through the shell
environment rather than inline `${{ env }}` template expansion, which
zizmor flags as a template-injection risk; the job-level `env:` block
already exports the variable. Add `--locked` to the cargo binstall
invocation so that its compile-from-source fallback resolves
dependencies from the published lockfile, keeping fallback builds
reproducible.
Summary
This pull request brings mpsc-log in line with the estate-wide Whitaker
Dylint rollout (see leynos/netsuke#410 and the pilot leynos/limela#12).
The repository skeleton already ran the suite from
make lint, but CIpinned
whitaker-installerto a git revision built from source. CI nowpins the released
whitaker-installer@0.2.5from crates.io, installedvia
cargo binstallwith acargo install --lockedfallback forrunners without binstall, and caches only the installer binary and the
binstall download cache under a version-keyed cache key. The
--craneliftinstaller flag is retained to match the toolchain'srustc-codegen-cranelift-previewcomponent, and thelinttarget'shelp text now mentions Whitaker. The Dependabot-actor audit skip and
the scheduled audit workflow are deliberately untouched.
A pre-existing doctest defect is fixed in a separate commit: the
greetexample importedmpsc-log::greet, which is not a valid Rustpath, so
cargo test --docfailed to compile.Review walkthrough
.github/workflows/ci.ymlreplaces the git-revision pin with
WHITAKER_INSTALLER_VERSION: '0.2.5', adopts the standard cache paths and key, and installs viabinstall with a source-build fallback.
Makefileupdates the
linthelp text to mention the Whitaker Dylint suite.src/lib.rscorrects the doctest import to
mpsc_log::greet.Validation
whitaker --all -- --all-targets --all-features(withRUSTFLAGS="-D warnings"): zero findings.make check-fmt lint typecheck test markdownlint nixie: all pass.mbake validate Makefile: valid syntax.whitaker-installerv0.2.5 wasconfirmed to be the latest crates.io release and to support the
--craneliftflag.