Keep upstream LVGL out of the C format check's scope - #249
Merged
Conversation
#248 moved the SessionStart hook's LVGL clone out of managed_components/ and into simulator/.lvgl. #246 widened the format check's roots to include simulator/. Each is fine alone; together they put ~1030 vendored upstream sources inside the find that decides what clang-format owns. On any container where the hook took the fallback path, `make lint-c` goes from 58 files to 1089 and does not finish inside five minutes, and `scripts/format.sh` — which the pre-push hook runs — would rewrite the whole of upstream LVGL in place. CI never sees it: the ui-screenshots job still clones to managed_components/, outside these roots. So this only breaks local and cloud development, which is precisely who the fallback path exists to serve. Pruned alongside the other deliberate exclusions, with the reason recorded next to them. Verified with a populated simulator/.lvgl: the list stays at 58 files, none of them LVGL's, and `make lint-c` exits 0 in seconds rather than timing out. Unchanged at 58 with no clone present; scripts/lint.sh and shellcheck -S warning both clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PyJ47o5sWvpb9vMk1RNKkb
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.
An interaction between #248 and #246, both merged today. Each is correct alone; together they break the format check for local and cloud development.
What happens
#248 moved the SessionStart hook's LVGL clone out of
managed_components/and intosimulator/.lvgl. #246 widened the format check's roots to includesimulator/. So on any container where the hook took the fallback path, ~1030 vendored upstream sources are now inside thefindthat decides what clang-format owns:simulator/.lvglsimulator/.lvglmake lint-cdoes not finish inside five minutes. Worse,scripts/format.sh— which the pre-push hook runs — would reformat the whole of upstream LVGL in place.Why CI is green anyway
The
ui-screenshotsjob still clones tomanaged_components/lvgl__lvgl, which is outside these roots, and it never runslint-cin the same tree. So CI cannot see this. It only bites local and cloud development — precisely the people the fallback path was added for.The fix
simulator/.lvgl/*joins the other deliberate prunes inscripts/c-sources.sh, with the reason recorded beside them.Verification
With a populated
simulator/.lvgl:make lint-cexits 0 in seconds instead of timing outWith no clone present the list is unchanged at 58.
scripts/lint.shclean,shellcheck -S warningclean.Generated by Claude Code