Hi devs,

Following the proposal thread at http://markmail.org/message/ppw2slpgqou2ihai 
I’d like to move on and I’ve prepared below a full proposal that I’d like us to 
VOTE on.

Rationale/Need
===============
 
The needs:
* Be able to extract some apps from xwiki-contrib that the XWiki Dev Team would 
like to maintain. Example: File Manager app developed by Marius when it’ll have 
had some releases and tests (if it doesn’t have some already!), GitHub Stats 
app used on xwiki.org, Meeting Manager App, Forum App, etc
* Be able to extract some extensions currently located in xwiki-platform but 
not released with XE so that they can have a different release cycle (examples: 
FAQ app, IRCBot extension, JIRA macro, etc). Having different release cycle 
allow to release new versions quicker to our users (bug fixes, new features).

Governance
==========

Details:

* Extensions are VOTEd in on a case by case basis.

* Each voted extensions will have its own Git Repository in the “xwiki” 
organization (so that each extension can be released independently of each 
other).

* When moving an extension either from xwiki-contrib or from xwiki-platform, 
keep its Git history as much as possible or simply donate the repo to the 
“xwiki" organization.

* FTM extensions bundled by default with XE would still remain in XWiki 
Commons/Rendering/Platform/Enterprise.

* The Git repository name should be of the form xwiki-<short project name>. 
<short project name> should be part of the VOTE.

* All rules from http://dev.xwiki.org apply

* Each extension has a Release Manager defined and he’s responsible for 
defining its own Roadmap/Release notes (if need be), on the extension page on 
e.x.o and perform the releases or ensure the extension is released regularly 
when there are changes.

* Each extension must follow these criteria for being VOTEd:
** A Release Manager needs to be defined in the proposal
** The extension must have had several releases already (i.e. someone wanting 
to propose a new extensions that doesn’t exist would start in xwiki-contrib for 
ex and prove that his extension works and is useful by doing several releases 
and creating the pages on e.x.o)
** It must follow our best practices defined on http://dev.xwiki.org (coding 
practices, tests, etc) and follow the apps best practices (for apps), see 
http://dev.xwiki.org/xwiki/bin/view/Community/ApplicationDevelopmentBestPractices
** It must have one or several integration or functional tests (for apps) to 
prove that it works. This allows to prove the app continues working when XWiki 
progresses
** The main contributors of the extensions must agree about the move. If they 
have the “level" to be an xwiki dev committer then they should be voted in (see 
http://dev.xwiki.org/xwiki/bin/view/Community/Committership). If not then 
either they’re ok to send Pull Requests or the extension should not be moved.

* If an extension ceases to work or if its quality becomes too low, it can be 
moved to xwiki-contrib with a VOTE

* We would create one JIRA project per extension

* We would create a new JIRA Category called “XWiki Extensions”

* We would put the extensions in our CI at http://ci.xwiki.org

* The Java package should follow the same rule as for XWiki Platform, i.e. 
org.xwiki.<short project name>. Exceptions would need to be discussed.

* The group id for extensions having their own repo should be org.xwiki.<short 
project name>. The <short project name> needs to be part of the VOTE when 
proposing a new extensions.

Here’s my +1

Thanks
-Vincent


_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to