dapper

Crates.iodapper
lib.rsdapper
version0.0.0-pre.3
created_at2024-11-22 20:53:41.07804+00
updated_at2025-10-24 20:57:53.033322+00
descriptionDependency Analysis Project - identifying dependencies in C/C++ code and packages on filesystems
homepage
repositoryhttps://github.com/LLNL/dapper/
max_upload_size
id1457773
size381,344
dapper-releasers (github:llnl:dapper-releasers)

documentation

README

DAPper

DAPper helps identify the software packages installed on a system, and expose implicit dependencies in source code.

The main tool for end users parses source code to determine packages that a C/C++ codebase depends on. In addition, datasets mapping file names to packages that install them for various ecosystems are provided. The tools used to create those datasets are also available in this repository.

Getting Started

[!NOTE] DAPper is very early in development -- things may not work as expected or be implemented yet! Feel free to start a discussion in https://github.com/LLNL/dapper/discussions for things you'd like to see.

Download pre-built binary (Coming soon):

Soon we will provide pre-built dapper binaries on GitHub that can be downloaded.

Install from crates.io (Recommended for users):

For ease of use, we recommend using rustup.rs which is a Rust installer and version management tool. Install rustup by following their installation instructions.

After that, install DAPper with (replacing with the version to install):

cargo install dapper@<version>

Build from Source (Recommended for developers):

For ease of use, we recommend using rustup.rs which is a Rust installer and version management tool. Install rustup by following their installation instructions.

  1. Clone the DAPper git repository using git
git clone https://github.com/LLNL/dapper.git
cd dapper
  1. Build DAPper
cargo build --release

Note: Use cargo run -- in place of dapper for any commands listed in the Usage section below.

Usage

Install datasets using dapper db install ubuntu-noble, dapper db install pypi, and optionally dapper db install nuget.

Run dapper <source code directory or file>. The output will be the #included files from each C/C++ and Python source code file found.

Support

Full user guides for DAPper are available online and in the docs directory.

For questions or support, please create a new discussion on GitHub Discussions, or open an issue for bug reports and feature requests.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

For more information on contributing see the CONTRIBUTING file.

License

DAPper is released under the MIT license. See the LICENSE and NOTICE files for details. All new contributions must be made under this license.

SPDX-License-Identifier: MIT

LLNL-CODE-871441

Commit count: 102

cargo fmt