Requests for comment/Extension release management
This (fairly old) RFC has been slightly abandoned by it's original proponents and has since been rolled into RFC — Extension manager. --Daniel Renfro 17:02, 2 June 2014 (UTC)
And then into Requests for comment/Improving extension management.
See also: Requests for comment/Extension management with Composer and Requests for comment/Extension manager
Extension release management | |
---|---|
Component | General |
Creation date | |
Author(s) | Daniel Renfro |
Document status | declined |
Problems to solve
edit- Extensions authors have no real way to specify "releases" according to their own development schedule
- There is no way to track if version X of an extension works with version Y of MediaWiki
- Extensions not in subversion (eg: pasted into the wiki) tend to be not well supported and contain security risks
Requirements
edit- Must be deployed on MediaWiki.org
- Track releases of MediaWiki core - release dates, EOL dates, branch points paths to branches/tags, etc.
- Track releases of Extensions - same deal
- Track compatibility of released extensions with core MediaWiki releases
- Provide this information via special pages and the API
- Extension pages can ONLY exist (excluding subpages) if an extension has been defined in the database, a path to the repo given, and author(s) defined [problem 3]
- Consider migration issues for existing extension description pages; at a minimum, it should be straightforward to attach them to a new record and start copying version information manually.
- I was considering moving the whole namespace to like Oldextensions or something. Extension pages should be fully editable, once an extension exists, and subpages should be unrestricted as well. We can then move pages back in once we start populating the data. It'll be a huge effort, but one-time and will really help us clean up the documentation.
- Consider migration issues for existing extension description pages; at a minimum, it should be straightforward to attach them to a new record and start copying version information manually.
Nice to have
edit- Fold ExtensionDistributor functionality into this, since we're tracking release information
- Make infoboxes on Extension: pages auto-populated with release information, authors, etc.
- Some parser functions like {{#latestreleasenum:extname}} or {{#supportedrelease:extname|number}} - helps with templates, documentation, etc etc.
User interface
edit- Special:ExtensionManagement - Would allow for creating new extensions, assigning authors, adding releases, etc
- Special:Extensions - Provide categorized information about extension(s), release dates, compatibility, path to download, authors, etc.
- API modules providing the same information