Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identification of unused packs, unused components, implicit resolution of trivial component dependencies #1359

Open
jkrech opened this issue Mar 5, 2024 · 0 comments
Labels
cmsis-toolbox future feature with lower priority not in scope for next iteration enhancement New feature or request

Comments

@jkrech
Copy link
Member

jkrech commented Mar 5, 2024

Describe The Problem To Be Solved
a) a CMSIS solution project may list packs unnecessarily as there is no layer, component, generator, device nor board information referenced from it. I.e. any pack listed in csolution/cproject/clayer which is not listed anywhere in any <context>.cbuild.yml should be reported as unused.
b) a project may select components that are not actually used, e.g. as a residual from previously existing component dependencies.
c) when maintaining the CMSIS project yaml files manually it would be convenient if trivial component dependencies are resolved implicitly.

Definition:
"User selected component": a component that was intentionally added by the user
"Trivial dependency resolution": a dependency that can be resolved only by a single component
"User selected dependency resolution": a dependency that can be resolved by more than on component and requires a selection by the user.

Note:
Static code analysis tracking the header file dependency chains could be a method to identify unused components

Annotating components whether they are user selected or resulting from a dependency or being implicitly resolved is an alternative approach. Adding a subnode is noisy but backward compatible.

Implicitly resolving trivial components without storing them in the YAML input is breaking compatibility with previous tool versions.

@jkrech jkrech added enhancement New feature or request cmsis-toolbox future feature with lower priority not in scope for next iteration labels Mar 5, 2024
@jkrech jkrech changed the title Identification of unused packs, unused components, implicit resolution of trivial component dependencies` Identification of unused packs, unused components, implicit resolution of trivial component dependencies Mar 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cmsis-toolbox future feature with lower priority not in scope for next iteration enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant