implicit annotations require some specific code formatting choices. Currently CARVE doesn't enforce this.
For each language specific resource debloater, we need to update the base / derived resource debloater classes to run a code formatting tool (clang-format for C/C++, black for python, etc.) first to ensure the code is compatible with the implicit annotations used for that type of language source file.
going forward, CARVE will assume it can make permanent changes to the source code dirs the user provides. its on them to make a copy if they want to preserve the original code. we need to mention this in the README.
To help debuggability, we should also add a CLI parameter to copy off the formatted but not yet debloated code to support diffing when debugging bad cuts.
implicit annotations require some specific code formatting choices. Currently CARVE doesn't enforce this.
For each language specific resource debloater, we need to update the base / derived resource debloater classes to run a code formatting tool (clang-format for C/C++, black for python, etc.) first to ensure the code is compatible with the implicit annotations used for that type of language source file.
going forward, CARVE will assume it can make permanent changes to the source code dirs the user provides. its on them to make a copy if they want to preserve the original code. we need to mention this in the README.
To help debuggability, we should also add a CLI parameter to copy off the formatted but not yet debloated code to support diffing when debugging bad cuts.