LabKey Server is an open-source project created and enhanced by many developers from a variety of institutions throughout the world. We welcome and encourage any contributions to the project. Contributions must be well-written, thoroughly tested, and in keeping with the coding practices used throughout the code base.All contributions must be covered by the Apache 2.0 License.
To make a contribution, follow these steps:
- Follow all machine security requirements.
- Make sure that you are not submitting any confidential data.
- If you already have pull request permissions to contribute to LabKey Server, you can use the process covered here: Check In to the Source Project
- If not, post your request to contribute to the LabKey support forum. If your request is accepted, we will assign a committer to work with you to deliver your contribution.
- Update your enlistment to the most recent revision. Related documentation: Set Up a Development Machine.
- Test your contribution thoroughly, and make sure you pass the Developer Regression Test (DRT) at a minimum. See Run Automated Tests for more details.
- Create a patch file for your contribution and review the file to make sure the patch is complete and accurate.
- Send the patch file to the committer. The committer will review the patch, apply the patch to a local enlistment, run the DRT, and (assuming all goes well) commit your changes.
LabKey requires that everyone committing changes to the source code repository exercise reasonable security precautions. Follow all recommendations of your organization including but not limited to:
It is the responsibility of each individual to exercise reasonable precautions to protect their PC(s) against viruses. We recommend that all committers:
- Run with the latest operating system patches
- Make use of software and/or hardware firewalls when possible
- Install and maintain up-to-date virus scanning software
We reserve the right to revoke access to any individual found to be running a system that is not properly protected from viruses.
It is the responsibility of each individual to ensure that their PC(s) are password protected at all times. We recommend the use of strong passwords that are changed at a minimum of every six months.
We reserve the right to revoke access to any individual found to be running a system that is not exercising reasonable password security.
Because all files in the LabKey Source Code repository are accessible to the public, great care must be taken never
to add confidential data to the repository. It is the responsibility of each contributor to ensure that the data they add to the repository is not confidential in any way. If confidential data is accidentally added to the source code repository, it is the responsibility of the contributor to notify LabKey immediately so the file and its history can be permanently deleted.