J. Nick Koston
2fa702b7b2
Merge branch 'esp8266-native-parallel-extract' into espidf-parallel-tool-extract
2026-08-28 13:52:02 -05:00
J. Nick Koston
ade078a7f6
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-28 13:52:00 -05:00
J. Nick Koston
4333870590
[core] Use uv for the ESP-IDF Python environment when available ( #18838 )
2026-08-28 13:43:48 -05:00
J. Nick Koston
d09e0e3f6f
Skip unverifiable archives and count distinct tools
2026-08-27 21:24:40 -05:00
J. Nick Koston
f7b30d6b85
Count prefetched archives when skipping the parallel pass
2026-08-27 21:07:02 -05:00
J. Nick Koston
7ecb9d3b73
Print per-tool completion during parallel extraction
2026-08-27 20:09:58 -05:00
J. Nick Koston
1fe3475f18
Polish pre-extraction failure reporting
2026-08-27 20:02:20 -05:00
J. Nick Koston
083c35bccd
Cancel queued extractions on interrupt and name cached archives
2026-08-27 19:21:20 -05:00
J. Nick Koston
ce15f9a331
Verify pre-existing tool archives and escalate surviving torn dirs
2026-08-27 19:21:20 -05:00
J. Nick Koston
9ea429f0ef
Clean torn tool dirs and escalate total pre-extraction failure
2026-08-27 19:21:20 -05:00
J. Nick Koston
aaafc1753a
Share tool resolution between the idf_tools helper scripts
2026-08-27 19:21:20 -05:00
J. Nick Koston
c1c9408035
Extract prefetched ESP-IDF tool archives in parallel
2026-08-27 19:21:19 -05:00
J. Nick Koston
3ecd4e3e69
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 22:06:04 -05:00
J. Nick Koston
2104096f02
[core] Prefetch PlatformIO packages in parallel ( #18769 )
2026-08-27 14:42:30 +12:00
J. Nick Koston
68f2dc3219
Gate the ccache sloppiness on emission for the IDF backend too
2026-08-26 10:03:26 -05:00
J. Nick Koston
a7e4cf536b
Drop duplicate ccache test, keep full compiler output at debug, guard empty compile-DB directory
2026-08-25 20:43:37 -05:00
J. Nick Koston
7ff56c62f9
[core] Add shared registry, ninja, and cache infrastructure for native toolchains ( #18570 )
2026-08-26 13:23:16 +12:00
J. Nick Koston
81bca96e1b
Run the gch compile from its resolution dir, self-clean when disabled, log the opt-out hint, pin the knob in tests
2026-08-25 18:54:48 -05:00
J. Nick Koston
278abf2771
Treat pch spawn errors as transient, keep user force-includes, fold command into checksum
2026-08-25 15:53:54 -05:00
J. Nick Koston
88bcb7ff03
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 15:29:16 -05:00
J. Nick Koston
da046a9886
Assert the forced-on working-ccache case emits no warning at all
...
The 'Not decoded' escape hatch could only mask a regression; assert the
captured records directly instead.
2026-08-25 15:16:54 -05:00
J. Nick Koston
d3f6cbe14a
Patch the direct ccache probe in the usable-binary test
2026-08-25 14:06:32 -05:00
J. Nick Koston
a6c4c46930
Merge branch 'esp8266-native-pch' into esp32-idf-pch
...
# Conflicts:
# esphome/espidf/framework.py
2026-08-25 14:04:35 -05:00
J. Nick Koston
95ea7b954c
Probe forced-on ccache directly so the warnings cannot contradict, carry the traceback on unexpected prefetch failures
2026-08-25 14:03:44 -05:00
J. Nick Koston
b08615f92f
Merge remote-tracking branch 'origin/esp32-idf-pch' into esp32-idf-pch
2026-08-25 13:50:13 -05:00
J. Nick Koston
8625e02b8e
Cover the remaining pch branches
2026-08-25 13:50:01 -05:00
J. Nick Koston
465222a372
Cover the forced-on working-ccache path, pin both marker-probe arms
2026-08-25 13:46:16 -05:00
J. Nick Koston
a3194aa0f2
Split the forced-on ccache warning by cause, cover the marker re-check
2026-08-25 13:34:29 -05:00
J. Nick Koston
9caeb948f3
Warn when forced-on ccache has no usable binary, skip freshly installed dests in the prefetch, derive the clean-all sandbox from the cache registry
2026-08-25 13:20:30 -05:00
J. Nick Koston
ed369ae353
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-25 12:39:02 -05:00
J. Nick Koston
688e833413
[core] Consolidate HTTP download paths ( #18742 )
2026-08-25 12:38:20 -05:00
J. Nick Koston
19866c60ee
[core] Parallelize registry and tool downloads ( #18662 )
2026-08-24 15:59:00 -05:00
J. Nick Koston
0e9a08a3b5
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-23 18:45:14 -05:00
J. Nick Koston
69d997521f
Guard the bar writes, narrow the cache probe, make a total prefetch failure loud
2026-08-23 18:45:02 -05:00
J. Nick Koston
55323596a9
Resolve registry metadata once, canonicalize the ccache knob, disable on an empty value
...
registry_download memoizes per process (failures uncached), so the
prefetch and the install share one metadata round-trip per package.
The idf ccache env always hands idf.py exactly one canonical spelling:
the no-ccache path exports 0 so an unparsable inherited value or a
probe-rejected shim cannot enable it, the enabled path exports 1
whatever accepted spelling arrived, and forced-on still runs the
resolver for its no-binary warning. An empty env value keeps its
historical disable meaning instead of falling to the default policy.
2026-08-23 14:17:29 -05:00
J. Nick Koston
485725d734
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-23 13:09:54 -05:00
J. Nick Koston
9d761102e5
Size the prefetch from the registry, fold the batch API, guard the prefetch
...
The registry response already carries each package file's size, so the
combined bar is sized from URLSource instead of a HEAD sweep; the probe,
its all-or-nothing fallback, and its duplicate Content-Length parsing are
gone, and archives without a reported size simply stay on the sequential
path. run_batch_downloads now takes (name, size, fetch) jobs and builds
the (now private) progress bar itself, collecting failures from future
results instead of a shared list; both call sites use functools.partial
instead of lambda factories. The prefetch touches only URLSource, so the
progress parameter comes off Source/Git/Local/ConvertedLibrary, and the
wave prefetch is wrapped best-effort like its ESP-IDF twin, which also
dedupes by dest only after the verifiability check. ProgressBar.done()
itself now skips the newline when no frame was drawn or the 100% frame
already ended the line, collapsing the batch wrapper's guard and fixing
the stray blank line after OTA uploads.
2026-08-23 13:08:32 -05:00
J. Nick Koston
187df36971
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-23 12:05:11 -05:00
J. Nick Koston
ea3ff0e372
Abort in-flight batch downloads on Ctrl-C, make the deferral test hermetic
...
cancel_futures only drops queued jobs, and the non-daemon workers are
joined at interpreter exit, so a Ctrl-C during the ESP-IDF toolchain
fetch waited out every in-flight archive. The tracker each job reports
through now checks a cancellation flag set when the wait raises, so
downloads abort at their next progress tick and the resumable .part
files keep the bytes already fetched.
The wave-deferral test stubs _content_lengths instead of issuing real
HEAD requests that passed only by failing, the dead hasattr branch in
the HEAD-probe test is gone, and the .C suffix comment names the SCons
divergence instead of claiming parity.
2026-08-23 12:04:49 -05:00
J. Nick Koston
a1d0713a54
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-22 22:58:48 -05:00
J. Nick Koston
35bb8388a2
Defer superseded wave downloads, dedupe tool dests, validate captured buckets, right-size the log levels
2026-08-22 22:58:44 -05:00
J. Nick Koston
a1e6370e8b
[core] Harden the shared library converter and download registry archives in parallel
2026-08-22 21:59:19 -05:00
J. Nick Koston
5c30acfe5b
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-22 21:12:39 -05:00
J. Nick Koston
d6d80ee323
Consolidate the batch-download scaffold, share the idedata error set, dedupe compdb tokenizing
2026-08-22 21:12:20 -05:00
J. Nick Koston
bf0a4ea40f
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-22 20:01:31 -05:00
J. Nick Koston
2acba9b364
Materialize the tracker mock before the prefetch threads race its creation
2026-08-22 20:01:13 -05:00
J. Nick Koston
3697401bc7
Serialize prefetch downloads on the install lock; export the canonical ccache off spelling
2026-08-22 19:32:10 -05:00
J. Nick Koston
e63d995d1f
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-22 17:10:23 -05:00
J. Nick Koston
bff8bea83e
Degrade garbage Content-Length probes; never prefetch an unverifiable tool archive
2026-08-22 17:10:19 -05:00
J. Nick Koston
4cbfdd3200
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
...
# Conflicts:
# tests/unit_tests/test_framework_helpers.py
2026-08-22 15:21:01 -05:00