ChiliProject is not maintained anymore. Please be advised that there will be no more updates.
We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.
Version 5 (Toshi MARUYAMA, 2013-07-03 04:44 am)
This project is built and maintained by community volunteers. If you would like give back to the community, there are several ways to contribute back to the project.
h2. You've found a bug?
Opening tickets for bugs you find is a great way to contribute to ChiliProject.
The first step when you think you have found a bug is to look if it's not already been reported, use the search field (top right of any page) to that end. If there's already a bug report covering the problem you are encountering, please comment on that ticket instead of opening a new one.
If you can't find a ticket covering the problem you are encountering, please open a new one and try to include the following:
* your ChiliProject version, or the revision if you're using repository code (Example: @1.1.0@)
* your ruby version (Example: @1.8.7@)
* your rails version (Example: @2.3.5@)
* your database including version (Example: @PostgreSQL 8.2@)
* your SCM including version if the problem is related to the SCM integration (Example: @svn 1.6.11@)
* the error trace if ChiliProject crashed, you'll find it in @log/production.log@ in your @chiliproject@ directory most times.
If you have access to your ChiliProject installation, running the following command in your @chiliproject@ directory will provide most of the required information:
<pre>RAILS_ENV=production ruby script/about</pre>
h2. You've found a security vulnerability?
We're going to great lengths to make sure ChiliProject is secure, but sometimes that isn't enough to make it secure. If you think you've found a security vulnerability, send a mail containing the description of the vulnerability to firstname.lastname@example.org, we'll get in touch with you.
h2. You want to propose a feature?
Have a look at existing feature requests to see if no one has already proposed something similar, open a new feature request if not. Fill in the _subject_ with a short but accurate title, put details in the _description_, don't hesitate to describe precisely how this feature should behave and try to add what benefits you're expecting from it.
h2. You want to help translate ChiliProject?
ChiliProject has translations for a lot of languages, those however become incomplete and/or outdated over time. If you've found some part of ChiliProject with english text (the default) where there shouldn't be, try to find the english text in the locale file corresponding to your language, translate it and post the changes in a new bug report. You can find the locale files in the @config/locales@ directory of your ChiliProject installation.
If you would like to actively and refularly maintain the translation for a particular language, please get in touch with the [[Teams#Development-Team|development team]] lead. If you want to translate ChiliProject to a new language, please see the *TODO* guide.
h2. Code Related
These require a familiarity with "Ruby on Rails":http://rubyonrails.org/ development. If you are still new to Rails, Community members can help you if you get stuck with something or have any other questions.
You will need to download a copy of the current development code. The official code repository is hosted on Github at https://github.com/chiliproject/chiliproject.
Any questions can be asked in the "Forums":/project/chiliproject/boards or on [[IRC]].
Patches to fix bugs or add new features are always appreciated. If you are going to work on a specific issue, make a note in the issue details so the developers will know what you're working on.
h3. Contributing code:
# Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
#* Patches are not accepted for stable release branches. All code must start in master and then be merged into other branches.
# Check out the issues list to make sure someone already hasn't requested it and/or contributed it.
# Fork the project on Github.
# Start a feature/bugfix branch, with a good descriptive branch name. Using the issue number as the prefix is a great idea (e.g. @git checkout -b 1234-add-new-feature@).
# Make sure all the existing tests pass. You can check the current build statuses on the Continuous Integration server *TODO*
# Commit and push until you are happy with your contribution.
# Make sure to add tests for the feature/bugfix. This is important so the feature/bugfix doesn't break in a future version unintentionally.
#* We only accept patches with extensive test coverage.
# Create a pull request on Github and post a comment to the issue here.
# Ask for feedback from users and developers. Users will want to to apply the patch and try out the new functionality. Developers will want to do a code review and run all of the tests.
# Discuss any changes that are proposed and push updates as needed until the code is integrated.
h2. Issue triage
Sometimes issues are reported without all the information needed by a developer. Getting the details of the bug or feature from the reporter and the community helps everyone understand what is needed on the issue. If you can try to reproduce the bug in your own ChiliProject adding a note about your version and the exact steps you took are extremely useful.
Also some issues will have patches attached to them with proposed fixes. Reviewing and updating these patches is very helpful.
h2. User support
Helping out other users in the "Forums":/project/chiliproject/boards and the [[IRC|IRC channel]] is always useful. Frequent problems or questions should be added to the [[chiliproject:|wiki]] (either to the [[FAQ]] or a new page) so they can be found by future users.
h2. Localization and translation
Translations are kept up-to-date alongside the code development. You could provide updates to the translations or propose new translations by opening a new issue.