How can I contribute to Lift?
- Get involved on the mailing list, asking questions, answering questions, helping others.
- Write blog posts.
- Update the wiki or add new wiki pages (if you’re not sure, ask about the change you want to make on the mailing list).
- Add to the Lift Cookbook (there’s a recipe explaining how).
I think I’ve found a bug/I have a feature I’d like – should I raise a ticket?
Discuss the issue or feature on the mailing list first, and only create a ticket if asked to by a committer. You’ll want to read Expected Behavior in the Lift community and Creating tickets.
Can I contribute code?
The Lift IP is clean which means that unless you are a committer and you have written the code yourself, it doesn’t get into Lift. This allows businesses to use Lift knowing what the provenance of the code is.
In particular, none of the Lift committer will pull from your repository, so do not send GitHub pull requests or messages.
There are exceptions: if the pull request represents one or more of the following:
– Documentation including ScalaDoc comments in code
– Example code
– Small changes, enhancements, or bug fixes to Lift’s code
The request includes a signature at the bottom of the /contributors.md file.
Why do you have the rules on code contribution?
The structure of the Lift IP is oriented to allowing corporations to safely adopt Lift while making sure that the Lift license (Apache 2.0) can be enforced.
Because the only people with commit rights to Lift source code are people (or organizations) who have assigned their code to the Lift IP holding company, the number of folks who can add code to Lift is very limited and most of the committers go through a code review process. This means that the code is an original work and cleanly assigned to the holding company. This avoids the problems for businesses brought out in the SCO law suit a few years back (copy paste of code, lack of code provenance, etc.) The bottom line for businesses is that they can use Lift in their projects and their legal departments have an easier time giving the code a clean bill of health… and clear statements about process and rule following like this help out a lot.
There’s more context if you need it, including a view on practical implications for existing committers.
I have some really useful code. How can I share it?
Blog about it, talk about it on the mailing list, and consider turning it into an external Lift module. Anyone can contribute an external Lift module.
Can I contribute source code documentation?
Yes, just send a pull request with the modified ScalaDocs.
Can I contribute translations?
Yes – we accept translations of the resource files as long as they have a notice in them that says they are licensed under Apache 2.0
Contributing to the wiki
You need an assembla account as a prerequisite to contributing to the wiki.
If you do not have an account, you can create one here: https://www.assembla.com/signup .
You will need to log on to assembla in order to contribute to the wiki: https://www.assembla.com/login .
In addition to being logged on, you need to click the Watch button of the liftweb wiki. The Watch button is currently in the top right hand corner of the web page. After becoming a watcher you now ought to see an edit tab on the wiki page you want to contribute to.
As mentioned above “if you’re not sure, ask about the change you want to make on the mailing list”.