EucalyptusInMainSpec
6845
Comment:
|
8894
|
Deletions are marked like this. | Additions are marked like this. |
Line 162: | Line 162: |
Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected. | === UDS discussion === ==== Current status ==== * 99 packages which would need to move to main. * Java in main is currently driven by OpenOffice. Tomcat6 is there, but has few dependencies. ==== Future ==== * Eucalyptus version for Karmic should have fewer dependencies anyway from upstream refactoring. ==== How can the number of build/runtime dependencies be reduced? ==== * Get rid of anything not necessary * Geronimo spec packages (already provided by glassfish-j2ee) * Move parts into Eucalyptus code * Refactor packages (e.g. hibernate pulls in a lot of stuff) * Requires multiple source packages or only to promote some resulting binaries to main. (doko recommends duplicating the source package and documenting it) ==== What could be expected to be refused inclusion to main ==== * Active upstream criteria * Annogen * OpenSAML * WSS4J? * Known to be insecure * Nothing obvious * Partial builds (because of non-free dependencies) * Mule * We don't really care ==== Size issues (adding to default CD) ==== * GWT is 6MB of binary * 1.6 should be more granular and work with existing java packages more * JRuby is 3MB * Just be a build-time dependency of GWT * libjgroups-java, 3MB. Not needed ? * glassfish-toplink-essentials, 2.4MB, comes from hibernate * Avoiding JDK would save about 50MB of CD space * Avoiding GCJ would save about 20MB ==== Can we use the new Spring packaging from Debian? ==== * Not included yet in Debian, but work is underway * Might make too hard choices for us ? Testing from Eucalyptus side needed. ==== Safety net ==== * Keep a eucalyptus-javadeps package to drop in any problematic parts which can't be fixed (hibernate?). * One tiny part of Drools ==== Action Summary ==== * Which Eucalyptus version we'll use in Karmic and its dependencies? * Can we use Spring from Debian? * What can we do to reduce Hibernate size? * Will it be acceptable to move JBoss to main? * JDK dependency investigation * Ask Colin about blacklisting for the server seed only to solve GCJ issue * Once it's known what is required, start preparing/filing MIRs to avoid a last minute panic. |
Launchpad Entry: server-karmic-eucalyptus-in-main
Created:
Contributors:
Packages affected:
Summary
This should provide an overview of the issue/functionality/change proposed here. Focus here on what will actually be DONE, summarising that so that other people don't have to read the whole spec. See also CategorySpec for examples.
Release Note
This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the release notes of the first release in which it is implemented. (Not all of these will actually be included in the release notes, at the release manager's discretion; but writing them is a useful exercise.)
It is mandatory.
Rationale
This should cover the _why_: why is this change being proposed, what justifies it, where we see this justified.
User stories
Assumptions
Design
Proposed actions for package number reduction
- libhibernate3-java in eucalyptus-javadeps : saves 34+ packages
- libhibernate-entity-manager in eucalyptus-javadeps : saves 10+ packages
- Use glassfish-javaee instead of geronimo-*
Removed dependency from libclassworlds-java -> maven-ant-helper: saves 8+ packages
- xmlbeans is no longer needed (Axis2 build dep) so removed libxmlbeans-java libsaxonb-java
Resulting list (without those from RefactorEucalyptusJavadepsSpec)
Binary Package |
Runtime dep of |
Extra Build dep of |
antlr3 |
ej |
|
antlr3-gcj |
antlr3 (rec) |
|
glassfish-javaee |
ej |
libjgroups-java |
glassfish-toplink-essentials |
|
libhibernate-annotations-java |
groovy |
ej |
|
janino |
ej |
|
jruby1.0 |
|
ej |
junit4 |
groovy |
|
libaopalliance-java |
|
ej |
libasm2-java |
ej, groovy |
|
libasm3-java |
|
ej, libjarjar-java |
libasm-java |
ej, libcglib2.1-java |
|
libaspectwerkz2-java |
|
libcglib2.1-java |
libavalon-framework-java |
ej |
|
libbackport-util-concurrent-java |
libdom4j-java, libehcache-java |
|
libbcprov-java |
ej |
libjgroups-java |
libbcprov-java-gcj |
libbcprov-java (rec) |
|
libc3p0-java |
ej |
|
libcglib2.1-java |
ej |
|
libclassworlds-java |
groovy |
|
libcommons-attributes-java |
|
ej |
libcommons-cli-java |
ej, groovy |
|
libcommons-codec-java |
ej, libjaxme-java, libcommons-httpclient-java |
|
libcommons-fileupload-java |
ej |
|
libcommons-httpclient-java |
ej |
|
libcommons-io-java |
ej, libcommons-fileupload-java |
|
libcommons-jxpath-java |
ej |
|
libconcurrent-java |
|
libaspectwerz2-java |
libdom4j-java |
ej, libjaxen-java, libsaxonb-java |
|
libehcache-java |
ej |
|
libgoogle-collections-java |
ej |
|
libhibernate-annotations-java |
ej |
|
libhibernate-commons-annotations-java |
ej |
|
libjamon-java |
|
ej |
libjarjar-java |
|
libaspectwerkz2-java |
libjavassist-java |
ej |
|
libjaxen-java |
ej, libdom4j-java, libxom-java |
|
libjaxme-java |
libdom4j-java |
|
libjdom1-java |
ej, libcommons-jxpath-java, libjaxen-java, libsaxonb-java |
|
libjettison-java |
ej |
libxstream-java |
libjgroups-java |
|
libehcache-java |
libjibx-java |
ej |
|
libjmock-java |
|
libqdox-java |
libjoda-time-java |
|
libxstream-java |
libjrexx-java |
libaspectwerkz2-java |
|
libjsr107cache-java |
libehcache-java |
|
libjunitperf-java |
|
libdom4j-java |
libmockobjects-java |
ej, groovy |
|
libow-util-ant-tasks-java |
|
libasm-java, libasm2-java, libasm3-java |
libqdox-java |
libjibx-java |
ej, libcommons-attributes-java |
libslf4j-java |
ej |
|
libstringtemplate-java |
antlr3 |
|
libtrove-java |
|
libaspectwerkz2-java |
libwoodstox-java |
libjibx-java |
|
libxml-commons-external-java |
ej |
|
libxml-security-java |
ej |
|
libxom-java |
ej, libsaxonb-java |
|
libxpp2-java |
libdom4j-java |
|
libxpp3-java |
ej, libdom4j-java, groovy, libjibx-java |
|
libxstream-java |
ej, groovy |
|
New packages expected from RefactorEucalyptusJavadepsSpec
- Backport Util Concurrent 3.1
- Google Web Toolkit
- Spring
- Mule
- JUG
- Jetty 6
- Drools
- MVEL
Extra dependencies from Debian's Spring packaging
TODO: split between old ej build-deps and spring things
jruby1.0, aopalliance libasm3 commons-attribute, jamon... are spring ej build-deps
Package |
Dependency of |
Extra build dep of |
libjdo-api-java |
Spring |
|
libfreemarker-java |
Spring |
|
velocity |
Spring |
|
libjexcelapi-java |
Spring |
|
libstruts1.2-java |
Spring |
|
glassfish-appserv |
Spring |
|
libibatis-java |
Spring |
|
libtomcat5.5-java |
Spring |
|
libjdom0-java |
libfreemarker-java, velocity |
|
libwerken.xpath-java |
velocity |
|
libcommons-digester-java |
libstruts1.2-java, libcommons-validator-java, libcommons-modeler-java |
|
libcommons-validator-java |
libstruts1.2-java |
|
libcommons-el-java |
libtomcat5.5-java |
|
libcommons-launcher-java |
libtomcat5.5-java |
|
libcommons-modeler-java |
libtomcat5.5-java |
Total
- 60 from primary list
- 15 from Debian's Spring
Total: 83 packages to MIR
Other potential actions to reduce number of packages
Remove libcglib2.1-java -> libaspectwerkz2-java dependency, get rid of 5 packages
- Reimplement/fix debian Spring, get rid of 15 packages
Implementation
Test/Demo Plan
It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.
This need not be added or completed until the specification is nearing beta.
Unresolved issues
This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.
BoF agenda and discussion
UDS discussion
Current status
- 99 packages which would need to move to main.
Java in main is currently driven by OpenOffice. Tomcat6 is there, but has few dependencies.
Future
- Eucalyptus version for Karmic should have fewer dependencies anyway from upstream refactoring.
How can the number of build/runtime dependencies be reduced?
- Get rid of anything not necessary
- Geronimo spec packages (already provided by glassfish-j2ee)
- Move parts into Eucalyptus code
- Refactor packages (e.g. hibernate pulls in a lot of stuff)
- Requires multiple source packages or only to promote some resulting binaries to main.
- (doko recommends duplicating the source package and documenting it)
- Requires multiple source packages or only to promote some resulting binaries to main.
What could be expected to be refused inclusion to main
- Active upstream criteria
- Annogen
- OpenSAML
- WSS4J?
- Known to be insecure
- Nothing obvious
- Partial builds (because of non-free dependencies)
- Mule
- We don't really care
Size issues (adding to default CD)
- GWT is 6MB of binary
- 1.6 should be more granular and work with existing java packages more
- JRuby is 3MB
- Just be a build-time dependency of GWT
- libjgroups-java, 3MB. Not needed ?
- glassfish-toplink-essentials, 2.4MB, comes from hibernate
- Avoiding JDK would save about 50MB of CD space
- Avoiding GCJ would save about 20MB
Can we use the new Spring packaging from Debian?
- Not included yet in Debian, but work is underway
- Might make too hard choices for us ? Testing from Eucalyptus side needed.
Safety net
- Keep a eucalyptus-javadeps package to drop in any problematic parts which can't be fixed (hibernate?).
- One tiny part of Drools
Action Summary
- Which Eucalyptus version we'll use in Karmic and its dependencies?
- Can we use Spring from Debian?
- What can we do to reduce Hibernate size?
- Will it be acceptable to move JBoss to main?
- JDK dependency investigation
- Ask Colin about blacklisting for the server seed only to solve GCJ issue
- Once it's known what is required, start preparing/filing MIRs to avoid a last minute panic.
EucalyptusInMainSpec (last edited 2009-08-10 09:46:57 by lns-bzn-48f-81-56-218-246)