code-base-investigator icon indicating copy to clipboard operation
code-base-investigator copied to clipboard

Refactor configuration dict into CompilationDatabase

Open Pennycook opened this issue 1 year ago • 0 comments

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 CompilationDatabase class that stores CompileCommand objects and is interoperable with JSON.
  • Rewrite external interface(s) to use a CompilationDatabase and update the tests.
  • Rewrite internal interface(s) to use a CompilationDatabase (replacing functionality from config.py).

Additional notes

No response

Pennycook avatar Aug 26 '24 09:08 Pennycook