Hi,

Regarding Mike's build breaking comment, one of the reasons for
including this in the main build is to have it break to flag when new
dependencies are being introduced.  This will help us focus on
improving Tuscany modularity, but also help us preserve the support
for running in OSGi.  It will also give us a place to focus on keeping
the core small.

I now have what I think is the smallest subset of modules, based on
current dependencies.  My previous attempt took the approach of
cutting down a distribution, but the latest was created by adding to
the dependencies of the basic Calculator.  The net result is 47
bundles, 49MB (33MB felix cache and 16MB third-party jars) and takes
about 2.5 mins to build and run which does not seem like a big delta
over and above the time taken to do a full Tuscany build and run all
the samples.

The sca modules which are installed are:

tuscany-assembly-2.0-incubating-SNAPSHOT.jar
tuscany-assembly-xml-2.0-incubating-SNAPSHOT.jar
tuscany-assembly-xsd-2.0-incubating-SNAPSHOT.jar
tuscany-binding-sca-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-impl-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-java-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-namespace-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-osgi-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-resource-2.0-incubating-SNAPSHOT.jar
tuscany-contribution-xml-2.0-incubating-SNAPSHOT.jar
tuscany-core-2.0-incubating-SNAPSHOT.jar
tuscany-core-spi-2.0-incubating-SNAPSHOT.jar
tuscany-databinding-2.0-incubating-SNAPSHOT.jar
tuscany-databinding-json-2.0-incubating-SNAPSHOT.jar
tuscany-definitions-2.0-incubating-SNAPSHOT.jar
tuscany-definitions-xml-2.0-incubating-SNAPSHOT.jar
tuscany-domain-2.0-incubating-SNAPSHOT.jar
tuscany-domain-api-2.0-incubating-SNAPSHOT.jar
tuscany-domain-impl-2.0-incubating-SNAPSHOT.jar
tuscany-extensibility-2.0-incubating-SNAPSHOT.jar
tuscany-host-embedded-2.0-incubating-SNAPSHOT.jar
tuscany-host-http-2.0-incubating-SNAPSHOT.jar
tuscany-implementation-java-2.0-incubating-SNAPSHOT.jar
tuscany-implementation-java-runtime-2.0-incubating-SNAPSHOT.jar
tuscany-implementation-java-xml-2.0-incubating-SNAPSHOT.jar
tuscany-interface-2.0-incubating-SNAPSHOT.jar
tuscany-interface-java-2.0-incubating-SNAPSHOT.jar
tuscany-interface-java-jaxws-2.0-incubating-SNAPSHOT.jar
tuscany-interface-java-xml-2.0-incubating-SNAPSHOT.jar
tuscany-interface-wsdl-2.0-incubating-SNAPSHOT.jar
tuscany-interface-wsdl-java2wsdl-2.0-incubating-SNAPSHOT.jar
tuscany-interface-wsdl-xml-2.0-incubating-SNAPSHOT.jar
tuscany-monitor-2.0-incubating-SNAPSHOT.jar
tuscany-node-2.0-incubating-SNAPSHOT.jar
tuscany-node-api-2.0-incubating-SNAPSHOT.jar
tuscany-node-impl-2.0-incubating-SNAPSHOT.jar
tuscany-osgi-runtime-2.0-incubating-SNAPSHOT.jar
tuscany-policy-2.0-incubating-SNAPSHOT.jar
tuscany-policy-security-2.0-incubating-SNAPSHOT.jar
tuscany-policy-security-ws-2.0-incubating-SNAPSHOT.jar
tuscany-policy-xml-2.0-incubating-SNAPSHOT.jar
tuscany-policy-xml-ws-2.0-incubating-SNAPSHOT.jar
tuscany-sca-api-2.0-incubating-SNAPSHOT.jar

The third-party jars (currently installed in a single bundle) are:

activation-1.1.jar
addressing-1.3.mar
annogen-0.1.0.jar
avalon-framework-4.1.3.jar
axiom-api-1.2.5.jar
axiom-dom-1.2.5.jar
axiom-impl-1.2.5.jar
axis2-adb-1.3.jar
axis2-adb-codegen-1.3.jar
axis2-codegen-1.3.jar
axis2-java2wsdl-1.3.jar
axis2-kernel-1.3.jar
axis2-mtompolicy-1.3.jar
backport-util-concurrent-2.2.jar
bcprov-jdk15-132.jar
cglib-nodep-2.1_3.jar
commons-codec-1.3.jar
commons-collections-3.1.jar
commons-discovery-0.2.jar
commons-fileupload-1.1.1.jar
commons-httpclient-3.0.1.jar
commons-io-1.2.jar
commons-logging-1.1.jar
geronimo-activation_1.1_spec-1.0-M1.jar
geronimo-commonj_1.1_spec-1.0.jar
geronimo-javamail_1.4_spec-1.0-M1.jar
geronimo-jms_1.1_spec-1.1.jar
httpcore-4.0-alpha5.jar
httpcore-nio-4.0-alpha5.jar
httpcore-niossl-4.0-alpha5.jar
jaxb-api-2.1.jar
jaxb-impl-2.1.6.jar
jaxb2-reflection-2.1.4.jar
jaxen-1.1-beta-9.jar
jaxws-api-2.1.jar
jettison-1.0.jar
json-rpc-1.0.jar
jsr181-api-1.0-MR1.jar
jsr250-api-1.0.jar
junit-4.2.jar
log4j-1.2.12.jar
logkit-1.0.1.jar
mail-1.4.jar
neethi-2.0.2.jar
opensaml-1.1.jar
org.apache.felix.bundlerepository-1.1.0-SNAPSHOT.jar
org.apache.felix.framework-1.1.0-SNAPSHOT.jar
org.apache.felix.main-1.1.0-SNAPSHOT.jar
org.apache.felix.shell-1.1.0-SNAPSHOT.jar
org.apache.felix.shell.tui-1.1.0-SNAPSHOT.jar
org.osgi.core-1.0.0.jar
rampart-core-1.3.jar
rampart-policy-1.3.jar
rampart-trust-1.3.jar
saaj-api-1.3.jar
servlet-api-2.4.jar
stax-api-1.0-2.jar
stax-api-1.0.1.jar
woden-1.0-incubating-M7b.jar
wsdl4j-1.6.2.jar
wss4j-1.5.3.jar
wstx-asl-3.2.1.jar
xalan-2.7.0.jar
xercesImpl-2.8.1.jar
xml-apis-1.3.03.jar
XmlSchema-1.3.2.jar
xmlsec-1.4.0.jar

Let me know what you think?

Regards,

Graham.


2008/5/15 Mike Edwards <[EMAIL PROTECTED]>:
> Graham Charters wrote:
>>
>> Hi,
>>
>> I've been working on a small sample to act as an OSGi "sniff test" for
>> Tuscany running in OSGi.  It's basically a cut-down version of what
>> Rajini has done in itest/osgi-tuscany and only runs the most basic
>> Calculator sample.  I still have some work to do to exclude all the
>> things which aren't required and also perhaps move it to use the
>> latest "1 manifest per 3rd party jar" approach.
>>
>> Currently the sample takes ~3 mins to build and run and uses 56MB.
>> The main space usage is 17.5MB for the third-party dependencies and
>> 35MB for the Felix bundle cache (61 bundles in total).  The full
>> Tuscany (itest/osgi-tuscany) using the same third-party library
>> approach is 151 bundles and 133MB total.
>>
>> I'd like to understand whether people feel this would be useful and
>> whether it is approaching the kind of overhead that would be
>> acceptable for it to be included in the main build?
>>
>> Regards, Graham.
>>
> +1 from me...
>
> The time and space bother me a lot less than whether it would cause any
> extra failures.  What plagues me are build & test failures.  They can take
> hours to sort out.
>
>
> Yours,  Mike.
>

Reply via email to