J. Nick Koston
52879b8a7f
Skip the doomed gch compile after header-generation failure, self-heal the placeholder from CMake
2026-08-27 13:43:36 -05:00
J. Nick Koston
330adb9ba4
Cover the placeholder-touch failure path
2026-08-27 12:53:06 -05:00
J. Nick Koston
17d1874ca3
Degrade on header-generation failure, surface probe and touch errors
2026-08-27 12:38:42 -05:00
J. Nick Koston
cf084bc70f
Share the CMake pch consumer block, apply review suggestions
2026-08-27 10:53:26 -05:00
J. Nick Koston
87cbe42cae
Blame the baseline honestly, split sidecar unlinks, pin the script's knob and import branches
2026-08-27 09:13:51 -05:00
J. Nick Koston
8a5d53899c
Simplify: strict knob via parse_enable_env, one probe tail, latch folded into _fail, discard owns its policy
2026-08-27 08:40:35 -05:00
J. Nick Koston
3e5688d6cd
Blame the pch only when a baseline passes, validate the strict knob, abort on an undiscardable stale header
2026-08-27 08:32:01 -05:00
J. Nick Koston
5d690104b5
Strict fails on a disabled pch, narrows the projenv exemption, and covers the new funnel sites
2026-08-26 22:51:53 -05:00
J. Nick Koston
264ccc0989
Add ESPHOME_PCH_STRICT and enforce it in the esp8266/esp32/rp2 image compile tests
2026-08-26 22:29:53 -05:00
J. Nick Koston
c97250508a
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 14:23:20 -05:00
J. Nick Koston
3dd608cffc
Use a drive-qualified basedir in the test on Windows
2026-08-26 14:23:16 -05:00
J. Nick Koston
50c9a3a5bb
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 14:14:02 -05:00
J. Nick Koston
1d4d28832e
Reject relative CCACHE_BASEDIR values too
2026-08-26 14:13:57 -05:00
J. Nick Koston
1719e75e57
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 13:21:25 -05:00
J. Nick Koston
26e51c23b1
Hoist is_joined_include, cover the falsy EXTSUM warning
2026-08-26 13:21:21 -05:00
J. Nick Koston
35ab90fc58
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 13:14:11 -05:00
J. Nick Koston
6530bb62f8
Stat-aware local walk, atomic flag+env application, guard degenerate basedir and -include- flags
2026-08-26 13:14:03 -05:00
J. Nick Koston
b497ff17a7
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 11:58:36 -05:00
J. Nick Koston
3730f7bbae
Distinguish stat failure from absence, fail closed on unmodelable flags and unreadable local headers
2026-08-26 11:58:20 -05:00
J. Nick Koston
0ba8e3d83e
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 10:44:32 -05:00
J. Nick Koston
d0263b0bef
Mirror the joined -include fold, harden the probe, fail closed on unreadable closure headers
2026-08-26 10:44:17 -05:00
J. Nick Koston
c7fb26a6d1
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 10:01:27 -05:00
J. Nick Koston
410a3868ea
Gate the ccache sloppiness on the pch actually being emitted
2026-08-26 10:00:59 -05:00
J. Nick Koston
3a483e3284
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-26 00:46:31 -05:00
J. Nick Koston
f5593deb38
Warn and skip the pch when a user -include precedes it, walk angle includes, read sidecars defensively
2026-08-26 00:46:14 -05:00
J. Nick Koston
eb28f2630a
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 23:02:56 -05:00
J. Nick Koston
10204c6bd9
Surrogateescape the digest extras, keep absolute force-includes consumer-only
2026-08-25 23:02:43 -05:00
J. Nick Koston
f4003969ba
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 20:56:13 -05:00
J. Nick Koston
73cc3af130
Union sloppiness tokens on the PlatformIO path too, survive non-UTF-8 include names
2026-08-25 20:56:00 -05:00
J. Nick Koston
0c5cad19dc
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 19:59:34 -05:00
J. Nick Koston
c419fc4bbc
Skip the pch when a header identity is unknown, union missing sloppiness tokens, report projenv import failures
2026-08-25 19:59:25 -05:00
J. Nick Koston
9faddeb0bc
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 19:08:34 -05:00
J. Nick Koston
9636717b32
Warn on unresolvable force-includes and pch_defines-less sloppiness, vary the unreadable marker
2026-08-25 19:08:21 -05:00
J. Nick Koston
c5c7b598c9
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 17:45:02 -05:00
J. Nick Koston
564f3e31c1
Harden idedata -include anchoring, probe exit check, package identity, and failure diagnostics
2026-08-25 17:44:54 -05:00
J. Nick Koston
743f1dcb09
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 16:20:06 -05:00
J. Nick Koston
a4a8c77151
Resolve idedata force-include paths, test probe rejection and env scoping, derive clean names
2026-08-25 16:19:29 -05:00
J. Nick Koston
ce37667b1d
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 15:05:08 -05:00
J. Nick Koston
fae9eb0dd2
Hash project-local include dirs into the pch checksum and share the registration gate
2026-08-25 15:04:55 -05:00
J. Nick Koston
078e918bdb
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 14:29:10 -05:00
J. Nick Koston
6ab93051b7
Address review: order-covering checksum, loud degraded states, script tests
2026-08-25 14:28:57 -05:00
J. Nick Koston
337ecfb8f9
Select the pch TU by source path, expand response files, and key the failure marker on the command
2026-08-25 13:58:34 -05:00
J. Nick Koston
f866f878de
Merge branch 'esp8266-native-pch' into esp32-idf-pch
2026-08-25 13:44:47 -05:00
J. Nick Koston
7f6a007d27
Add direct tests for the shared pch helpers
2026-08-25 13:44:24 -05:00
J. Nick Koston
71cf6049aa
[esp32] Precompile the shared core headers for src compiles
2026-08-25 13:33:56 -05:00
J. Nick Koston
3280248778
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-23 16:25:26 -05:00
J. Nick Koston
dceeee69d3
Restore the size summary to its dev shape
...
The defensive spiral (#18668 , closed) guarded inputs that cannot occur:
gen_esp32part validates partitions.csv before a build can succeed, and
esp_idf_size.json's realistic failures do not produce the handled
shapes. This PR's real change stands alone again: the bar moves to
build_helpers as print_size_line, with dev behavior everywhere else.
2026-08-23 16:25:11 -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
e660c126f8
Merge branch 'esp8266-native-toolchain-plumbing' into esp8266-native-build-infra
2026-08-23 10:48:53 -05:00
J. Nick Koston
e681c441d9
Close the residual idedata and size-summary silent-failure findings
...
A list-of-non-dicts compile DB now raises by name inside the best-effort
tuple. The launcher rejection moved into parse_entry itself so no caller
can record ccache as the compiler, and the shape key includes the entry's
directory since relative includes resolve against it. format_bar raises
on a non-positive total so every consumer must handle the meaningless
bar; the espidf summary validates the RAM region by name (a malformed
region can no longer suppress a computable Flash line) and the blanket
backstop logs the traceback at debug. A new test pins that the CI
trigger paths exist on disk, so a rename fails loudly.
2026-08-23 10:48:39 -05:00