Releases: FastLED/fbuild
Releases · FastLED/fbuild
v2.2.3
What's Changed
- ci: update MSRV to Rust 1.94.1 by @zackees in #185
- ci: scope native release target cache by @zackees in #186
- Avoid duplicate native release builds by @zackees in #187
- Use GitHub App client ID for project sync token by @zackees in #188
- Support Digistump dtiny AVR framework by @zackees in #190
- build: stabilize zccache compile cwd by @zackees in #191
- build: normalize zccache compile paths by @zackees in #193
- build: centralize warm-build fast-path contract by @zackees in #196
- teensy: prefer local FastLED over framework FastLED by @zackees in #198
- esp32: default to native espflash with esptool fallback by @zackees in #197
Full Changelog: v2.2.1...v2.2.3
v2.2.1
What's Changed
- Fix PyPI trusted publisher environment by @zackees in #173
- Allow PyPI release retry after partial publish by @zackees in #174
- Add native build artifact attestations by @zackees in #175
- docs: record soldr build benchmark by @zackees in #177
- Fix Teensy builds with GCC 11 toolchain by @zackees in #180
- Instrument ESP32 framework library build tail by @zackees in #179
- test: cover mtime-stable watch fingerprints by @zackees in #178
- Use setup-soldr in CI workers by @zackees in #184
- Remove Rust tool wrapper shims by @zackees in #182
Full Changelog: v2.2.0...v2.2.1
v2.2.0
What's Changed
- Migrate bee features from main to rust-port: ESP32-C3, CDC boot warning, archive tests, VSCode extension by @Copilot in #11
- feat(rp2040): wire up RP2040/RP2350 build orchestrator by @zackees in #13
- feat(apollo3): add build orchestrator, toolchain, and board definitions by @zackees in #14
- update c32v003 by @zackees in #15
- ci: cross-build PyO3 extension for linux-aarch64 and macos-x86_64 by @zackees in #16
- ci: pin PyO3 extension glibc to 2.17 on linux-x86_64 by @zackees in #17
- feat(emulator): add EmulatorRunner abstraction and test-emu command by @zackees in #28
- docs(emulator): document test-emu command and emulator backends by @zackees in #30
- feat(cache): two-phase disk cache with LRU GC and SQLite index by @zackees in #29
- test(deploy): ESP32 family hardware-gated verify scaffolds (#19) by @zackees in #31
- ci: replace manual zccache pip setup with zackees/zccache action by @zackees in #33
- Add native extra_scripts flag runtime bridge by @zackees in #42
- Add native PlatformIO source filters and debug flag support by @zackees in #44
- fix(esp32c6): add missing build.variant to esp32-c6-devkitc-1 by @zackees in #47
- chore: bump version to 2.1.14, update zccache to >=1.2.11 by @zackees in #48
- feat(python): add reset_device() to SerialMonitor by @zackees in #52
- Route Rust toolchain trampolines through soldr by @zackees in #54
- Fix Windows response file temp ownership by @zackees in #55
- Honor forwarded PlatformIO config overrides by @zackees in #56
- Honor full JSON-RPC wait timeout by @zackees in #57
- fix(daemon): surface self-eviction blocker in logs (#51) by @zackees in #58
- feat(python): structured result API for daemon operations (#18) by @zackees in #59
- fix(daemon): tear down serial session on ws early-return (#51) by @zackees in #60
- feat(daemon): Windows console ctrl handler for graceful shutdown (#18) by @zackees in #61
- refactor(deploy): remove client-side firmware ledger (#18) by @zackees in #62
- feat(build): apply build_unflags to framework compile flags, ESP32 wired (#37) by @zackees in #63
- feat(build): wire build_unflags through all remaining platform compilers (#37) by @zackees in #64
- feat(python): reset_device(wait_for_output=True) — poll for boot output (#68) by @zackees in #69
- Document native extra_scripts support boundary by @zackees in #70
- perf(deploy): sector-selective write-flash on verify mismatch (#67) by @zackees in #71
- feat(python): AsyncSerialMonitor scaffold via pyo3-async-runtimes (partial #65) by @zackees in #73
- spike(deploy): add espflash crate + feasibility module (partial #66) by @zackees in #74
- feat(python): AsyncDaemon with async status() (partial #65) by @zackees in #78
- fix(deploy): preserve deploy outcome in response message by @zackees in #80
- fix(deploy): esptool v5 non-deprecated argv spellings by @zackees in #79
- docs: split README into decentralized docs (#81) by @zackees in #82
- perf(deploy): use espflash crate for verify-flash (partial #66) by @zackees in #89
- fix(daemon): set SO_LINGER 0 on accepted sockets to avoid CLOSE_WAIT leaks (partial #32) by @zackees in #87
- feat(python): async send_op + AsyncDaemonConnection (partial #65) by @zackees in #84
- feat(test-emu): add ESP32-C3 RISC-V QEMU support by @zackees in #90
- fix(python): remove stale _native extension from repo (#75) by @zackees in #83
- docs(board-status): collapse CI badge matrix behind
- fix(test): avoid powershell flake by spawning absolute-path cmd.exe (closes #95) by @zackees in #96
- perf(cli): strip Windows handle inheritance + fast daemon health probe (partial #91) by @zackees in #97
- fix(test): relax dev_mode_port assertion to match function contract (closes #88) by @zackees in #98
- perf(cli): drop redundant daemon banner + shorten self-eviction (closes #91) by @zackees in #99
- docs(ci): add CI_CACHING.md — save/restore design for CI runners (closes #92) by @zackees in #100
- feat(ci): reusable FastLED/fbuild/setup composite action (closes #101) by @zackees in #102
- fix(test): relax dev_mode_port assertion to match get_daemon_port contract by @zackees in #103
- fix(test-emu): fail-fast and corruption-aware avr8js npm cache by @zackees in #105
- perf(deploy): use espflash crate for write-flash (partial #66) by @zackees in #106
- feat(python): async WebSocket-backed AsyncSerialMonitor methods by @zackees in #107
- docs(perf): warm-pass build investigation + FBUILD_PERF_LOG instrumentation by @zackees in #109
- feat(ci): reusable setup composite action with fbuild-hash pinning (closes #101) by @zackees in #110
- feat(daemon): process containment via running-process (closes #32) by @zackees in #108
- perf(daemon): bridge tracing events to /ws/logs (partial #66) by @zackees in #111
- docs(perf): LOOP.md — warm-deploy agent loop spec by @zackees in #113
- chore: untrack LOOP.md and add to .gitignore by @zackees in #115
- perf(daemon): session-trusted verify-skip for ESP32 warm redeploys by @zackees in #116
- perf(daemon): sub-1s warm deploy — image-hash memo + refresh-skip window by @zackees in #118
- perf(build): in-memory watch-set fingerprint cache on the daemon by @zackees in #120
- feat(packages): .lnk resource pointers — fetch + verify + cache + materialize by @zackees in #119
- chore: bump version to 2.1.19 by @zackees in #125
- perf(daemon): FBUILD_WATCH_SET_CACHE_SECS env override by @zackees in #126
- perf(daemon): watch-set cache hit/miss telemetry by @zackees in #127
- perf(build): add fast-path fingerprint check to AVR orchestrator by @zackees in #128
- style: apply rustfmt to lnk pipeline files by @zackees in #131
- ci(security): add-to-project uses pull_request, tolerates missing App by @zackees in #132
- fix(packages): migrate older DiskCache schemas to add leases.refcount by @zackees in #133
- fix(build): P0 regression — Operation not permitted (os error 1) on warm build by @zackees in #134
- fix(ci): preserve exec bit on fbuild console script in wheel by @zackees in #135
- perf(build): extend watch-set fingerprint fast-path to AVR orchestrator by @zackees in #136
- chore(hooks): scope readme_guard to repo tree only by @zackees in #137
- chore: bump version to 2.1.20 — cuts CI-unblocking release (exec bit + warm-build P0) by @zackees in #138
- fix(build): drain subprocess pipes concurrently — unblocks ESP32-C6 CI by @zackees in #142
- fix(publish): S_IFREG on scripts + per-wheel verification + 2.1.21 bump by @zackees in #143
- fix(daemon): register test-emu endpoint OperationGuard and propagate exit code to CLI by @zackees in #140
- perf(deploy): make espflash a build-time-optional cargo feature by @zackees in #139
- fix(docs): repair broken intra-doc links under -D warnings by @zackees in #144
- Fix/publish script by @zackees in #145
- Integrate soldr into build workflows by @zackees in #153
- setup: expose zccache store path for consumer caches by @zackees in...