If you want to contribute to SAUCE development by fixing a bug or implementing a feature, by all means, try contacting the author first! The code is not as commented as it should be and the author can (and will) provide you with explanations and hints. Don't just try something, fail silently and be disappointed.
And use a goddamn modern IDE for Python (PyCharm, PyDev, ...). While it's definitely a valuable skill, especially for system administrators, to use vim et. al. eloquently, for bigger projects it is definitely easier to use an editor that allows you to just CTRL + Click on a symbol to jump to its definition. I guarantee you to be lost without a tool like that.
SAUCE heavily uses the successful Git branching model by Vincent Driessen (summary figure). His git-flow extension makes it easier to employ this model.
Please just submit your feature branches for pull requests.
The following sections are mostly copied from https://github.com/puppetlabs/puppet/blob/master/CONTRIBUTING.md
- If it's a bug or something worth discussing first, submit a ticket for your issue,
assuming one does not already exist. You can skip that for simple new features
since discussion can also happen on the pull request.
- Clearly describe the issue including steps to reproduce when it is a bug.
- Make sure you fill in the earliest version that you know has the issue.
- Fork the repository on GitHub
- Create a feature branch (also called topic branch) from where you want to base your work
(see the note on git-flow above).
- This is usually the
develop
branch. - If you are certain your fix must be on a release branch, you should use a hotfix branch.
- Please avoid working directly on the
develop
andmaster
branches.
- This is usually the
- Make commits of logical units.
- Check for unnecessary whitespace with
git diff --check
before committing. - Make sure your commit messages are in the proper format.
- If you can, please add tests for your changes (even broken tests are better than no tests).
- Push your changes to a feature branch in your fork of the repository.
- Submit a pull request to the repository.