fix(ci): unblock Formatting + Documentation on main#255
Conversation
Two pre-existing failures on main since the loc-gate-refactor merge (#252) and the running-process-core 3.4 refactor (#254): **Formatting** — `cargo fmt --all` over the 16 files the rustfmt CI flagged. All changes are mechanical whitespace/trailing-comma adjustments; no semantic changes. **Documentation** — rustdoc `-D warnings` with `-D rustdoc::private-intra-doc-links` rejects `[`name`]` doc-link syntax that points at private modules. The LOC-gate split commits (boards.rs, esp32 deploy, stm32 orchestrator) left intra-doc-link references to their newly-private submodules, and my containment.rs + subprocess.rs additions in #254 added two more. Demote the link syntax to backticked plain text on: - `crates/fbuild-config/src/board/mod.rs` (loaders, methods, db) - `crates/fbuild-deploy/src/esp32/mod.rs` (verify, qemu, image, parse) - `crates/fbuild-deploy/src/esp32_native/write.rs` (super::progress) - `crates/fbuild-build/src/stm32/orchestrator/mod.rs` (arduino_mbed, framework_props, includes, variant_files) - `crates/fbuild-core/src/{containment,subprocess}.rs` (windows_job::assign, ContainedProcessGroup::spawn_with_containment) Tests: `cargo fmt --check` and `RUSTDOCFLAGS=-D warnings cargo doc --workspace --no-deps` both green. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
📝 WalkthroughWalkthroughThis PR applies systematic code formatting across the fbuild repository: consolidating multi-line import statements and let-bindings to single lines, reordering imports for consistency, and updating documentation comments to clarify module structures and implementation details. No functional behavior or public APIs are modified. ChangesCode Formatting and Documentation Refresh
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/fbuild-core/src/containment.rs (1)
101-106: 💤 Low valueOptional: Consider standardizing doc comment style.
Lines 101-104 use
//!(inner doc comments) while lines 105-106 use///(outer doc comments), but all six lines document thespawn_containedfunction below. For consistency, consider using///throughout this block since these are function-level docs, not module-level docs.This inconsistency pre-dates this PR (lines 101-102 were not modified), so it's purely an optional cleanup.
♻️ Proposed consistency fix
-//! **Windows**: spawn directly, then assign the child handle to a Job -//! Object with `JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE` -//! (via the private `windows_job::assign` helper) — the same containment -//! mechanism the pre-publication `running-process-core` rev used internally, +/// **Windows**: spawn directly, then assign the child handle to a Job +/// Object with `JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE` +/// (via the private `windows_job::assign` helper) — the same containment +/// mechanism the pre-publication `running-process-core` rev used internally, /// reimplemented locally since the published 3.4 API no longer exposes /// `spawn_with_containment(_, Containment::Contained)`.🤖 Prompt for 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. In `@crates/fbuild-core/src/containment.rs` around lines 101 - 106, The doc comment block above the spawn_contained function mixes inner (//!) and outer (///) doc comments; standardize them to outer doc comments for function-level documentation by replacing the //! lines (lines documenting the same text as the following ///) with /// so all six lines use /// and consistently document spawn_contained.
🤖 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.
Nitpick comments:
In `@crates/fbuild-core/src/containment.rs`:
- Around line 101-106: The doc comment block above the spawn_contained function
mixes inner (//!) and outer (///) doc comments; standardize them to outer doc
comments for function-level documentation by replacing the //! lines (lines
documenting the same text as the following ///) with /// so all six lines use
/// and consistently document spawn_contained.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 631f8c64-7802-4c2f-a337-ac056bc678d0
📒 Files selected for processing (21)
crates/fbuild-build/src/compile_database/tests/generate.rscrates/fbuild-build/src/compile_database/tests/serialization_and_write.rscrates/fbuild-build/src/esp32/orchestrator/build.rscrates/fbuild-build/src/esp32/orchestrator/framework_libs.rscrates/fbuild-build/src/esp32/orchestrator/local_libs.rscrates/fbuild-build/src/stm32/orchestrator/mod.rscrates/fbuild-cli/src/cli/dispatch.rscrates/fbuild-config/src/board/mod.rscrates/fbuild-config/src/board/tests.rscrates/fbuild-core/src/containment.rscrates/fbuild-core/src/subprocess.rscrates/fbuild-daemon/src/handlers/emulator/shared.rscrates/fbuild-daemon/src/handlers/emulator/tests_outcome.rscrates/fbuild-daemon/src/handlers/emulator/tests_process.rscrates/fbuild-deploy/src/esp32/deployer.rscrates/fbuild-deploy/src/esp32/mod.rscrates/fbuild-deploy/src/esp32/qemu.rscrates/fbuild-deploy/src/esp32/tests.rscrates/fbuild-deploy/src/esp32_native/tests.rscrates/fbuild-deploy/src/esp32_native/write.rscrates/fbuild-python/src/daemon_connection.rs
💤 Files with no reviewable changes (2)
- crates/fbuild-daemon/src/handlers/emulator/shared.rs
- crates/fbuild-deploy/src/esp32/deployer.rs
Patch release rolling up fixes and CI/dev-tooling cleanup since v2.2.3. User-facing ----------- - fix(teensy41): link `libarm_cortexM7lfsp_math` so Teensy Audio FFT examples (`Ports/PJRCSpectrumAnalyzer`) link cleanly (#258 / #257). First teensy41 CI green path since mid-April. Internal / CI / dev tooling --------------------------- - chore(deps): adopt upstream soldr/zccache/setup-soldr updates; `zccache-artifact` 1.4.0 -> 1.8; `zccache` PyPI >= 1.8.2; `profile = "minimal"` in rust-toolchain.toml; `prebuild-deps: none` workaround for the setup-soldr cargo-chef regression (#253). - refactor(fbuild-core): migrate to `running-process-core` 3.4 from crates.io, dropping the abandoned-branch git pin (#254). - fix(ci): unblock Formatting + Documentation on main after the loc-gate-refactor split (#255). - chore(dev-tools): drop `soldr` from `ci/dev-tools/pyproject.toml`; require a globally-installed `soldr` everywhere; `uv run soldr ...` is now actively rejected by the tool_guard hook (#256 / #251). Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
Two pre-existing failures on main since the loc-gate-refactor merge (#252) and the running-process-core 3.4 refactor (#254). Both are now blocking branch protection on every PR.
cargo fmt --allover the 16 files rustfmt flagged. Mechanical whitespace/trailing-comma adjustments; no semantic changes.rustdoc::private-intra-doc-links(implied by-D warnings) rejects[name]doc-link syntax pointing at private modules. The LOC-gate split PRs created several new private submodules whose parentmod.rsfiles still link to them as if they were public. Demoted those links to backticked plain text (with a note that the submodules are private internals).Files touched for Docs:
fbuild-config/src/board/mod.rs,fbuild-deploy/src/esp32/mod.rs,fbuild-deploy/src/esp32_native/write.rs,fbuild-build/src/stm32/orchestrator/mod.rs,fbuild-core/src/{containment,subprocess}.rs.Why not just make the modules
pubThe LOC-gate splits intentionally kept the implementation submodules private and re-exported only the public types from the parent
mod.rs. Making the submodulespubwould expose internal layout. Plain-text references preserve the original intent.Test plan
uv run soldr cargo fmt --all -- --check— cleanRUSTDOCFLAGS=-D warnings uv run soldr cargo doc --workspace --no-deps— clean (was 15 errors before)🤖 Generated with Claude Code
Summary by CodeRabbit
Style
Documentation