8000 GitHub - oliver-dzedou/decoupler: Decoupler is a CLI tool to help you analyze hard couplings in your codebase.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

oliver-dzedou/decoupler

Repository files navigation

Decoupler

Decoupler is a CLI tool to help you analyze hard couplings in your codebase. It does so by collecting your commit history and running an FP growth algorithm on the filesets within. It then outputs a markdown report (example) containing all the filesets that are most frequently edited together, hinting at a possible hard coupling between these files.

Important info

  • Security: Decoupler does not collect data of any kind and can be safely ran on classified codebases. This claim can be easily verified by reading the source code or running it in fully air gapped environment.
  • Performance: On a repository with 550 commits with average diff size of around 20-30 files changed per commit, the analysis takes 3 seconds on a MacBook M3 Pro. Be aware that FP growth runs in O(n^2), so as the repository grows, the time required to perform the analysis goes up very rapidly.

Installation

As of now, Decoupler is only available as a binary. You can build it yourself:

cargo build --release

Or download it from the releases page

For ease of use, you can add Decoupler to your bin folder

sudo cp target/release/decoupler /usr/local/share

Usage

decoupler --help contains all the instructions. decoupler runs the app with default settings

About

Decoupler is a CLI tool to help you analyze hard couplings in your codebase.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages

0