#repository #data #version-control #git-commit #quickly #gather #contributors

bin+lib gawain

A package to gather data from software repositories, quickly

2 releases

0.1.1 Aug 8, 2024
0.1.0 Jul 23, 2024

#3 in #gather

31 downloads per month

Custom license

19KB
135 lines

Gawain

A crate to gather data from software repositories, quickly.

Re: 'gawain', this project is heavily inspired by CHAOSS's Perceval tool.

Installation

cargo install gawain

cargo add gawain

Usage

usage: gawain <backend>  <-l> <repository/repositories> <temporary directory>

-l: denotes passing gawain a comma-separated list of VCS links
repository/repositories: either a VCS link or a comma-separated list of VCS link

Repositories are reached through specific backends. Right now, Gawain supports:
    git     Fetch commit data from Git

Collected data will be returned in the terminal in the format of a JSON object:

{vcs_link : <VCS link>,
roster_list: [<<commits> <git user>> ...],
roster_size: <contributor count>,
commit_count: <# of commits>}

Planned Work

This project is still in its early stages, with many features yet to be implemented. Proposed features are here.

Dependencies

~10MB
~247K SLoC