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 Features

Revision as of 11:33, 30 October 2007 by Jeff-bugs.code9.com (Talk | contribs) (Security)

Tooling

Generation of p2 repositories at build time
The PDE build mechanism produces metadata and artifact repositories as part of the normal build. Priority: 2
Generation of p2 enabled products at build time
The PDE build mechanism produces all of the p2 related artifacts and metadata (e.g., install registry, profile, ...) when RCP apps are being built. This allows applications deployed as zips to be p2 enabled out of the box.
Ant task to produce repositories
N/A Priority: 1
Ant task to provision products
N/A Priority: 1
Streamlined p2 self-hosting
PDE incrementally and continuously produces p2 metadata and artifact information based on the contents of the workspace and target platform. This simplifies the development of p2-enabled applications by eliminating the need for time-consuming deployment and export cycles while testing and allowing developers to install bundles directly from their workspace without exporting or deploying. Priority: 2
Provisioning the target
PDE's Target Provisioner mechanism has been extended to allow the use of p2 when adding bundles to the target platform. This allows bundle developers to benefit from all facilities in p2 when managing their targets. Priority: 3
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
Migration tools
Developers can deploy existing features and Eclipse product configurations into p2 repositories using p2 Publisher tools that automatically transform runtime and Update Manager markup into p2 data structures and add this data and artifacts to the relevane repositories. Priority: 2

User Interaction

Directory monitoring
In order to improve the management of plug-ins, the user could install Installable Units by drag and drop an archive on the window of a running Eclipse. Several mode of installation could be supported: direct call to BundleContext.installBundle(), FwkAdmin.installBundle(), Director.install(). Priority: 1
Drag and drop installation
Users can install new function by dragging and dropping the related files (JARs, directories, zips, ...) on a running Eclipse. Priority: 1
Browser-based installation
Installation of new function can be triggered by users clicking on a link in a browser. Priority: 2
Update scheduling and policies
p2 supports a number of update policies allowing users to, for example, set update polling periods, have detected updates automatically downloaded, downloaded and installed, etc. Priority: 1
Headless operation
All p2 function is accessible through command-line or code 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
???? Remembered licenses
Users are able to accept licenses and not be asked each time such remembered licenses are encountered. The set of remembered licenses is managed through a preference page that allows for licenses to be added and removed. Priority: 1
Remembered signers
The dialog presenting signatures should give the ability to trust this signer forever. The remembered signers can be revoked through a preference page. Revoking a license will not cause the uninstallation of the software. Priority: 1

Sharing and central management

Garbage Collection
 ??
Bundle pooling
 ??

Download technology

Automatic detection of proxy/socks settings from the OS/Browser
Proxy and socks settings available in the OS are detected and automatically integrated in Eclipse. Priority: 2
Adaptive downloads and mirror selection
p2 dynamically adapts its artifact download strategy based the characteristics of the servers available, the connection speeds and the system being provisioned. Retries are automatically attempted and mirrors re-selected depending on failures. Priority: 1
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
Integrated compression technologies
p2 allows artifact repositories to maintain artifacts in a variety of formats (e.g., compressed using pack200, class and binary deltas relative to previous versions, etc.). Priority: 1
Peer-to-peer downloads
Since all downloads in p2 are based on a mirroring metaphor, artifacts can come from artifact repositories on central servers or peer machines on a local network. (Priority 1)
Transparent restart
Aborted installations and downloads can be restarted without refetching the artifacts. Priority: 2
Secure transports (https, ...)
Secure transports such as https are supported. Priority: 1
???? Download time estimation
Estimation of the download time as the download progresses. Priority: 2
Repository trust
p2 has the ability to identify repositories as trusted or untrusted as well as white and black lists of domains. Priority: 2
Repository chaining
Repositories are able to reference other repositories and thus inform p2 of additional sources of artifacts and metadata. Priority: 1
Support for login into repositories
p2 supports a variety of mechanisms for authenticating to servers. Priority: 1
Media support (CDs)
p2 supports and properly manages the interaction with repositories stored on removable and volume-oriented media such as CDs, DVDs. Priority: 1

Security

Metadata signing
Metadata is signed to ensure content integrity. Priority: 3
Support for login into repositories
p2 will honour servers requesting authentication. Priority: 1
Trusted repositories
p2 should have the ability to identify trusted repositories against others. The trust could be done through an exchange of keys. Priority: 1
Secure transport (https, …)
Support secure connection to http. Priority: 1
Jar signature check
Signed jars being downloaded will be verified. Priority: 1
Trusted repositories
p2 should have the ability to identify trusted repositories against others. The trust could be done through an exchange of keys. Priority: 2

Core technologies

Permission based control of provisioning operation
When a provisioning operation is performed, permissions will be checked to ensure that it is acceptable to do it in the given context. Priority: 1
General model of dependencies
Installable Units will be able to express dependencies on things other than other Installable Units (e.g. memory available on the machine, etc.). Priority: 1
Shared installs
Scenarios where the installation of eclipse is shared across multiple users is streamlined. Priority: 1
Sharing of bundles across systems
Multiple eclipse instances share the bundle jars in one common location (aka bundle pool), thus making the installation faster and the required disk footprint smaller. Priority: 1
Garbage collection of unused bundles
Bundles being shared across multiple instances of eclipse will be garbage collected when they are no longer in use. A retention policy will be applied. Priority: 1
Create new installs without re-downloading all the artifacts
p2 is able to create a brand new install of a product already installed with minimal or no download depending on the retention policy of the garbage collector. Priority: 1
Resilience to install problems
p2 provides a best effort approach to ensure that failed installations do not leave the system in an inconsistent state. Priority: 1
OS integration
p2 provides support for a tighter desktop integration. Priority: 2
Support to deliver fixes
Support to deliver fixes. Priority: 1
Sequenced udpate
Allows to express that one particular update has to applied on the path to another one. Priority: 2
Fine grain installation of IUs
Allow for the installation of Groups as well as single IUs. Priority: 2
Install in a non running system
Allow to install IUs into an Eclipse that is not running. Priority: 1
Installability of another state
Previous states of the system are being kept to allow for recreation of a setup used in the past. It could allow for installing somebody else state. Priority: 1
Revert to the previous install
When an installation has succeeded but the result is not satisfactory it should be possible to revert the system to the "exact" same state as it was before.

UM Compatibility

Content of 3.3 styles update site will be installable without change
Update site created with former versions of eclipse will be installable

Back to the top