Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Equinox p2 1.0 Technical Specs

Revision as of 21:53, 1 November 2007 by Pascal rapicault.ca.ibm.com (Talk | contribs) (User interaction)

THIS DOCUMENT IS STILL UNDER REDACTION

This page details some of the technical specifications of p2 1.0. Readers interested in a higher level view of end-user function should see the p2 feature sheet.

Tooling

Build integration

Ant task to produce repositories
Provide an Ant task allowing generating metadata and publishing it and the corresponding artifact in repositories. This is a wrapper of the generator application.
Priority: 1
Ant task to provision products
An Ant task wrappering the director application to allow automated scripts to produce p2 enabled applications.
Priority: 1
Ant task to optimize a repository
An Ant task wrappering the repository optimizer application.
Priority: 1
Modification of the build infrastructure to produce artifact and metadata repos
Revisit the PDE Build scripts to streamline the production of repository as part of the build.
Priority: 1
Modification of the product build to produce p2 eanbled products
Revisit the PDE Build scripts to integrate the generation of p2 enabled products as part of the RCP product build scripts.
Priority: 1

Self-hosting

Generation of artifact / metadata repo from the content of the workspace
This is the core of the selfhosting infrastructure. It monitors the content of the workspace and produce appropriate IUs.
Priority: 2
Provision on launch
Priority: 2
Target provisioner reading the bundles.txt
Provide a target provisioner that reads the bundles.txt of any eclipse install.
Priority: 1, M4
p2 aware target provisioner
Provide a target provisioner invoking a UI to provision IUs into the target.
Priority: 2
Repository browser
Browse repositories from the IDE and also allow for addition / removal of repo content.
Priority: 1
How does the source gets provisioned in the target
Priority: 1

Metadata generation

Converter from site.xml to p2 categories
Priority: 1
Metadata generator advises
Define how to give input to the generator to change how IUs are being generated.
Priority:1
Site optimizer application
Priority: 1

User interaction

Have a preference to allow for automatic download before installation
N/A
Have a preference to perform silent installation
N/A
A way to present remembered signatures
N/A
Better presentation of licenses
N/A
Support for installation even when there are errors in the configuration
Priority: 2
Callable UI
Presentation of signatures
Presentation of licenses
Smooth workflow

Download technology

Adaptative download manager
Priority: 2
MD5 / SHA1 processing steps
Priority: 1
Delta processing step
Priority: 1
Transparent selection of artifact repository
Priority: 1
Pack 200 support
N/A

Core technologies

Response file
Priority: 2
provide infrastructure to remember accepted signers per profile
Priority: 1
provide infrastructure to remember accepted licenses per profile
Priority: 1
support for invoking the engine on a phase basis
Priority: 1
governor
Priority: 1
need a way to express the governor permissions
Priority: 1
Need a way to ensure that a bundle pool is only used by one agent to avoid problems with GC
Priority: 1
define how categorization of site is done
Priority: 1
simple configurator policy
N/A
framework admin, review the performance on big scenarios
Priority: 1
simple configurator, ensure startup performance
Priority: 1
simple configurator, ensure start level order
Priority: 2
reconciliation with bundles watched from directories
Priority: 1
support to restart failed download.
Priority: 2
phases
Priority: 1
persistence of actions
Priority: 1
support for fixes in the metadata
Priority: 1
support for update in the metadata
Priority: 1
support for sequenced update in the metadata
Priority: 1
translation of metadata
Priority: 1
Discovery of JRE and how do we deal with changing JREs
Priority: 1
make the agent dynamic
Priority: 1
Scalability
Priority: 1
Movable installs
Priority: 1
Variables
Priority: 2
Nested profiles
Priority: 3
Do we need to separate the configuration from the installation
Priority: 1
Locating files in one IU
Priority: 1
Locating files in another IU
Priority: 2
Support to canonicalize version numbers
Priority: 2
Shared agent data access
Priority: 1
Scope which repositories are used for a given operation
Priority: 2
Repositories associated to a profile
N/A
Separate meta-level capabilities and requirements from the base level ones
Priority: 1
Expression of dependencies
N/A
policy to purge the rollback registry
Priority: 1
support for the rollback registry to keep track of why there is this entry in it
Priority: 1
Artifact garbage collector
Priority: 1
Metadata garbage collector
Priority: 1
directory watcher policies
Three variations:
  • call Director.install() and potentially generate metadata (Priority: 1)
  • to call FwkAdmin.addBundle() (Priority 2)
  • to call BundleContext.installBundle() (Priority 2)
shared installs
Priority: 1
sharing of bundles across eclipses
Priority: 1
Ability to share the agent data across multiple running processes
Priority: 1
Support for undo-ing an operation after an agent crash
Priority: 1
Support continuing of an engine operation upon restart of the agent
Priority: 1
Support for DBCS in repos, in install path and other Uis
Priority: 1
Support for multiple bundle artifacts in one IU
Priority: 2
Review the concept of flavor and the default flavor we ship
Priority: 1
Refine the concept of marker
Priority: 1
Ability for touchpoint to cause a runtime to be started / stopped / restarted
Priority: 1
Do we need to have a mechanism to replace the UM policy files
Priority: 1
Ability to update eclipse.exe
Priority: 2
Ability to specify multiple bundle pools
Priority: 1
Installing bundles in a non running eclipse
Priority: 1

Repositories

Have a way to allow repositories to refer to others (this means mirrors or not)
Priority: 1
embedded repos
Priority: 1
published repos
Priority: 1
Ability to publish artifacts with known processing steps
Priority: 1
Have a repo within a jar for a given bundle
Priority: 1
Authentication to connect to a repository
Priority: 1
Implement ways to have trusted repositories
Priority: 1

Dependency on other Eclipse components

Platform

  • Markup for dynamic bundles
  • Support to get the proxy / socks from the OS

ECF

  • make sure proxy / socks settings are honored properly
  • Support for https
  • Authentication to connect to an http server
  • Exchange of certificates on connection

Equinox

  • Storage and management of certificates
  • Storage of login information in a session

UM Compatibility

Do we have to keep delivering the features?
N/A
How do we deal with platform.xml?
N/A
Do we allow for the installation of old style update site content through the new UI
N/A
Do we leave the old API?
N/A
Do we change UM to produce a bundles.txt instead of a platform.xml
N/A
Review the different UM policies and how they map/apply in the new world
N/A


Permission based control of provisioning operations
When a provisioning operation is performed, permissions are checked to ensure that the operation is acceptable in the given context. Priority: 1

Back to the top