HOWTO:Contribute to Lily
From LilyWiki
Note: This is liberally adapted from the Greasemonkey project page. Apologies to the original authors.
Contents |
[edit] Contribute to Lily
Want to help with Lily? Great! We need all the help we can get. This page will tell you everything you need to know to get started.
[edit] Become a project member
In order to edit tickets, change wiki pages, and otherwise participate in the lily project, you must become a project member. To do this, join the Lily users group at http://groups.google.com/group/lily-users and ask to be added to the project_members group on Trac. Everyone is welcome, we mostly do this to combat spam.
[edit] Decide what to to
If there is something in particular you want to change in Lily, then you can jump right in, otherwise, you may want to browse the bug list to find something that needs doing.
[edit] Announce your intentions
This step is very important. You should let the Lily community know what you plan to do before you begin doing it. This prevents duplication of effort and it also gives the community a chance to give you early feedback on your idea before you get very deeply into it.
To announce your intentions, join the Lily users group at http://groups.google.com/group/lily-users and send us a note saying what you want to change. Include the link to the bug entry if applicable.
[edit] Get the source code and set up your dev environment
http://wiki.lilyapp.org/HOWTO:Get_started_working_with_Lily_source_code
[edit] Implement your change
Now, the easy part :-)
If you are not familiar with Firefox extension developement you will find these resources helpful starting points:
[edit] Send your changes for review
Once you are done implementing your change, you should send it to lily-users for review. There are two main ways to do this:
- If you were working on a branch, send us a link using the "Request code review" link
- If you weren't working on a branch, generate a "patch file" and send it to lily-users
- Windows: Right-click on the lily folder and select svn > diff
- Linux: from the root source directory: svn diff > /tmp/lily.patch
- Mac: vn diff > /tmp/lily.patch
Once you send your change, there will hopefully be some feedback from the community. Continue in an iterative fashion, collecting feedback, making changes, etc, until everyone agrees that you are done. If you weren't working on a branch, request SVN commit access. Once you get it, you will be able to check in.
[edit] Style Guide
- Code should of course work and be correct.
- Lily follows the Mozilla JavaScript style guide.
- Maintainability is crucial: treat your code as primarily for humans to read, and only incidentally for computers to run.
- Performance is nice, but prior rules should never suffer for it, unless there is a performance problem to address.
- Keep acronyms like URL in identifiers all caps, but abbreviations are still capitalized like normal words.
