Skip to content

Feature unit testing - #187

Open
leBronzo1 wants to merge 54 commits into
mainfrom
feature-unit-testing
Open

Feature unit testing#187
leBronzo1 wants to merge 54 commits into
mainfrom
feature-unit-testing

Conversation

@leBronzo1

Copy link
Copy Markdown

Tests for controls, sensors, utils, and filters.

@leBronzo1
leBronzo1 requested a review from roccoagain April 12, 2026 17:34
@github-actions

github-actions Bot commented Apr 12, 2026

Copy link
Copy Markdown

Doxygen warnings output: (if empty, there are no warnings). Please correct any warnings before merging.

  

roccoagain and others added 26 commits August 17, 2026 12:38
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
-g3 additionally emits macro definitions, costing ~7x in object size
(195MB -> 28MB). The addr2line crash-report workflow only needs line
tables, which -g2 provides; verified identical addr2line output.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Dumping every object file added ~600MB to build/ and a couple of
seconds to every clean build. Nothing in the repo consumes the files,
so make them opt-in with DUMP_OBJS=1 for codegen inspection.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
$(wildcard dir/*/) returns paths with a trailing slash, so the list
mixed "libraries" with "libraries/SdFat/". Harmless for -isystem, but
make's path functions misbehave on such paths ($(notdir) returns empty,
appending yields a double slash), and the list is also used as
prerequisites for compile_commands.json where names are compared as
strings. Same 22 directories either way; clean build produces identical
section sizes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
'make clean build' hands make two goals. Under -j it walks both dependency
graphs concurrently rather than finishing the first goal before starting the
second, so 'rm -rf build' runs while the compile and link rules are writing
into build/, and the build dies partway through:

    ld: open() failed, errno=2 for 'build/git_scraper'

Combining the two is not a workflow worth supporting, so document the two
commands to run instead rather than adding machinery to police the combined
form.

FEATURE_DEFINES needs that note most: the flags are not tracked as a
dependency, so objects built without them are not invalidated when they change.
Set them on the FEATURE_DEFINES line, then run 'make clean' and 'make build'.

Also trim the DUMP_OBJS comment to what a reader needs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants