There are different ways to contribute. Some of them should be really easy.
First of all. Thanks a lot for contributing to cfn-sphere!
You are using cfn-sphere? Tell about it! Write a blog post, tell your friends or simply twitter about it. This will make cfn-sphere wider known and attract new contributors.
You may open a question issue to get into contact with us. For now this is the way to go. We may use gitter or equal in the future if required.
If you have a new idea you may submit a feature request. This should be a new idea that puts forward cfn-sphere.
Submit an issue and describe your idea in the best possible details.
https://github.com/cfn-sphere/cfn-sphere/issues
We have a rather high test coverage. But tests can always be improved.
And of course you can contribute code! Starting with fixings in the code or even implementations of new concepts. Take a look at the issues. Maybe you can find something, you would like to start with? If you are sending a pull request, please note the following:
- often it is a good idea to create an issue, that describes you problem or idea, which you want to solve with your pull request.
- in your pull request refer to the issue.
- describe your changes in the commit message.
Contribution Guidelines
Git Handling
............
* privacyIDEA is developed on **github**.
The current development is performed on the
**master** branch.
So the master branch can be unstable!
* For every stable release we set a **milestone** like **v1.04** and assign issues to it.
Once all assigned issues within a milestone are done or a bug needs to be fixed, we create a release.
* When developing a feature there *should* be an **issue** for that.
* Your **commit message** or pull request should refer to this issue.
* When providing a **pull request** please check if it makes sense to
**squash your commits**.
* If the development of a task will probably need more time and consist of
more than one commit, you should use a **feature branch**.
Code
....
* We try to stick to **PEP 8**. So please use sensible names, check your line
breaks, comment your classes and functions...
Using something like *pylint* or an integrated editor like *pycharm* can
help you with that.
* When implementing something new, try to do more with **less code**!
* When implementing something new, try to implement it in a **generic way**,
that it can be used and different use cases.