From Mageia wiki
Revision as of 13:03, 21 June 2013 by Malo (talk | contribs) (How to define and propose a feature: Update to mga4)
Jump to: navigation, search

Why this policy?

A lot of new features were proposed for previous versions of Mageia. Some were implemented but a lot still needs to be done. We miss priorities, real planning and well defined features so that people can be motivated and contribute.

What we define here:

  • what is a feature
  • how to define and propose a feature
  • how features are selected for coming specifications
  • how do we follow features implementation

All this work has been done after having a look on how other distributions do manage this important step. We sepcifically looked at Fedora as they have done a lot in formalizing process.

What is a feature

Only noteworthy changes should be proposed as features. Update of a component which involves modification or update of several other components is probably a feature. Something which involves some new development in Mageia tools is probably a feature. Update of a single package on which nothing depends, probably shouldn't be listed as a feature.

Example of features :

  • migration to systemd
  • grub2 support in the installer
  • GPT support in the installer

Example of things that shouldn't be listed as features :

  • update cowsay to latest version
  • fix crash of XXX package
  • add package for XXXX software

How to define and propose a feature

Everybody is free to propose new features for coming releases but this will have to be done using the following procedure :

  1. If not already done, register an account on http://identity.mageia.org to be able to edit the wiki
  2. create a wiki page of the name http://wiki.mageia.org/en/Feature:<feature_name> using the following template.
  3. When you think the feature page is ready :
    • add the page to the category ProposedFeatureMageia4 (add the text [[Category:ProposedFeatureMageia3]] at the bottom of the page). Your feature should then appear in the list of proposed features.
    • send an email to the dev mailing list, with the subject "Proposed Feature: featurename" to discuss the feature and let people know about it, so they can add themself to the page if they plan to participate

How to participate in a feature

If you think a feature is interesting, and you plan to help implement it, add yourself in the resources list.

List of proposed features

The list of proposed features is available on this page.

Criteria used to choose features

FeatureMageia3_Review

Here is a non exhaustive list of criteria:

  • wiki page to apply is complete on following items:
    • Summary
    • Owner
    • Targeted release
    • Detailed Description
    • Why it would be good for Mageia to include it
    • Software / Packages Dependencies
    • What could disrupt development of this new feature
    • Planning
    • Contingency (aka Plan B - what happens if it doesn't work)
  • amount of people that plan to be involved in the feature: a feature cannot be implemented if nobody plans to work on it

Features acceptance

After the end of feature proposal submitions, a mail is sent to the dev mailing list with a preliminary list of accepted and rejected features.

The accepted features have been reckoned as :

  • useful and consistent with the goal and policies of the project
  • having enough details
  • having a realistic planning
  • having enough people involved in the features
  • having seen no major and unanswered objections in discussions about the feature

The rejected features list includes for each feature the reason(s) for not accepting the feature. Features can be rejected for different reasons (non exhaustive list) :

  • not enough people plan to be involved in the feature
  • not enough details about the feature
  • missing planning or contingency plan
  • unrealistic planning
  • objections to the feature in discussions on the mailing list

When the preliminary list of accepted and rejected features is published, comments are received for one week :

  • objections to an accepted feature
  • comments adding more details to a rejected feature (description, planning, contingency plan ...)
  • people adding themself to the list of feature contributors

After one week :

  • accepted features that receive no new comment are officially accepted
  • rejected features that receive no new comment are officially refused
  • accepted features that receive objection comments are officially rejected unless a consensus is reached in the discussions
  • rejected features that receive additional details or interested contributors and reached consensus for acceptance in discussions are officially accepted

The final list of accepted features is :

  • published on the blog and wiki (added to category FetaureMageia3) and advertised
  • developement of the features is started according to the planning
  • the planning of each feature is monitored and discussed in developers meetings until the feature is completed

Rejected features are not included in the official specifications of the distribution, and planning is not monitored in developers meetings. Depending on the reasons for rejecting the feature, it can still be implemented by interested people.