Repository navigation
feat(esp32): record requested framework and integration mode in the package summary (#1664) - #1766
Merged
Merged
Conversation
…ackage summary #1664 asks that ESP framework selection be explicit. #1730 already rejects a bare `framework = espidf`, but the build metadata still reported only the package pins, so a build log could not be read as either `arduino` or `arduino, espidf`. The ESP32 package stack summary now records, next to the resolved stack: - `framework=` - the environment's requested `framework =` value (`<board default>` when the key is absent) - `framework_pin=` - the requested `platform_packages` framework pin (previously reported, mislabelled, as `framework=`) - `integration=` - `arduino-core` or `arduino-on-idf`, derived from the same parser `reject_unsupported_esp_framework` uses, so the two cannot drift No fingerprint metadata field changed, so warm caches are not invalidated. Tests: `requested_frameworks_parses_single_and_dual_requests` and `stack_summary_records_requested_framework_and_integration_mode`.
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
#1664 asks that ESP framework selection be explicit: an
environment must build what it asked for, or be rejected with a precise error,
and the build metadata must say which integration mode actually ran.
#1730 landed the rejection half (a bare
framework = espidfnow fails beforeany build work, and
arduino, espidfwarns that it is an Arduino-on-IDF build).The metadata half was still missing: the ESP32 package stack summary reported
the package pins only, under a
framework=label, so a reader could not tellwhether the environment requested
arduinoorarduino, espidf, nor whichintegration mode the build used.
What changed
One build-log line, extended additively:
framework=— the environment's requestedframework =value(
<board default>when the key is absent). This is the field fix(esp): honor or reject IDF framework requests instead of silently building Arduino #1664 calls therequested framework.
framework_pin=— the requestedplatform_packagesframework pin. This iswhat the old line mislabelled as
framework=; the requested side is not readby any parser (only the
; resolvedsegment is, inbench/fastled-examples), so renaming it is safe.integration=—arduino-coreorarduino-on-idf, derived from the sameparser
reject_unsupported_esp_frameworknow uses, so the warning/rejectionpath and the metadata can never disagree.
The effective framework remains the
resolved … framework=name@versionpair,now unambiguous against the requested value.
No
build_fingerprint.jsonfield changed, so existing warm caches are notinvalidated by this PR.
Acceptance criteria from #1664
framework = espidfandarduino, espidf(fix(esp32): reject framework = espidf instead of silently building Arduino (#1664) #1730) plus newcoverage for the recorded metadata.
integration=arduino-on-idflabel both say the opposite.Tests
New:
requested_frameworks_parses_single_and_dual_requests— single, dual, reordered/spaceddual and bare
espidf(unsupported ⇒ no integration mode).stack_summary_records_requested_framework_and_integration_mode— dual request recordsframework=arduino, espidf,integration=arduino-on-idf, the pin, and the resolved stack;a default environment records
framework=<board default>,integration=arduino-core.Gates on
0b0053ea:Left unmerged for the owner, per the steward merge policy.