Version 53.1 by Thomas Mortagne on 2011/10/06 15:12
Manages Extensions (install, uninstall, upgrade) |
Type | components |
Category | |
Developed by | Unknown |
Rating | |
License | Unknown |
Table of contents
Description
History
- (since 2.5): make possible to install/uninstall/upgrade a fully working ruby macro and dependencies with basic UI
- download extension from remote repositories to a local repository
- resolve extension dependencies in a list of repositories
- install jar extension
- load jar in a classloader
- load extension components
- make sure the extension classloader is the execution classloader (so that scripting classloader use it as parent classloader)
- uninstall jar extension
- unload extension components
- unload jar from classload
- load jar extensions from local repository at startup
- make sure only valid extensions are loaded (i.e. if a dependency is missing the extension is not loaded)
- list installed extensions
- compare extension versions
- (since 3.0):
- add minimalistic xar support (XWIKI-5557)
- install/uninstall/upgradde a xar extension
- the xar can have infinite number of pages and attachments, it's just limited by the size of each attachment right now until the storage API support fully streamed attachments
- very limited upgrade: import add a new version to make sure to not loose anything, there is no real document merging handling
- delete pages from old version not in the new version when upgrading a xar extension (XWIKI-6102)
- add multiwiki support (install any extension on a specific wiki only) (XWIKI-5705)
- add extension events (XWIKI-6101)
- add minimalistic xar support (XWIKI-5557)
- (since 3.1):
- XWiki extension repository (XWIKI-6574)
- custom properties to extensions (XWIKI-6213)
- (since 3.2):
- full automated 3 ways merging of xar pages (XWIKI-6650)
- virtual extensions (XWIKI-6742)
- improved reporting (XWIKI-6781)
- moved local repository to container persistent directory (XWIKI-6958)
- complete rewrite of the XWiki Repository REST protocol (XWIKI-6871)
- display all descriptor informations when resolving an extension (XWIKI-6967)
- (since 3.3):
- starting first final UI (XWIKI-6775)
- starting stabilization of the API
Future
See Extension Manager design page.
Quick overview
Core principles:
- The extension manager supports any kind of repository (maven, extensions.xwiki.org, etc.).
- The Extension manager supports any kind of extension (jar, xar, skin, etc.).
- Each extension can have dependencies located in any repository.
- An extension can be installed/upgraded/uninstalled on any wiki or in the whole farm.