3 releases (breaking)

Uses old Rust 2015

0.5.0 Jul 8, 2023
0.4.0 Sep 14, 2017
0.3.0 Aug 14, 2017

#3 in #issue-tracking

MPL-2.0 license

120KB
2.5K SLoC

git-dit library - the distributed issue tracker for git library

WARNING: This is pre-1.0! Expect bugs and incompatibilities!

git-dit features

  • Distributed issue tracking, without checking files into the repository
  • No structured data
    • An issue/comment is a commit
    • "Tags" are supported (see man git-interpret-trailers)
  • No additional software needed on the server-side.

When playing with this, please keep in mind that this is alpha quality - there are bugs, missing things and rough edges.

Documentation

For a system overview and conceptual information, refer to the documentation.

License

This library is licensed under terms of MPL-2.0.

(c) Julian Ganz, Matthias Beyer


lib.rs:

The git-dit library

This library provides low-level functionality for accessing, creating and manipulating "git-dit" issues and messages. It is implemented on top of the git2 crate. This librarie's documentation primarily provides information about its API and abstract processing of issues and messages.

Issues

Issues are stored in git repositories. The issues availible in a repository may be accessed through the RepositoryExt extension trait implementation for git2::Repository.

An issue is primarily a tree of messages, consisting of at least an initial message. An issue also has a "head reference". The head reference lets the maintainer indicate an "upstream status" of the issue, e.g. by pointing to a message which introduces a textual solution or a state.

Messages

Like emails, messages are immutable once released to the public. Each message has an author and a creation date. Additionally, a message may contain arbitrary metadata in the form of git trailers.

Dependencies

~14–22MB
~370K SLoC