Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Equinox p2 Galileo Features"

(Redirecting to Equinox/p2/Galileo/Features)
 
(21 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page highlights the features and function available to end-users in p2 Galileo. The general themes for this release are robustness, ease of use, more direct value-add to our users, and be a better platform.
+
#REDIRECT [[Equinox/p2/Galileo/Features]]
Readers interested in additional ''under the covers''  details should see the ????? and also bugzilla
+
 
+
== User Interaction ==
+
; '''Improve overall usability'''
+
: Review the overall usability of the current UI. See also [[Equinox_p2_UI_Plan | p2 UI plan]]. Priority: 1.
+
: Improve the error messages provided in case of inability to install. Priority: 1.
+
: Allow for selection of the optional pieces. Priority: 2.
+
 
+
; '''Better shared install'''
+
: Improve the management of shared installs to allow for the end user to not lose the extensions installed. Priority: 2.
+
 
+
; '''Browser-based installation'''
+
: Installation of new function can be triggered by users clicking on a link in a browser.  Priority: 2.
+
 
+
; '''Closer integration with the VM'''
+
: Provide a way to change the VM being used by Eclipse through the UI and thus trigger the appropriate provisioning actions. Priority: 1.
+
 
+
; '''Ease the installation of extension and bridges plug-ins'''
+
:
+
 
+
; '''Ease the management of complementary items'''
+
: Provide a way to change language in the UI (and always automatically install the language pack)
+
: Provide a way to install doc automatically when available
+
: Provide a way to install source for the installed bundles
+
 
+
; '''Installation duplication'''
+
: Provide a way to create a new install from the existing one. Priority: 2.
+
 
+
; '''Promote the usage of an installer'''
+
: In order to promote bundle pooling, we need to promote the usage of an installer and make it more robust than it is today. Priority: 1.
+
 
+
; '''Tighter desktop integration'''
+
: Provide ways to better integrate an Eclipse based application with the desktop (e.g. desktop shortcuts, registry keys...). Priority: 1.
+
 
+
; '''Repository announcement/discovery'''
+
: Provide the ability for repositories announce themselves and also be discovered by p2. Priority: 3.
+
 
+
; '''Recovery application'''
+
: Provide a recovery application allowing the user to revert to a previous well-known state in case where the installation has been left in a broken state as a result of the last installation. Priority: 3.
+
 
+
==Download technology==
+
; '''Download integrity through MD5/SHA1 and signature verification'''
+
: The integrity of downloaded artifacts can be verified using MD5/SHA1 hashing algorithms and/or signature verification.  Priority: 1
+
 
+
; '''Improve Adaptive downloads and mirror selection'''
+
: p2 currently has a simple adaptive download scheme. This could be improved by taking into account aspect of the download such as artifact type available, artifact processing time, download speed, etc. Priority: 2
+
 
+
; '''Restart from partial downloads'''
+
: In presence of very large artifacts, p2 needs to be able to restart a download where it left off. Priority: 2.
+
 
+
; '''Download time estimation'''
+
: Estimation of the download time as the download progresses.  Priority: 2
+
 
+
; '''Media support'''
+
: p2 supports and properly manages the interaction with repositories stored on removable and ''volume-oriented'' media such as CDs, DVDs.  Priority: 2.
+
 
+
; '''Robustness / responsiveness / user friendliness'''
+
: p2 needs to be robust when downloading from misbehaving servers and still provide an overall good responsiveness. Also it needs to provide more precise messages wrt download failures (e.g. distinguish between missing file, unknown host, no connectivity, etc.). Priority: 1.
+
 
+
== Update Manager replacement ==
+
; '''Replace update manager completely'''
+
: In addition of installing and configuring plug-ins, update manager constructs were being used by other components to drive certain aspects of the  UI, the branding, primary plug-in, etc. p2 needs to provide a replacement for these constructs. Priority: 1.
+
 
+
; '''Mechanism to execute arbitrary code'''
+
: UM provided with install handlers a way to execute arbitrary code. p2 replaced this with the concept of touchpoints however lost some flexibility there. We need to reinstate this flexibility whether it is by automatic provisioning of touchpoints or by having an escape mechanism. Priority: 1.
+
 
+
 
+
== Core facilities ==
+
- API
+
 
+
; '''Review touchpoint contribution model'''
+
 
+
; '''Dynamic provisioning of missing touchpoints / tp actions'''
+
 
+
; '''Making the agent fully dynamic'''
+
 
+
; '''UI building blocks'''
+
 
+
; '''Reaction to config changes'''
+
 
+
; '''Improve robustness of installation'''
+
 
+
; '''Improve the eclipse touchpoint'''
+
 
+
; '''Metadata improvement'''
+
: Line-ups
+
: ORs, NOTs
+
 
+
; '''Generic Metadata'''
+
:* Define a generic model of capabilities / requirements. Priority: 2.
+
:* Line-ups
+
:* Define the way by which some capabilities get populated. For example how do we know the OS. See also JRE reconcialiation pb which is similar. Priority: 2.
+
 
+
; '''Headless operation'''
+
: All p2 function is accessible through command-line or programmatic interfaces.  Complete installation operations can be performed without a graphical user interface.  Some operations support the use of response files to silently provide input. Priority: 2
+
:* Support to get the input from a response file. Define this in relationship with the callable User Input service. Priority: 3.
+
 
+
; '''Garbage collection of unused bundles'''
+
GC policies: Priority 2
+
▪ Metadata garbage collector. Priority: 2.
+
▪ Need a way to ensure that a bundle pool is only used by one agent to avoid problems with GC. Priority: 1.
+
▪ Collector of dl cache
+
+
 
+
; '''Sequenced provisioning'''
+
: Users and developers can mandate that various update and install operations must be executed prior to attempting subsequent operations.  Priority: 2
+
 
+
; '''Multiple processes modifying the same profile registry / profile'''
+
: Lock the repo when writing from multiple profiles
+
: Multiple process modifying the profile registry and the GC
+
 
+
- prepopulating the profile with properies (e.g. VM) / profile provide capabilites, discovery of what is installed / qualification
+
 
+
== Tooling / plug-in developer ==
+
- Install into a target Create target
+
- Provide a way to install source automatically when available or allowing it to be installed automatically after the fact
+
 
+
; '''Repository tooling'''
+
: Repository edition tool
+
: Mirroring tool
+
:
+
Repository navigation tools (mirror, slice, validate)
+
- p2 self hosting
+
- IU Authoring
+
 
+
; '''Repository browsers and editors'''
+
: p2 tooling includes browsers and editors for the artifact and metadata repositories.  Users can view, add and remove elements from local and remote p2 repositories.  Priority: 2
+
:* Provide viewers to browse repo content
+
:* Provide addition / removal capabilities of item into repository
+
:* Provide IU / artifact correlation tool to check if all the artifacts of an IU are available in an artifact repository, to remove all the artifacts related to an IU, etc.
+
 
+
; '''Metadata Authoring'''
+
: p2 tooling will offer the ability to author installable units. Priority:3.
+
:* Define a serialized format of IUs for edition purpose.
+
:* Define an editor and a model allowing for ease of edition.
+
:* ...
+
 
+
: '''Repository tooling'''
+
Mirroring, etc.
+
 
+
;'''Mirroring tools'''
+
: Artifact and metadata repositories can be duplicated in whole or in part using a set of tools included in p2.  Priority: 2
+
:* Application and Ant task to invoke the mirroring application. Do we get much over rsync?
+

Latest revision as of 13:20, 10 September 2008

Back to the top