< Features
Contents
Eclipse 3.4
Summary
Re-base to Eclipse 3.4 (Ganymede). What's new for this release? In addition to bug fixes and general improvements, there are some interesting new features. For example, there is the Equinox/p2 provisioning framework which replaces the old update manager. The new update manager is a lot easier for the end-user to update and maintain the workbench. In the JDT, multicore support has been added to ensure Eclipse is fast as possible for compiling Java code in the future. As well, a new feature called Plug-in Spy has been added which is a useful tool for plug-in developers to determine what plug-in supplies a selection class.
Owner
- Name: Andrew Overholt
Current status
- Targeted release: Fedora 10
- Last updated: 2008-09-16 by Jeff Johnston
- Percentage of completion: 100%
- Outstanding issues:
-
tag build in koji -
get p2 user UI working -
get builds going on non-upstream platforms -
get p2-ization stuff into package-build and eclipse-* %install sections -
run tests -
re-build icu4j, sat4j, tomcat5, and eclipse-*
-
Detailed Description
- The Eclipse project releases its IDE and development platform once a year. The most recent release in June 2008 is version 3.4 also known as Ganymede. A lot of improvements and functional additions appear in 3.4.
Benefit to Fedora
The latest bells and whistles :)
Scope
See 452875
-
use p2-
decide (with other distros and in consultation with upstream) about dropins location -
update pdebuild.sh to generate p2 metadata -
ensure our metadata is properly read by p2 if we're going to use the dropins approach for additional plugins -
ensure our arch-specific/arch-independent split still worksmove everything in the SDK to %{_libdir}/eclipse
-
-
ensure we have all dependent packages updated and OSGi-ified a la Orbit -
get sat4j reviewed -
ensure secondary arches can still build and runppc64 works. I assume other arches will also work.
Test Plan
Automated upstream tests, daily usage, 3rd party plugin installation
User Experience
The user should see a seamless upgrade from `eclipse-*-3.3.2` to `eclipse-*-3.4.0`. Unfortunately, 3rd party plugins users have installed (into `~/.eclipse`) will probably no longer work without re-installation (see Eclipse.org bug 223434.
Dependencies
-
`sat4j` (Review RequestDone.) -
OSGi-ifying: `objectweb-asm` (probably with a sub-package, `objectweb-asm-eclipse` or something)- get a mega-asm bundle from the multiple JARs we have in Fedora now
JARs we'll need to have to be able to symlink
These are all the JARs in the source drop. The source ones will be generated by the build so ignore those.
JAR filename | Containing package | More info |
com.ibm.icu_3.8.1.v20080530.jar | icu4j | |
com.jcraft.jsch_0.1.37.v200803061811.jar | jsch | |
javax.servlet.jsp_2.0.0.v200806031607.jar | tomcat5-servlet-2.4-api | |
javax.servlet_2.4.0.v200806031604.jar | tomcat5-jsp-2.0-api | |
org.apache.ant_1.7.0.v200803061910/lib/* | ant | I think we're good here. |
org.apache.commons.el_1.0.0.v200806031608.jar | jakarta-commons-el | Done |
org.apache.commons.logging_1.0.4.v20080605-1930.jar | jakarta-commons-logging | Done |
org.apache.jasper_5.5.17.v200806031609.jar | tomcat5-jasper-eclipse | We have 5.5.26 but upstream ships against 5.5.17. We may need to see if anything has a hard version requirement on 5.5.17. Done |
org.apache.lucene.analysis_1.9.1.v20080530-1600.jar | lucene | Ensure 2.3.x we have in Fedora still works. Done |
org.apache.lucene_1.9.1.v20080530-1600.jar | lucene | Ensure 2.3.x we have in Fedora still works. Done |
org.eclipse.ecf.filetransfer_2.0.0.v20080611-1715.jar | For now, build as part of SDK build. In the future, we can have an eclipse-ecf package which builds and owns these files. Parts of ECF other than the filetransfer stuff (which is all the SDK uses) have dependencies on things we don't have in Fedora (Smack version 2 -- upstream is porting to 3.x; ch.ethz.iks.r_osgi.remote; ch.ethz.iks.slp). | |
org.eclipse.ecf.identity_2.0.0.v20080611-1715.jar | ||
org.eclipse.ecf.provider.filetransfer.ssl_1.0.0.v20080611-1715.jar | ||
org.eclipse.ecf.provider.filetransfer_2.0.0.v20080611-1715.jar | ||
org.eclipse.ecf.ssl_1.0.0.v20080611-1715.jar | ||
org.eclipse.ecf_2.0.0.v20080611-1715.jar | ||
org.eclipse.osgi/osgi/osgi.cmpn.jar | internal to Eclipse | Ensure unnecessary for build. |
org.eclipse.osgi/osgi/osgi.core.jar | internal to Eclipse | Ensure unnecessary for build. |
org.eclipse.osgi/supplement/osgi/osgi.jar | internal to Eclipse | Ensure unnecessary for build. |
org.eclipse.swt.tools/swttools.jar | internal to Eclipse | Ensure unnecessary for build. |
org.eclipse.swt.win32.win32.x86/swt.jar | internal to Eclipse | Ensure unnecessary for build. |
org.eclipse.swt/extra_jars/exceptions.jar | internal to Eclipse | Ensure unnecessary for build. |
org.junit4/junit.jar | junit4 | No work needed. |
org.junit_3.8.2.v20080602-1318/junit.jar | junit | No work needed. |
org.mortbay.jetty_5.1.14.v200806031611.jar | jetty | |
org.objectweb.asm_3.1.0.v200803061910.jar | objectweb-asm | |
org.sat4j.core_2.0.0.v20080602.jar | sat4j | |
org.sat4j.pb_2.0.0.v20080602.jar | sat4j |
Contingency Plan
- Stick with Eclipse 3.3.2.
Documentation
Release Notes
We will need a release note stating that user-installed plugins from earlier releases will need to be re-installed for 3.4.