nasa / fprime-tools

F´ Python tooling and helpers.
https://github.com/nasa/fprime
Apache License 2.0
21 stars 39 forks source link

Add code formatting command #111

Closed thomas-bc closed 1 year ago

thomas-bc commented 1 year ago
Originating Project/Creator
Affected Component fprime-util format
Affected Architectures(s)
Related Issue(s) https://github.com/nasa/fprime/issues/817
Has Unit Tests (y/n) N
Builds Without Errors (y/n) Y
Unit Tests Pass (y/n)
Documentation Included (y/n) Y

Change Description

Adds a new command to fprime-util to make using clang-format with FPrime source code easier (fprime-util format).

Rationale

This is mostly needed because of the access specifier macros in FPrime (e.g. PRIVATE:), which clang-format can't catch on, which resolves in bad formatting. This new utility wraps around clang-format, replacing the macros before/after processing, and adding some functionality to make it easier to use with FPrime.

Testing/Review Recommendations

Usability is described in help_text.py -- can be easily tested within the core F' repo or any deployment, after a pip install . Let me know if you can think of any feature/options that could be useful and I can try to add them in.