Processes

Revision 35 as of 2013-11-28 23:24:41

Clear message

Meetings

The Xubuntu community meeting will be held as often as the Xubuntu team sees fit, but it's encouraged to have at least one meeting per month. The community meetings are held in #xubuntu-devel and usually chaired by the XPL. When the XPL is not available, any other team lead can chair the meeting as well. If no team leads are available, the rest of the attendees are encouraged to have an informal meeting and inform the Xubuntu team of any discussion had.

During any of the sections, the chair can assign action items to individuals or teams with their permission. The chair should take care to copy these items to blueprint work items where applicable.

Release Cycle

The release cycle consists of 5 more or less overlapping stages, which are:

Planning

Developing

Testing

Releasing

Maintaining

Planning

Planning the release is conducted in three phases:

  • Brainstorming
  • Approving blueprints
  • Finalizing specifications

In the brainstorming phase the contributors determine what they would like to work on during the release cycle, including proposals for changes in default applications. Anybody can items to the list. Settling on the goals in advance will make planning, focusing and estimating the likelihood for the features to be implemented easier.

After the brainstorming is over and before or on the Feature Definition Freeze day, the Xubuntu team will approve or reject the proposed blueprints. Any items with no assignee or rationale will be automatically rejected, but having them will not guarantee that the blueprint is approved. Other criteria include, but are not limited to: likelihood of getting the feature implemented, maintenance weight in the future, possible stability issues, influence on other blueprints, et cetera. The approved blueprints compose the roadmap for the release being developed.

After blueprints are approved, they should be finalized and detailed specifications should be written. These specifications should document the proposed changes and help guide the implementation. The Ubuntu freezes define the deadlines for implementation.

Developing

In addition to implementing the features and/or improvements set in the roadmap, there are a number of tasks which will occur during each release cycle:

  • Xubuntu packages will be synced or merged with Debian as appropriate
  • Bugs reported by users will be reviewed, fixed, and/or passed upstream
  • Attempt to reduce our delta by pushing appropriate patches upstream
  • Evaluate the seeds to ensure we are shipping the optimal software
  • Work on improving and updating the Xubuntu documentation

Testing

Throughout the release cycle and even more so nearing the end, we will test Xubuntu to ensure that Xubuntu is a quality product that we are proud of. This includes testing that changes we have been making meet the release goals, work as expected, and do not cause regressions. Any tests run should be reported to the QA trackers. To read more about conducting tests and reporting them, refer to the QA tracker wiki page.

The Xubuntu testing team will help ensure that when milestone ISOs are released, all tests are completed and results reported to the tracker. Xubuntu testers will also test the daily builds, upgrading through supported release paths and running the development version of Xubuntu on a daily basis to help detect problems. The most important goals for testing the daily images are simply to find as many bugs as possible and report them with sufficient detail to the tracker along with the ISO testing result.

The Xubuntu testing team also helps test applications that are included in Xubuntu and make sure sufficient amount of testing is made and results reported to the packages tracker. Additional testing should be conducted when a new default application is to be included in the next Xubuntu release.

Releasing

When it comes time to deploy a release (both milestones and final) several conditions must be met:

  • Appropriate testing has been done on the image
  • There are no known bugs which cause data loss or damage to hardware
  • The image must not be oversized
  • Xubuntu must be of sufficient quality that it would not damage Xubuntu's, Ubuntu's, or any of the other flavors' reputation/image.

When a release is made, the Xubuntu Release Team must follow the release process specified below. The release process ensures that the new release has sufficient release notes and release announcement and that all release-specific communication is updated to inform about the new release. Where needed, advice from the Ubuntu release team should be asked for.

Documentation String Freeze

Update translation templates

14 days before release

Notifications of freezes
Reminder to update the website FAQ (final release only)

7 days before release

Gather people for milestone testing
Start preparing release notes and release announcement

5 days before release

Smoketest images

3 days before release

Start milestone testing

1 day before release

Review release notes

Release day

Mark images ready on the ISO tracker
Publish release announcement and notes
Update the website, IRC channel topics and social media outlets with new release information

After release (final release only)

Update the developer wiki to next release
Set up appropriate branches (documentation, ...) in Launchpad
Review and update this page

Maintaining

After a release is made, bugs and problems are bound to be reported. The period between the release and the start of the next release cycle is the optimal time to perform Stable Release Updates (SRU) for major bugs as long as developers do not forget to fix the issue in the next release as well, once the repository opens. Once the next release cycle has started, primary focus will be on the next release and the severity/importance of the SRU candidates will be more important when it comes to deciding whether an SRU will be performed or not.

Wiki maintaining

Update on release

Xubuntu/Toolbox/Menu

 Update the middle column header

Xubuntu/Roadmap/Goals/Codename

 Add a new roadmap page (easiest way is to copy over the old one)

Xubuntu/Roadmap

Point the include to the new roadmap subpage

 Xubuntu/Roadmap/Specifications/Codename

Add a new page with navigation: <<Navigation(children,1)>>

Xubuntu/Roadmap/Specifications

Update the form to point new specifications under the correct subpage

Update monthly

Xubuntu/TeamReports

Add links to xubuntu.org posts and meetings, also Team updates from meetings, see also: TeamReporting

XPL nominee wiki page requirements

To increase transparency and to make sure relevant information is available for the Xubuntu team members to vote, the nominees are required to provide a wiki page with at least the following information:

  • A brief history of the nominee in the FOSS world
  • Activities in any relevant teams
  • Thoughts about the Xubuntu development, including the biggest challenges and possibilities
  • Areas of interest as a XPL, including any changes the nominee is wishing to see in the team