By nature, open source contributions generally do not fit well into schedules, but getting them into the main stream of viewer development does require some structure. If you have work that you'd like to do, it helps to understand our Viewer Integration and Release Processes.
If you are looking for tasks you can use to get familiar with how to work on the viewer, check out the Open Source Development Ideas filter.
There is a page on How To Propose A Viewer Feature; the Snowstorm team meets every other week with the Product Team (an internal cross-functional group) to review open source proposals for open source contributions. The goals of this review are:
- To determine whether or not the proposal is one that fits into our vision for the viewer
- To ensure that it does not conflict with other work being done inside the Lab
It helps to have a comprehensive and specific description of the proposed change; what the user interface will be, how it will affect the shared experience of users, what backward compatibility issues it may have, etc. For obvious bug fixes, the review can be nearly pro forma, but even then we may ask you to wait until another time or to modify the proposed fix in some way. The result of this review may be that we will ask you to modify or refine the idea further, or we may decide that it is not suitable for inclusion in the main viewer code.
|Note: Changes that introduce new Viewer features may not be submitted for integration without having a proposal reviewed and accepted first. Changes to fix a bug that the triage process has Accepted may be submitted at any time so long as all integration criteria have been met (but a proposal for these is a good idea).|
The review and QA process of Snowstorm issues is reflected in the Jira workflow, so you can track the status of any contribution by watching its status there. This flow is described in How To Submit A Viewer Change#Open Source Submissions.
Other Helpful Links
- Develop Viewer Code a quick overview of how to set up and manage your working repositories
- More comprehensive Mercurial workflow (not needed for small changes)
Questions & Answers
- Who gets commit access?
- Commit access by open source contributors is not available to any Linden Lab repository, including viewer-development.
- Individual development teams, whether inside or outside Linden Lab, decide who has commit access to their Project branches.
- For the Development branch, the Snowstorm Team has a JIRA-based queue for requests for integration (pull requests) from Project branches that have met the integration criteria. The Snowstorm team commits to servicing the items in that queue within 1 business day.
- Which issue tracker are we using?
- We use the public Jira. New issues should be created in the BUG project, and we'll move appropriate open issues from there and Linden Lab internal projects to the public STORM process.