« Back to Understanding and...
Contributing
(Redirected from How to contribute to Liferay)
Introduction #
There are several ways in which you can contribute to the Liferay open-source project. Some examples include:
- Write documentation of some feature that you know in the wiki
- Test it and file the bugs you find
- Implement a new feature or extend the existing ones
- Suggest a new feature
The following sections outline things that users can do to contribute to the project.
Write documentation #
Liferay has both an official documentation and a community based documentation created through a wiki (right where this page is).
To contribute to the wiki, please register an account and then create articles using the following guidelines.
Contribute with new features #
- Make sure the feature does not exist
- Comment the feature in the message boards to let other people give their opinion about it
- Download Liferay's latest sources and make the changes there
- Go to the support website and add an issue explaining your feature
- Create a patch for your changes and upload it as an attachment to the issue you created
- Make sure it satisfies Liferay's guidelines: Liferay Core Development Guidelines
- It must always be done against latest trunk (specify the revision in the patch comment)
- The patch should be created with a patch utility (see Patch utilities below) to include only differences
- Don't include differences for files that are generated with ServiceBuilder
- The name of the file must be of the form: LPS-nnnn-build-mmmmmm.patch Where nnnn is the number associated to the JIRA issue and mmmmm is the subversion revision against which the patch was created
- Once you are done, click the "Contribute Solution" workflow step in the left-hand navigation of the ticket and accept the Contributor's Agreement. If you are also the original reporter of this ticket, you must then click "Accept Contribution" to change the state to "Community Resolved". If you are not the original reporter of the ticket, that user must click "Accept Contribution" in order for the ticket to be considered "Community Resolved".
Some tips:
- It's much easier for Liferay's developers to receive several small patches than a huge one, because the latter takes more time to review.
- Follow the conventions of the existing code as strictly as you can: pay attention to class names, variable names and all the coding style.
- If you are planning to develop a large feature or send a set of related patches it's a good idea to write down the whole proposal as a wiki article within the Proposed Projects section
Patch utilities:
- SVN diff:
- cd {full path}/liferay-code/trunk
- svn diff > ../LPS-nnnn-build-mmmmmm.patch
- Eclipse:
- Select the portal-trunk project from within Project Explorer view
- Right click → select Team → Create Patch...
- Select files to include, select to save the output file to files system, click Next
- Select Project as the option for the Patch Root and click Finish
- SmartSVN: Query → Create Patch
Reporting Bugs #
- Make sure it really is a bug
- Post the problem in the message boards
- Go to the support website and add an issue explaining the bug
- Try to explain the way Liferay works and the way it should work in a very detailed way.
- If you have the knowledge create a patch that solves the bug
Suggest a new feature #
- Go to the message boards and suggest the feature in the Suggestions and Feature Requests Category.
- If the community likes it, once it's defined it will be added to this wiki under the Proposed Projects page.
Children Pages
21157 Views