2.6 KiB
Request for contributions
We are always looking for contributions to OSEM. Read this guide on how to do that.
In particular, this community seeks the following types of contributions:
- code: contribute your expertise in an area by helping us expand OSEM
- ideas: participate in an issues thread or start your own to have your voice heard.
- copy editing: fix typos, clarify language, and generally improve the quality of the content of OSEM
How to contribute
- Prerequisites: familiarity with GitHub Pull Requests and issues.
- Fork the repository and make a pull-request with your changes
- Make sure that the test suite passes before you request a pull and that you comply to our ruby styleguide.
- Please increase code coverage by your pull request (coveralls or simplecov locally will give you insight)
- One of the OSEM maintainers will review your pull-request
- If you are already a contributor and you get a positive review, you can merge your pull-request yourself
- If you are not a contributor already please request a merge via the pull-request comments
Coding Style
We are using rubocop as a style checker. It is checking code style each time the test suite runs. You can run it locally with
bundle exec rubocop
You can read through current enabled rules in .rubocop.yml file. Explanations of the defined rules can be found in modules Cop::Lint and Cop::Style.
Additionally you can read through the ruby style-guide to better understand core principles.
Test Suite
We are using rspec+capybara+factory girl as a test suite. You can run it locally
bundle exec rspec
Code of Conduct
OSEM is part of the openSUSE project. We follow all the openSUSE Guiding Principles! If you think someone doesn't do that, please let us know at maintainers@osem.io
Contact
GitHub issues are the primary way for communicating about specific proposed changes to this project. If you have other questions feel free to subscribe to the opensuse-web@opensuse.org mailinglist, all OSEM contributors are on that list! Additionally you can use #osem channel on freenode IRC.