Bug 1001188 - Dependency chain/install footprint for Eclipse is unnecessarily huge.
Dependency chain/install footprint for Eclipse is unnecessarily huge.
Status: CLOSED NOTABUG
Product: Fedora
Classification: Fedora
Component: eclipse (Show other bugs)
19
All Linux
unspecified Severity unspecified
: ---
: ---
Assigned To: Alexander Kurtakov
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-08-26 12:25 EDT by galens
Modified: 2013-08-28 09:34 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-08-28 09:34:01 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description galens 2013-08-26 12:25:56 EDT
Description of problem:
The dependency tree for eclipse is out of control.


Version-Release number of selected component (if applicable):
1:4.3.0

How reproducible:
Constant

Steps to Reproduce:
1.Take a new, clean system.  run
$ sudo yum install eclipse --assumeno

2. Take a look at the dependent packages

Actual results:
(My system already has some development tools installed, so this list isn't complete)
$ sudo yum install eclipse  --assumeno
<trimmed transaction check results>
================================================================================
 Package                    Arch   Version                        Repository
                                                                           Size
================================================================================
Installing:
 eclipse-pde                x86_64 1:4.3.0-4.fc19                 updates  86 M
Installing for dependencies:
 ant                        noarch 1.8.4-6.fc19                   fedora  1.9 M
 ant-antlr                  noarch 1.8.4-6.fc19                   fedora   32 k
 ant-apache-bcel            noarch 1.8.4-6.fc19                   fedora   34 k
 ant-apache-bsf             noarch 1.8.4-6.fc19                   fedora   30 k
 ant-apache-log4j           noarch 1.8.4-6.fc19                   fedora   30 k
 ant-apache-oro             noarch 1.8.4-6.fc19                   fedora   64 k
 ant-apache-regexp          noarch 1.8.4-6.fc19                   fedora   30 k
 ant-apache-resolver        noarch 1.8.4-6.fc19                   fedora   30 k
 ant-apache-xalan2          noarch 1.8.4-6.fc19                   fedora   29 k
 ant-commons-logging        noarch 1.8.4-6.fc19                   fedora   30 k
 ant-commons-net            noarch 1.8.4-6.fc19                   fedora  103 k
 ant-javamail               noarch 1.8.4-6.fc19                   fedora   34 k
 ant-jdepend                noarch 1.8.4-6.fc19                   fedora   39 k
 ant-jmf                    noarch 1.8.4-6.fc19                   fedora   32 k
 ant-jsch                   noarch 1.8.4-6.fc19                   fedora   63 k
 ant-junit                  noarch 1.8.4-6.fc19                   fedora  132 k
 ant-scripts                noarch 1.8.4-6.fc19                   fedora   25 k
 ant-swing                  noarch 1.8.4-6.fc19                   fedora   33 k
 ant-testutil               noarch 1.8.4-6.fc19                   fedora   40 k
 antlr-tool                 noarch 2.7.7-26.fc19                  fedora  356 k
 apache-commons-codec       noarch 1.8-1.fc19                     fedora  221 k
 apache-commons-el          noarch 1.0-26.fc19                    fedora  112 k
 apache-commons-net         noarch 3.2-4.fc19                     fedora  262 k
 batik                      noarch 1.8-0.7.svn1230816.fc19        fedora  6.3 M
 bcel                       noarch 5.2-15.fc19                    fedora  911 k
 bea-stax-api               noarch 1.2.0-7.fc19                   fedora   31 k
 bsf                        noarch 2.4.0-16.fc19                  fedora  105 k
 easymock2                  noarch 2.5.2-9.fc19                   fedora   91 k
 eclipse-ecf-core           noarch 3.6.0-1.fc19                   fedora  318 k
 eclipse-emf-core           noarch 1:2.9.0-1.fc19                 updates 1.8 M
 eclipse-equinox-osgi       x86_64 1:4.3.0-4.fc19                 updates 1.3 M
 eclipse-jdt                x86_64 1:4.3.0-4.fc19                 updates  20 M
 eclipse-platform           x86_64 1:4.3.0-4.fc19                 updates  41 M
 eclipse-swt                x86_64 1:4.3.0-4.fc19                 updates 5.8 M
 felix-bundlerepository     noarch 1.6.6-9.fc19                   fedora  105 k
 felix-framework            noarch 4.2.1-1.fc19                   fedora  480 k
 felix-gogo-command         noarch 0.12.0-7.fc19                  fedora   58 k
 felix-gogo-runtime         noarch 0.10.0-8.fc19                  fedora   70 k
 felix-gogo-shell           noarch 0.10.0-7.fc19                  fedora   56 k
 felix-osgi-compendium      noarch 1.4.0-14.fc19                  fedora  188 k
 felix-osgi-core            noarch 1.4.0-12.fc19                  fedora   94 k
 felix-osgi-foundation      noarch 1.2.0-12.fc19                  fedora  213 k
 felix-shell                noarch 1.4.3-1.fc19                   fedora   61 k
 felix-utils                noarch 1.2.0-1.fc19                   fedora   63 k
 geronimo-annotation        noarch 1.0-12.fc19                    fedora   22 k
 geronimo-jms               noarch 1.1.1-16.fc19                  fedora   31 k
 glassfish-jsp              noarch 2.2.6-7.fc19                   fedora  531 k
 glassfish-jsp-api          noarch 2.2.1-6.fc19                   fedora   60 k
 hamcrest                   noarch 1.3-1.fc19                     fedora  124 k
 httpcomponents-client      noarch 4.2.5-1.fc19                   fedora  428 k
 httpcomponents-core        noarch 4.2.4-3.fc19                   fedora  469 k
 icu4j                      noarch 1:50.1.1-1.fc19                fedora  8.1 M
 icu4j-eclipse              noarch 1:50.1.1-1.fc19                fedora  9.9 M
 isorelax                   noarch 1:0-0.12.release20050331.fc19  fedora   75 k
 jai-imageio-core           noarch 1.2-0.12.20100217cvs.fc19      fedora  330 k
 jakarta-oro                noarch 2.0.8-13.fc19                  fedora   77 k
 java-1.7.0-openjdk-javadoc noarch 1:1.7.0.25-2.3.12.4.fc19       updates  14 M
 jdepend                    noarch 2.9.1-8.fc19                   fedora  176 k
 jetty-continuation         noarch 9.0.3-3.fc19                   fedora   38 k
 jetty-http                 noarch 9.0.3-3.fc19                   fedora  118 k
 jetty-io                   noarch 9.0.3-3.fc19                   fedora   99 k
 jetty-jmx                  noarch 9.0.3-3.fc19                   fedora   44 k
 jetty-security             noarch 9.0.3-3.fc19                   fedora  104 k
 jetty-server               noarch 9.0.3-3.fc19                   fedora  335 k
 jetty-servlet              noarch 9.0.3-3.fc19                   fedora  119 k
 jetty-util                 noarch 9.0.3-3.fc19                   fedora  324 k
 jsch                       noarch 0.1.50-1.fc19                  fedora  239 k
 junit                      noarch 4.11-1.fc19                    fedora  260 k
 jvnet-parent               noarch 4-1.fc19                       fedora   10 k
 jzlib                      noarch 1.1.1-3.fc19                   fedora   72 k
 kxml                       noarch 2.3.0-1.fc19                   fedora  150 k
 log4j                      noarch 1.2.17-10.fc19                 fedora  448 k
 lucene-contrib             noarch 3.6.2-2.fc19                   fedora   10 M
 msv-msv                    noarch 1:2013.2.3-1.fc19              fedora  619 k
 msv-xsdlib                 noarch 1:2013.2.3-1.fc19              fedora  218 k
 objectweb-asm              noarch 3.3.1-7.fc19                   fedora  196 k
 qdox                       noarch 1.12.1-5.fc19                  fedora  169 k
 regexp                     noarch 1.5-10.fc19                    fedora   46 k
 relaxngDatatype            noarch 1.0-10.4.fc19                  fedora   15 k
 sat4j                      noarch 2.3.5-1.fc19                   fedora  511 k
 stax2-api                  noarch 3.1.1-6.fc19                   fedora  164 k
 tomcat-el-2.2-api          noarch 7.0.42-1.fc19                  updates  66 k
 tomcat-servlet-3.0-api     noarch 7.0.42-1.fc19                  updates 186 k
 woodstox-core              noarch 4.1.2-5.fc19                   fedora  457 k
 xalan-j2                   noarch 2.7.1-19.fc19                  updates 1.9 M
 xerces-j2                  noarch 2.11.0-14.fc19                 fedora  1.1 M
 xml-commons-resolver       noarch 1.2-12.fc19                    fedora  108 k
 xpp3                       noarch 1.1.3.8-8.fc19                 fedora  289 k

Transaction Summary
================================================================================
Install  1 Package (+88 Dependent packages)


Expected results:
A base install of eclipse does not require any aspect of ant, apache, felix, glassfish, jetty, tomcat, or xerces, as well as many of the other packages in the chain.

This list doesn't change much if the selection is eclipse-platform, eclipse-cdt, or any other top level eclipse package.

A bare-bones install requires little more than java-1.7.0-openjdk (or another jdk).  Even if eclipse is supposed to represent the standard or java distributions, rather than barebones, most of these packages are still superfluous.  

Additional info:
Comment 1 Roland Grunberg 2013-08-26 14:07:12 EDT
If you take a look at an 'Eclipse Standard 4.3' from http://www.eclipse.org/downloads/ you'll find the packages you mention (ant, jetty, jasper, felix, etc.) are there within the plugins folder. When downloading/installing from eclipse.org the dependencies are bundled together as part of Eclipse so it doesn't 'seem' dependencies had to be satisfied.

- glassfish, jetty, and tomcat are used by the help system to generate/display the help pages. Please note that not all jetty packages, or all of tomcat, are being brought in, but just the subpackages that provide necessary libaries.
- felix libraries are used to implement certain portions of the Equinox OSGi console.

In terms of keeping the install size as small as possible, I think creating subpackages for larger projects will go a long way in making sure Eclipse doesn't depend bring in a large package for just a few smaller libraries it provides. This has been ongoing as far as I know.
Comment 2 Roland Grunberg 2013-08-27 15:43:15 EDT
I would like to close this as 'NOTABUG' soon, given that I think this is just a misunderstanding between how upstream (eclipse.org), and Fedora package Eclipse.
Comment 3 Andrew Overholt 2013-08-27 15:46:25 EDT
+1 for NOTABUG

Note You need to log in before you can comment on or make changes to this bug.