Contributing to Cattle
======================

This document explains how to contribute to the project.


Requirements
------------

Changes must be documented, both through comments in the code and
through detailed commit messages.

Large changes should be split into smaller commits that make sense
on their own; the code should compile and pass the test suite after
each commit has been applied.

Patches must carry reasonable authorship information, that is, the
full name of the author, and must include a ``Signed-off-by`` tag as
a way to declare that they are submitted in compliance with the
`Developer Certificate of Origin`_.


Submitting patches
------------------

Patches can be submitted for consideration via `email`_, preferably
using `git-publish`_; if you would rather use a more Web-oriented
workflow, submission through `gitlab`_ or `github`_ is also accepted.


.. _email: mailto:eof@kiyuko.org
.. _gitlab: https://gitlab.com/abologna/cattle
.. _github: https://github.com/andreabolognani/cattle
.. _git-publish: https://github.com/stefanha/git-publish
.. _Developer Certificate of Origin: https://developercertificate.org/
