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 kojiget p2 user UI workingget builds going on non-upstream platformsget p2-ization stuff into package-build and eclipse-* %install sectionsrun testsre-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 p2decide (with other distros and in consultation with upstream) about dropins locationupdate pdebuild.sh to generate p2 metadataensure our metadata is properly read by p2 if we're going to use the dropins approach for additional pluginsensure 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 Orbitget sat4j reviewedensure 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
Done.)sat4j
(Review RequestOSGi-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
the rest of the dependencies from Eclipse 3.3 except Tomcat (actually, still need Tomcat for the servlet{,.jsp} API and jasper sub-packages)
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.