(→How the code reaches the Trunk/Release) |
(→Step 1: Review by Release Engineers) |
||
| Line 45: | Line 45: | ||
* Package upgrades must have a Feature or Bug # corresponding to it. | * Package upgrades must have a Feature or Bug # corresponding to it. | ||
** If none exists, file new Bug or Feature and describe why this change is needed in MeeGo | ** If none exists, file new Bug or Feature and describe why this change is needed in MeeGo | ||
| - | ** For minor upgrades to pkgs that mostly include bug fixes, a Bug will suffice. For major upgrades that include new features or major API changes, a Feature # is required. | + | ** For minor upgrades to pkgs that mostly include bug fixes, a Bug will suffice instead of a Feature. For major upgrades that include new features or major API changes, a Feature # is required. |
| - | ** '''Note:''' If your package | + | * Package bug-fixes must have a Bug # corresponding to it. |
| + | ** If none exists, file new Bug and describe why this change is needed in MeeGo. | ||
| + | ** '''Note:''' If your package bug-fixes doesn't touch actual code, or is merely a cosmetic (configuration) change, no Bug number is required. | ||
* Package is submitted from corresponding devel:* project by one of project maintainers. | * Package is submitted from corresponding devel:* project by one of project maintainers. | ||
* Package has clear change description and references to bugs and/or features (see [[Packaging/Guidelines#External_References|packaging guidelines on format]]) | * Package has clear change description and references to bugs and/or features (see [[Packaging/Guidelines#External_References|packaging guidelines on format]]) | ||
Contents
|
Between releases in the active development cycle, work for MeeGo will run in weekly iterations, producing nightly builds and weekly releases from the Trunk. The resulting build from each iteration is used to track development progress. The diagram below shows the timing for the weekly cycle - unless otherwise noted in the diagram, all times are GMT.
Daily is the repository where the trunk output with the latest changes lands. This is the bleeding edge of development. This repository can be added to images but should be disabled by default.
MeeGo images created and delivered to QA and are non-official images. They serve to test major changes introduced into the Trunk testing. Release Engineers have the discretion to accept, reject, or queue submitted changes after the image has been finalized. Feedback may be given on the daily releases to increase the usability of the MeeGo weekly releases.
In principle, changes can still go in for the final weekly release, if the changes meet the following criteria:
Integrating new code to Trunk or a release must not break the MeeGo reference images. The reference images represent product categories, SDK, and other configurations that need to be in place for MeeGo to function, development to continue, and products to use MeeGo. MeeGo will provide facilities to help developers test against the different references.
The first level of integration is called Staging, where developers work with the packages in OBS development projects. The package maintainer pushes the project towards the MeeGo Trunk:Testing projects. MeeGo will provide an automated testing facility where test cases can be contributed. This will provide results from the different MeeGo references, since in many cases it is not feasible to obtain all the different reference devices.
When test results are of a sufficient standard, the package maintainer pushes his/her code towards the MeeGo Trunk:Testing project. These contributions are reviewed by the MeeGo Distribution/Platform maintainers and tested against the current Trunk. If they pass, QA packages are promoted to the Trunk.
Note: Processing of requests containing packages that delve lower in the dependency hierarchy may be postponed (usually done during the weekends). This is due to the fact that processing the said package(s) will trigger a lot of rebuilds and the builders are comparatively idle during the weekends. Here is a sample list of 'special' packages.
Developer Submission Checklist
MeeGo supports a wide range of different categories of products and the release process tries to accommodate the different requirements of each product category. The Release process takes into account the following three aspects of successful product creation: