From Fedora Project Wiki

Revision as of 20:13, 6 September 2011 by Arg (talk | contribs)

This page is for tracking progress on the packaging of (primarily Java-based) dependencies for Eucalyptus 3.x. This project will have some overlap with JBossAS7. Other required Java packages include:

  • ActiveMQ
  • Axiom
  • Google Web Toolkit
  • HA-JDBC
  • Infinispan (it's not clear whether this is required at runtime; the build succeeds without it)
  • JasperReports
  • Mule

The majority of other required packages are either already part of Fedora or are transitive dependencies of the above dependencies. These packages require large parts of jboss, geronimo, and spring2, among other things. Packaging spring2 in particular seems to be a task full of circular dependencies, so the bootstrapping may be difficult.

A Fedora-hosted repository was created last week as a workspace for this, but my quota was quickly exceeded, so I'll be moving this to a eucalyptus-hosted site soon.

Note: this page is focused on java dependencies, but for completeness, there are two other necessary packages which Eucalyptus currently maintains but should submit to Fedora:

  • axis2c (and axis2c-devel)
  • rampartc

Working dependencies already in Fedora

These packages are already in Fedora at versions which allow the Eucalyptus 3 build to succeed:

  • ant-1.8.2-6.fc16
  • antlr3-tool-3.2-14.fc15
  • apache-commons-beanutils-1.8.3-4.fc15
  • apache-commons-cli-1.2-4.fc15
  • apache-commons-codec-1.4-12.fc15
  • apache-commons-collections-3.2.1-11.fc16
  • apache-commons-compress-1.1-1.fc16
  • apache-commons-digester-1.8.1-8.fc15
  • apache-commons-fileupload-1.2.2-2.fc15
  • apache-commons-logging-1.1.1-16.fc16
  • apache-commons-pool-1.5.6-1.fc16
  • avalon-framework-4.3-3.fc16
  • avalon-logkit-2.1-5.fc16
  • backport-util-concurrent-3.1-6
  • batik-1.7-12.fc16
  • bcel-5.2-9.fc15
  • bea-stax-api-1.2.0-0.8.rc1.fc15
  • bouncycastle-1.46-1.fc16
  • bsf-2.4.0-9.fc15
  • cglib-2.2-8.fc15
  • dnsjava-2.0.6-8.fc15
  • dom4j-1.6.1-6.fc15
  • ezmorph-1.0.6-3.fc15
  • geronimo-ejb-1.0-4.fc15
  • geronimo-jms-1.1.1-8.fc15
  • geronimo-jta-1.1.1-7.fc15
  • groovy-1.8.1-3.fc16
  • hibernate-commons-annotations-3.2.0-3.fc16
  • hsqldb-1.8.1.3-3.fc15
  • itext-2.1.7-7.fc15
  • jakarta-commons-httpclient-3.1-5.fc16
  • javamail-1.4.3-6.fc15
  • javassist-3.14.0-5.fc16
  • jaxen-1.1.1-3.1.fc12
  • jettison-1.3-1.fc16
  • jibx-1.2.3-1.fc16
  • jsch-0.1.44-3.fc15
  • json-lib-2.3-5.fc15
  • junit4-4.8.2-2.fc15
  • log4j-1.2.16-7.fc15
  • mysql-connector-java-5.1.17-1.fc16.x86_64 (this will eventually be made optional)
  • objectweb-asm-3.3.1-1.fc16
  • regexp-1.5-6.fc15
  • slf4j-1.6.1-3.fc16
  • tomcat6-servlet-2.5-api-6.0.32-11.fc16
  • velocity-1.7-1.fc16
  • wsdl4j-1.6.2-2.fc15
  • xalan-j2-2.7.1-4.fc16
  • xerces-j2-2.11.0-3.fc15
  • xml-commons-apis-1.4.01-4.fc16
  • xom-1.0-6.6.fc15
  • xpp3-1.1.3.8-5.fc15

Non-working dependencies in Fedora

These packages are in Fedora, but due to either an incomplete build or a significant version difference, they do not allow a successful build.

  • hamcrest-1.1-10.4.fc15.noarch (Euca uses 1.2)
  • jetty-6.1.26-7.fc16.noarch (Euca uses 6.1.19 -- the problem appears to be that the Fedora jetty build is missing at least one class)
  • jgroups-2.2.9.2-8.fc15.noarch (Euca uses 2.12.1.Final -- I'm talking to fnasser about updating this in Fedora) - see https://bugzilla.redhat.com/show_bug.cgi?id=731765 --Marek Goldmann 08:57, 5 September 2011 (UTC)
  • netty-3.2.3-3.fc15.noarch (Euca uses 3.1.0.CR1 -- we should be able to fix our code)

Working dependencies we have built

These are packages which we have built and can use in the Eucalyptus build:

# Package Version POM Review request Packager Status Comments
1 btm 2.1.1 RHBZ #732150 arg Awaiting Review
2 java-uuid-generator 3.1.2 RHBZ #7345454 arg Awaiting Review
3 quartz 1.6.6 arg Blocked Requires a JAF implementation (geronimo-activation or glassfish-jaf)
4 ha-jdbc 2.0.16 arg Cleanup and Rebuild required
5 proxool 0.9.1 arg Cleanup and Rebuild required
6 rhq 4.1.0 (plugins-annotations is 3.0.1) arg Cleanup and Rebuild required
7 wstx 3.2.8 arg Cleanup and Rebuild required This was rebuilt from JPP, and does not meet Fedora guidelines
8 xml-security 1.4.2 arg Cleanup and Rebuild required This was rebuilt from JPP, and does not meet Fedora guidelines
9 axiom 1.2.8 arg Cleanup and Rebuild required This was rebuilt from JPP, and does not meet Fedora guidelines
10 htmlunit-core-js 2.9 RHBZ #735518 arg Awaiting Review This is required for GWT
11 apache-parent 10 RHBZ #736069 arg Awaiting Review This replaces an older POM from maven2-common-poms
12 axis2c 1.6.0 N/A RHBZ #735225 gholms Review in Progress

Dependencies left to build

  • activemq 5.4.1
  • axis2
  • geronimo-j2ee-connector-1.5-spec-1.1
  • geronimo-jpa_2.0_spec-1.1 (Fedora includes only the 3.0 spec)
  • guava-r09-gwt.jar (Guava is built but needs to be rebuilt after gwt is in)
  • gwt 2.2 -- This one is tricky because the JARs we use right now have things like jsr-305 bundled inside them.
  • hibernate-3.5.6-Final
  • infinispan (if needed)
  • jasperreports-3.7.2
  • jbosscache-core-3.2.1.GA
  • mule-2.0.1 -- I was able to partially build this against JPP, but it needs to be redone
  • spring-beans-2.5.1.jar -- I have a partial spring2 build, but I don't yet know whether it's functional
  • wss4j-1.5.7.jar

sub-dependencies

ActiveMQ 5 dependencies:

  • easymock-classextension


Axiom dependencies:

  • osgi-bundle-utility (ch.jm.osgi.util.bundle -- figure out the appropriate name and POM structure for this)
  • wstx


Axis2 dependencies:

  • ws-commons-neethi
  • ws-commons-XmlSchema
  • possibly spring2 and many other things -- need to find the minimum requirement set here.

Google Web Toolkit dependencies:

  • guava 09
  • TODO: htmlunit
  • htmlunit-core-js

Infinispan dependencies

  • rhq

JasperReports dependencies:

  • barcode4j
  • eigenbase-properties (for mondrian)
  • eigenbase-resgen (for mondrian)
  • jexcelapi
  • olap4j (for mondrian)
  • TODO: mondrian
  • TODO: commons-javaflow
  • TODO: png-encoder
  • TODO: barbecue
  • TODO: jdt-compiler (is this already in as part of eclipse??)
  • TODO: hibernate

Mule dependencies:

  • aopalliance
  • glassfish-jaf (or geronimo-activation)
  • jsr107cache (for ehcache)
  • java-uuid-generator
  • ognl
  • quartz

Spring2 dependencies (deps below are enough for a partial build):

  • tiles-master
  • tiles
  • struts-master
  • apache-parent
  • hessian
  • apache-portlet-1.0-api
  • maven-injection-plugin
  • apt-maven-plugin
  • glassfish-jstl
  • xml-maven-plugin
  • myfaces-core
  • commons-chain
  • struts