Skip to content

chore(deps): bump managed zccache 1.12.4 -> 1.12.7 - #596

Merged
zackees merged 1 commit into
mainfrom
chore/bump-zccache-1.12.7
Jun 15, 2026
Merged

chore(deps): bump managed zccache 1.12.4 -> 1.12.7#596
zackees merged 1 commit into
mainfrom
chore/bump-zccache-1.12.7

Conversation

@zackees

@zackeeszackees commented Jun 15, 2026

Copy link
Copy Markdown
Member

Picks up zackees/zccache#763 (version-namespaced cache root, closeszackees/zccache#762) plus 1.12.5/1.12.6 fixes.

Summary by CodeRabbit

  • Chores
    • Updated managed zccache version from 1.12.4 to 1.12.7, incorporating latest improvements and fixes from the upstream release.

Picks up zackees/zccache#763 (version-namespaced cache root, closeszackees/zccache#762 / #761 / #760 / #759) plus intervening 1.12.5 /
1.12.6 compile-path + observability fixes.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitaiBot commented Jun 15, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: eaea5463-1bc4-46e6-8e91-43197eec6a45

📥 Commits

Reviewing files that changed from the base of the PR and between 104560c and 40dcfbc.

📒 Files selected for processing (1)
  • crates/fbuild-build/src/managed_zccache.rs

📝 Walkthrough

Walkthrough

The pinned zccache version in managed_zccache.rs is bumped from 1.12.4 to 1.12.7. Both the exported MANAGED_ZCCACHE_VERSION constant and the internal RELEASE_TAG string used to build the GitHub release download URL are updated to the new version.

Changes

zccache version bump

Layer / File(s)Summary
Version constant update
crates/fbuild-build/src/managed_zccache.rs
MANAGED_ZCCACHE_VERSION and RELEASE_TAG updated from "1.12.4" to "1.12.7", keeping the download URL and the exported version constant in sync.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

  • FastLED/fbuild#575: Identical change pattern — bumps MANAGED_ZCCACHE_VERSION and RELEASE_TAG in the same file to a prior 1.12.x version.
  • FastLED/fbuild#579: Also updates the same two version constants in managed_zccache.rs to a newer 1.12.x value.
  • FastLED/fbuild#572: Introduced the managed zccache download logic with an initial pinned version in the same file.

Poem

🐇 Hippity hop, a version goes up,
From four to seven, refilling the cup!
MANAGED_ZCCACHE_VERSION now reads 1.12.7,
The RELEASE_TAG matches — it's coding heaven.
Three little bumps and the cache runs just right,
This bunny ships versions with fluffy delight! 🌟

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title accurately describes the main change: bumping the managed zccache version from 1.12.4 to 1.12.7, which is the sole focus of this pull request.
Linked Issues check✅ PassedThe PR implements the primary objective from linked issue #762: picking up the fix for #761 Phase 0 that establishes version-namespaced cache state, addressing the design-level root cause of the entire daemon version-shadow bug chain.
Out of Scope Changes check✅ PassedThe changes are narrowly scoped to bumping the zccache version constant, directly aligned with the PR's stated objective and linked issues, with no extraneous modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ 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 chore/bump-zccache-1.12.7

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.

❤️ Share

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

@zackees
zackees merged commit 638c868 into mainJun 15, 2026
88 of 91 checks passed
@zackees
zackees deleted the chore/bump-zccache-1.12.7 branch June 15, 2026 23:29
zackees added a commit that referenced this pull request Jun 15, 2026
Ships the managed zccache bump to 1.12.7 (#596), picking up
zackees/zccache#763's version-namespaced cache root.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
zackees added a commit that referenced this pull request Jun 16, 2026
…onitor in_waiting/reset_input_buffer (#606)
* feat(serial): #605 Phase 0 — Deployer::post_deploy_recovery + SerialMonitor in_waiting/reset_input_buffer
Phase 0 of the deprecation-of-client-pyserial work from #605.
Lays the trait + protocol seam that Phase 1 will rewire FastLED-side
clients onto. Phase 1 (9-site FastLED autoresearch sweep + tool_guard
ban_client_pyserial + FbuildSerialAdapter) tracked separately.
What this PR does:
* Add `post_deploy_recovery` as a default method on the existing
`Deployer` trait (`crates/fbuild-deploy/src/lib.rs`). The default
impl is the 3-second 100ms fast-poll lifted verbatim from the
daemon's deploy handler — behavior is unchanged for every existing
deployer. Override seam left for the planned LPC + CMSIS-DAP
wedge-recovery (TODO comment near the impl).
* Wire `crates/fbuild-daemon/src/handlers/operations/deploy.rs` to
call `deployer.post_deploy_recovery(port)` instead of the inline
fast-poll. Closure now returns `Option<Box<dyn Deployer>>` so the
verify-skip early-return paths can pass `None` (no recovery needed
when no flash actually happened).
* Add `SerialMonitor.in_waiting` getter + `reset_input_buffer()`
method to the PyO3 binding. They speak two new WebSocket messages
to the daemon (`GetInWaiting` → `InWaiting { count }`, and
`ClearBuffer`) handled inline in the existing `/ws/serial-monitor`
loop. `in_waiting` returns the per-client broadcast queue depth;
`reset_input_buffer` drains that queue. Maps to pyserial's
`Serial.in_waiting` / `Serial.reset_input_buffer()` (modulo
bytes-vs-lines).
* Add architectural-commitment row to `CLAUDE.md` declaring
`Deployer::post_deploy_recovery` as the seam and `SerialMonitor`
as the only blessed client serial path.
* Tests: trait dispatch test (override is called through Box<dyn>),
default-impl bounded-runtime test, message-roundtrip tests for
`ClearBuffer` / `GetInWaiting` / `InWaiting`.
Out of scope (Phase 1, tracked):
* `_pyserial_dtr_reset` site sweep in FastLED `ci/autoresearch/`
* `ban_client_pyserial` rule in FastLED `tool_guard.py`
* `FbuildSerialAdapter` in FastLED `ci/util/serial_interface.py`
* Windows `CM_Reenumerate_DevNode` LPC-specific override
* `probe_open()` method (issue author marked optional)
Closes#605
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* fix(ci): #605 trim deploy.rs under LOC gate + rustfmt fixes
Round-1 CI fixes for PR #606:
* `deploy.rs` was 1017 LOC (over the 1000-line gate). Trimmed verbose
comments in the post-deploy recovery dispatch block — the architectural
rationale already lives on the trait method itself in fbuild-deploy.
Down to 996 LOC.
* `cargo fmt` was failing on the new code in `fbuild-deploy/src/lib.rs`
(post_deploy_recovery test) and `fbuild-python/src/serial_monitor.rs`
(in_waiting let bindings). Re-formatted.
Lint subprocess spawns check is pre-existing across all recent merged
PRs (#595, #596, #597, #599, #602) — not introduced by this PR.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

[META] daemon version-shadow chain: #761 (design) -> #760 (bug) -> #759 (symptom)

1 participant

@zackees