code-base-investigator

An analysis tool providing insight into the portability and maintainability of an application’s source code.

https://github.com/P3HPC/code-base-investigator

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 5 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.9%) to scientific vocabulary

Keywords

code-quality p3 static-analysis-tools
Last synced: 6 months ago · JSON representation ·

Repository

An analysis tool providing insight into the portability and maintainability of an application’s source code.

Basic Info
Statistics
  • Stars: 30
  • Watchers: 7
  • Forks: 10
  • Open Issues: 10
  • Releases: 5
Topics
code-quality p3 static-analysis-tools
Created over 6 years ago · Last pushed 7 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Security

README.md

Code Base Investigator

DOI OpenSSF Best Practices

Code Base Investigator (CBI) is an analysis tool that provides insight into the portability and maintainability of an application's source code.

  • Measure code divergence and platform coverage to understand how much code is specialized for different compilers, operating systems, hardware micro-architectures and more.

  • Visualize the distance between the code paths used to support different compilation targets.

  • Identify stale, legacy, code paths that are unused by any compilation target.

  • Export metrics and code path information required for P3 analysis using other tools.

Table of Contents

Dependencies

  • jsonschema
  • Matplotlib
  • NumPy
  • pathspec
  • Python 3
  • SciPy
  • tabulate
  • tqdm

Installation

The latest release of CBI is version 2.0.0. To download and install this release, run the following:

pip install git+https://github.com/P3HPC/code-base-investigator@2.0.0

We strongly recommend installing CBI within a virtual environment.

Getting Started

After installation, run codebasin -h to see a complete list of options.

A full tutorial can be found in the online documentation.

Contribute

Contributions to CBI are welcome in the form of issues and pull requests.

See CONTRIBUTING for more information.

License

BSD 3-Clause

Security

See SECURITY for more information.

The main branch of CBI is the development branch, and should not be used in production. Tagged releases are available here.

Code of Conduct

We have adopted the Contributor Covenant as the Code of Conduct for this project. See CODE OF CONDUCT for more information.

Citations

If your use of CBI results in a research publication, please consider citing the software and/or the papers that inspired its functionality (as appropriate). See CITATION for more information.

Owner

  • Name: P3HPC
  • Login: P3HPC
  • Kind: organization

Citation (CITATION.cff)

cff-version: 2.0.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Sewall"
  given-names: "Jason"
  orcid: "https://orcid.org/0000-0001-9482-3558"
- family-names: "Pennycook"
  given-names: "John"
  orcid: "https://orcid.org/0000-0003-0237-3823"
- family-names: "Jacobsen"
  given-names: "Douglas"
  orcid: "https://orcid.org/0000-0002-3836-207X"
- family-names: "Lee"
  given-names: "Kin Long Kelvin"
  orcid: "https://orcid.org/0000-0002-1903-9242"
title: "Code Base Investigator"
version: 2.0.0
date-released: "2025-05-16"
doi: "10.5281/zenodo.15422620"
identifiers:
  - description: Archive of all previous releases.
    type: doi
    value: "10.5281/zenodo.5018973"
  - description: Latest release.
    type: doi
    value: "10.5281/zenodo.15422620"
url: "https://github.com/P3HPC/code-base-investigator"

GitHub Events

Total
  • Issues event: 1
  • Issue comment event: 4
  • Push event: 1
  • Pull request review event: 11
  • Pull request review comment event: 19
  • Pull request event: 7
Last Year
  • Issues event: 1
  • Issue comment event: 4
  • Push event: 1
  • Pull request review event: 11
  • Pull request review comment event: 19
  • Pull request event: 7

Dependencies

setup.py pypi
  • matplotlib *
  • numpy *
  • pyyaml *
  • scipy *