code-base-investigator
code-base-investigator copied to clipboard
Refactor configuration dict into CompilationDatabase
Feature/behavior summary
The configuration dictionary used by Code Base Investigator 1.x stores a subset of the information available in a compilation database. Rather than maintain support for two data formats and move back and forth between them, we should adopt compilation databases as the only representation of a compilation.
Request attributes
- [X] Would this be a refactor of existing code?
- [ ] Does this proposal require new package dependencies?
- [X] Would this change break backwards compatibility?
Related issues
No response
Solution description
- Introduce a
CompilationDatabaseclass that storesCompileCommandobjects and is interoperable with JSON. - Rewrite external interface(s) to use a
CompilationDatabaseand update the tests. - Rewrite internal interface(s) to use a
CompilationDatabase(replacing functionality fromconfig.py).
Additional notes
No response