Enhancement Request Guidelines
How features are added into Koha
(Note: in 2014, those guidelines are not really followed anymore. It's not deprecated either, so you can use the workflow proposed here)
When you plan to do some nice stuff on Koha, you must do 2 things :
- announce what you'll work on. That will anyone else interested in your work jump in, make suggestion, share ideas. Or even maybe share work !
- publish soon and often: more often you'll publish, the easiest it will be to have your stuff integrated into Koha.
Announcing your work
- add an RFC on the wiki. Be as detailled as possible. Specify an expected date of availability (deadline if sponsored), if it's sponsored (and if you want, by who). Use the template RFC (see below) to fill your template
- click on the applicable categories : If you think/plan that your new cool feature will be ready for version X.Y, then click on "RFC for X.Y. (don't click on Version X.Y (it will mean the feature IS (or has been) added into version X.Y ! )
- file a bug on our bugzilla : http://bugs.koha-community.org (see http://wiki.koha-community.org/wiki/Enhancement_Request_Guidelines if needed)
- send a mail on koha-devel mailing list (http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel)
Publish soon / publish often
- Don't forget to add your git repository to http://wiki.koha-community.org/wiki/Public_Git_Repositories
- develop the feature on a branch that has the same name as the bug number (BZ5482 for example), on your local repository
- rebase your branch on main as often as possible/needed
- inform koha-devel mailing list of any noticeable progress
- Send us patches http://wiki.koha-community.org/wiki/Version_Control_Using_Git#Share_with_the_rest_of_the_world
Integration into official release
You can find global Koha roadmap on this page: <<page to be discussed & added>>
Each major version has is own roadmap page.
- For Koha 3.4, it's : http://wiki.koha-community.org/wiki/Roadmap_to_3.4
- Ask the Release Manager as soon as possible to see if your dev can/will be added in the next release (depending on Koha roadmap and your expected/deadline). You can ask the RM on koha-devel mailing list (so, anyone can jump in the discussion in case there's a need to) Please note that the RM has the "final cut" to integrate your branch in the release. If something isn't integrated in a release, it does not mean it won't be added in the next one, don't worry, and try again.
- when the feature has been added into the main branch, and will thus be available for the next release, then the category "version X.Y" can be checked. (the category RFC for X.Y can be kept checked as well, to keep track of what was planned)
RFC Template
You'll find a RFC wikimedia template for your RFCs. To file an RFC,just add a page with the following content:
{{RFC
|title=An example
|date=2011-01-01
|module=koha module|sponsor=no-one
|developer=lot of ppl
|bug=<bugzilla number>
|desc=this is my description
bla
bla
bla
}}
- Login to http://bugs.koha-community.org – you may have to create an account if you don’t have one.
- Enter your enhancement with as much detail as possible on how you want this enhancement to operate.
- Select the Change sponsored option to Seeking cosponsors/Sponsored/Seeking developer – or leave it blank.
- An attachment can be uploaded to the request as well if there is a change in process that can be represented by a picture.
- Commit your Enhancement for everyone to see.
- Take note of the “bug/enhancement” number and URL and publicise them (maybe email it to koha@lists.katipo.co.nz) so people can add/comment/vote on your request. We want to discuss the enhancement in bugs.koha.org – so that further thoughts/comments on this enhancement are documented in one place.
The example enhancement URL looks like: http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=3230 – taken from the URL at the top after the enhancement was “committed”