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

Decide which functionality should be public

Open Pennycook opened this issue 10 months ago • 0 comments

Feature/behavior summary

Direct access to the internals of the codebasin package was deprecated in CBI 1.2, to give us time to refactor and finalize the public interface. The purpose of this issue is to track progress towards defining a clear boundary between public and private interfaces.

I expect that this will take us a long time to complete, and suggest that we do it incrementally.

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

  • [ ] #58
  • [ ] #100
  • [ ] #135
  • [x] #142 (_detail package)

Solution description

For each class and function in codebasin, we need to decide:

  1. Whether it should remain a public interface that we commit to maintaining; and
  2. Whether it needs refactoring before committing to a public interface.

Additional notes

  • @laserkelvin suggested that private globals (e.g., the _compilers dictionary) could be replaced by a registry (see https://github.com/intel/code-base-investigator/pull/168#discussion_r1991854545).

Pennycook avatar Mar 13 '25 10:03 Pennycook