You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by Gert Vanthienen <ge...@gmail.com> on 2013/06/27 22:57:51 UTC

Size of the assemblies

L.S.,


On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
that there now is a 100 MB upload limit to the dist repository.  Our
-full assembly is definitely larger than this and we even make things
a bit worse by adding multiple versions of some bundles into the
assembly.  This usually happens when multiple versions of the same
bundle are being used across projects.

The obvious solution would be to check those versions across projects
and try to get them aligned as good as we can, but this will be a
never-ending task and very hard to keep up in the long run, so I was
wondering if there was anything else we could do to make this a bit
easier or more automated.

For Apache ServiceMix 5.0.0, we could also consider the option of only
shipping a ZIP file.  I think it should be possible to create an
archive that works on both Windows and other operating systems.  If we
could, that would significantly reduce our footprint on Apache's
infrastructure, though it would still keep us way above the 100 MB
limit if we keep on shipping the -full assembly.

Personally, I would prefer to keep that assembly around - the
ease/speed of installation of all the extra features outweighs the
cost of the extra disk space used on a server in my mind.  But that's
just my personal opinion and we can always consider the option of
dropping the -full assembly again if it proves too big of an issue for
infra@


Regards,

Gert

Re: Size of the assemblies

Posted by Jon Anstey <ja...@gmail.com>.
Not sure what we can do to completely eliminate duplicate bundle
versions... we could be a bit more proactive about it i guess. Maybe before
each release we could do a review of duplicated libs and fix any obvious
ones then. Could maybe generate some simple report for each build to assist
with the checking.

+1 on zip only for 5.0. There really isn't much difference in the tar.gz
vs. zip anyways.

The -full distro is REALLY useful so would suck to have to get rid of
that...




On Thu, Jun 27, 2013 at 6:27 PM, Gert Vanthienen
<ge...@gmail.com>wrote:

> L.S.,
>
>
> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
> that there now is a 100 MB upload limit to the dist repository.  Our
> -full assembly is definitely larger than this and we even make things
> a bit worse by adding multiple versions of some bundles into the
> assembly.  This usually happens when multiple versions of the same
> bundle are being used across projects.
>
> The obvious solution would be to check those versions across projects
> and try to get them aligned as good as we can, but this will be a
> never-ending task and very hard to keep up in the long run, so I was
> wondering if there was anything else we could do to make this a bit
> easier or more automated.
>
> For Apache ServiceMix 5.0.0, we could also consider the option of only
> shipping a ZIP file.  I think it should be possible to create an
> archive that works on both Windows and other operating systems.  If we
> could, that would significantly reduce our footprint on Apache's
> infrastructure, though it would still keep us way above the 100 MB
> limit if we keep on shipping the -full assembly.
>
> Personally, I would prefer to keep that assembly around - the
> ease/speed of installation of all the extra features outweighs the
> cost of the extra disk space used on a server in my mind.  But that's
> just my personal opinion and we can always consider the option of
> dropping the -full assembly again if it proves too big of an issue for
> infra@
>
>
> Regards,
>
> Gert
>



-- 
Cheers,
Jon
---------------
Red Hat, Inc.
Email: janstey@redhat.com
Web: http://redhat.com
Twitter: jon_anstey
Blog: http://janstey.blogspot.com
Author of Camel in Action: http://manning.com/ibsen

Re: Size of the assemblies

Posted by Gert Vanthienen <ge...@gmail.com>.
Hey Dan,


Thanks for starting this effort!  I raised
https://issues.apache.org/jira/browse/SMX4-1494 to keep track of our
progress.


Thanks again!

Gert


On Mon, Jul 1, 2013 at 7:45 PM, Daniel Kulp <dk...@apache.org> wrote:
>
> I did a bit of cleanup in just the smx4-features  XML and Camel 2.10.x branch and was able to shave off about 25MB from the assembly.  There is certainly more to go.   We now have about 53MB of "duplicate" jars  (which is down from over 100MB).   I've attached the list below.  A bunch of them we certainly need to have the various versions (like ehcache due to incompatible changes between 2.5.1 and 2.5.2).   Others are pulled in from jclouds or activemq or similar and thus would e hard to resolve.   Some would require better support from Karaf to really resolve (like the duplicate Spring jars) or an enhancement to the plugin would be great (like exclude the CXF activemq stuff as the activemq pom can supply a workable version).
>
> The bottom bunch are things that really should be looked at more in depth.  A couple can be fixed by updating the versions in the smx-nmr features.xml (which I don't have checked out on my computer right now).  Others are likely fixable by flipping from the smx bundled versions of commons-* to the actual commons-* versions.   Saxon is something that needs a bit more testing.   I've had some bad luck updating that in OSGi before.
>
> Anyway, here's a starting point for some work.  :-)    In anycase the tar.gz is now down below 290M.   Still huge though.
>
> Dan
>
>
>
> 1424    ./com/hazelcast/hazelcast/1.9.4/hazelcast-1.9.4.jar
> 1660    ./com/hazelcast/hazelcast/2.0.2/hazelcast-2.0.2.jar
> 60      ./commons-codec/commons-codec/1.4/commons-codec-1.4.jar
> 228     ./commons-codec/commons-codec/1.6/commons-codec-1.6.jar
> 276     ./commons-lang/commons-lang/2.5/commons-lang-2.5.jar
> 280     ./commons-lang/commons-lang/2.6/commons-lang-2.6.jar
> 208     ./commons-net/commons-net/2.2/commons-net-2.2.jar
> 268     ./commons-net/commons-net/3.1/commons-net-3.1.jar
> 96      ./commons-pool/commons-pool/1.5.4/commons-pool-1.5.4.jar
> 112     ./commons-pool/commons-pool/1.6/commons-pool-1.6.jar
> 484     ./javax/mail/mail/1.4.4/mail-1.4.4.jar
> 500     ./javax/mail/mail/1.4.5/mail-1.4.5.jar
> 532     ./joda-time/joda-time/1.6.2/joda-time-1.6.2.jar
> 560     ./joda-time/joda-time/2.1/joda-time-2.1.jar
> 116     ./org/apache/activemq/activemq-console/5.4.2/activemq-console-5.4.2.jar
> 124     ./org/apache/activemq/activemq-console/5.7.0/activemq-console-5.7.0.jar
> 3244    ./org/apache/activemq/activemq-core/5.4.2/activemq-core-5.4.2.jar
> 3872    ./org/apache/activemq/activemq-core/5.7.0/activemq-core-5.7.0.jar
> 36      ./org/apache/activemq/activemq-pool/5.4.2/activemq-pool-5.4.2.jar
> 48      ./org/apache/activemq/activemq-pool/5.7.0/activemq-pool-5.7.0.jar
> 84      ./org/apache/activemq/activemq-ra/5.4.2/activemq-ra-5.4.2.jar
> 88      ./org/apache/activemq/activemq-ra/5.7.0/activemq-ra-5.7.0.jar
> 152     ./org/apache/activemq/kahadb/5.4.2/kahadb-5.4.2.jar
> 184     ./org/apache/activemq/kahadb/5.7.0/kahadb-5.7.0.jar
> 160     ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.2-incubating/org.apache.aries.transaction.manager-0.2-incubating.jar
> 172     ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3/org.apache.aries.transaction.manager-0.3.jar
> 172     ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3.1/org.apache.aries.transaction.manager-0.3.1.jar
> 488     ./org/apache/httpcomponents/httpclient-osgi/4.1.1/httpclient-osgi-4.1.1.jar
> 528     ./org/apache/httpcomponents/httpclient-osgi/4.1.3/httpclient-osgi-4.1.3.jar
> 796     ./org/apache/httpcomponents/httpclient-osgi/4.2.1/httpclient-osgi-4.2.1.jar
> 336     ./org/apache/httpcomponents/httpcore-osgi/4.1/httpcore-osgi-4.1.jar
> 376     ./org/apache/httpcomponents/httpcore-osgi/4.1.4/httpcore-osgi-4.1.4.jar
> 504     ./org/apache/httpcomponents/httpcore-osgi/4.2.1/httpcore-osgi-4.2.1.jar
> 284     ./org/apache/jackrabbit/jackrabbit-jcr-commons/2.2.12/jackrabbit-jcr-commons-2.2.12.jar
> 344     ./org/apache/jackrabbit/jackrabbit-jcr-commons/2.5.2/jackrabbit-jcr-commons-2.5.2.jar
> 632     ./org/apache/mina/mina-core/2.0.5/mina-core-2.0.5.jar
> 632     ./org/apache/mina/mina-core/2.0.7/mina-core-2.0.7.jar
> 444     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/2.7.7_5/org.apache.servicemix.bundles.antlr-2.7.7_5.jar
> 560     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/3.0.1_6/org.apache.servicemix.bundles.antlr-3.0.1_6.jar
> 112     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr-runtime/3.0.1_2/org.apache.servicemix.bundles.antlr-runtime-3.0.1_2.jar
> 16      ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_5/org.apache.servicemix.bundles.aopalliance-1.0_5.jar
> 20      ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_6/org.apache.servicemix.bundles.aopalliance-1.0_6.jar
> 184     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/2.2.3_5/org.apache.servicemix.bundles.asm-2.2.3_5.jar
> 232     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/3.3.1_1/org.apache.servicemix.bundles.asm-3.3.1_1.jar
> 308     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_6/org.apache.servicemix.bundles.commons-httpclient-3.1_6.jar
> 312     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_7/org.apache.servicemix.bundles.commons-httpclient-3.1_7.jar
> 316     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_2/org.apache.servicemix.bundles.dom4j-1.6.1_2.jar
> 320     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5/org.apache.servicemix.bundles.dom4j-1.6.1_5.jar
> 1272    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.1_1/org.apache.servicemix.bundles.ehcache-2.5.1_1.jar
> 1284    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.2_1/org.apache.servicemix.bundles.ehcache-2.5.2_1.jar
> 136     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.6_1/org.apache.servicemix.bundles.jasypt-1.6_1.jar
> 128     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.9.0_1/org.apache.servicemix.bundles.jasypt-1.9.0_1.jar
> 192     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.44_2/org.apache.servicemix.bundles.jsch-0.1.44_2.jar
> 232     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.48_1/org.apache.servicemix.bundles.jsch-0.1.48_1.jar
> 308     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_2/org.apache.servicemix.bundles.jsmpp-2.1.0_2.jar
> 312     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_4/org.apache.servicemix.bundles.jsmpp-2.1.0_4.jar
> 748     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.3.Final_2/org.apache.servicemix.bundles.netty-3.2.3.Final_2.jar
> 764     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.7.Final_1/org.apache.servicemix.bundles.netty-3.2.7.Final_1.jar
> 72      ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_3/org.apache.servicemix.bundles.oro-2.0.8_3.jar
> 76      ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_6/org.apache.servicemix.bundles.oro-2.0.8_6.jar
> 332     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.3.0_3/org.apache.servicemix.bundles.protobuf-java-2.3.0_3.jar
> 452     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.4.1_1/org.apache.servicemix.bundles.protobuf-java-2.4.1_1.jar
> 396     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.10.1_1/org.apache.servicemix.bundles.snmp4j-1.10.1_1.jar
> 284     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.8.1_4/org.apache.servicemix.bundles.snmp4j-1.8.1_4.jar
> 452     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_4/org.apache.servicemix.bundles.velocity-1.7_4.jar
> 448     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_5/org.apache.servicemix.bundles.velocity-1.7_5.jar
> 84      ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.werken-xpath/0.9.4_5/org.apache.servicemix.bundles.werken-xpath-0.9.4_5.jar
> 2692    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.5.0_2/org.apache.servicemix.bundles.xmlbeans-2.5.0_2.jar
> 2696    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.6.0_2/org.apache.servicemix.bundles.xmlbeans-2.6.0_2.jar
> 128     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_5/org.apache.servicemix.bundles.xpp3-1.1.4c_5.jar
> 128     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_6/org.apache.servicemix.bundles.xpp3-1.1.4c_6.jar
> 416     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.3_3/org.apache.servicemix.bundles.xstream-1.3_3.jar
> 488     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.4.2_2/org.apache.servicemix.bundles.xstream-1.4.2_2.jar
> 36      ./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.9.0/org.apache.servicemix.specs.scripting-api-1.0-1.9.0.jar
> 36      ./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/2.2.0/org.apache.servicemix.specs.scripting-api-1.0-2.2.0.jar
> 48      ./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.9.0/org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar
> 48      ./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/2.2.0/org.apache.servicemix.specs.stax-api-1.0-2.2.0.jar
> 324     ./org/apache/sshd/sshd-core/0.6.0/sshd-core-0.6.0.jar
> 368     ./org/apache/sshd/sshd-core/0.8.0/sshd-core-0.8.0.jar
> 108     ./org/fusesource/hawtdispatch/hawtdispatch/1.11/hawtdispatch-1.11.jar
> 108     ./org/fusesource/hawtdispatch/hawtdispatch/1.12/hawtdispatch-1.12.jar
> 104     ./org/fusesource/hawtdispatch/hawtdispatch-transport/1.11/hawtdispatch-transport-1.11.jar
> 124     ./org/fusesource/hawtdispatch/hawtdispatch-transport/1.12/hawtdispatch-transport-1.12.jar
> 112     ./org/fusesource/mqtt-client/mqtt-client/1.3/mqtt-client-1.3.jar
> 112     ./org/fusesource/mqtt-client/mqtt-client/1.4/mqtt-client-1.4.jar
> 320     ./org/springframework/spring-aop/2.5.6.SEC03/spring-aop-2.5.6.SEC03.jar
> 316     ./org/springframework/spring-aop/3.0.7.RELEASE/spring-aop-3.0.7.RELEASE.jar
> 480     ./org/springframework/spring-beans/2.5.6.SEC03/spring-beans-2.5.6.SEC03.jar
> 544     ./org/springframework/spring-beans/3.0.7.RELEASE/spring-beans-3.0.7.RELEASE.jar
> 468     ./org/springframework/spring-context/2.5.6.SEC03/spring-context-2.5.6.SEC03.jar
> 656     ./org/springframework/spring-context/3.0.7.RELEASE/spring-context-3.0.7.RELEASE.jar
> 96      ./org/springframework/spring-context-support/2.5.6.SEC03/spring-context-support-2.5.6.SEC03.jar
> 100     ./org/springframework/spring-context-support/3.0.7.RELEASE/spring-context-support-3.0.7.RELEASE.jar
> 280     ./org/springframework/spring-core/2.5.6.SEC03/spring-core-2.5.6.SEC03.jar
> 376     ./org/springframework/spring-core/3.0.7.RELEASE/spring-core-3.0.7.RELEASE.jar
> 192     ./org/springframework/spring-web/2.5.6.SEC03/spring-web-2.5.6.SEC03.jar
> 392     ./org/springframework/spring-web/3.0.7.RELEASE/spring-web-3.0.7.RELEASE.jar
> 396     ./org/springframework/spring-webmvc/2.5.6.SEC03/spring-webmvc-2.5.6.SEC03.jar
> 412     ./org/springframework/spring-webmvc/3.0.7.RELEASE/spring-webmvc-3.0.7.RELEASE.jar
>
> 156     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_3/org.apache.servicemix.bundles.wsdl4j-1.6.2_3.jar
> 156     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_6/org.apache.servicemix.bundles.wsdl4j-1.6.2_6.jar
> 1284    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_4/org.apache.servicemix.bundles.ant-1.7.0_4.jar
> 1288    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_6/org.apache.servicemix.bundles.ant-1.7.0_6.jar
> 248     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-beanutils/1.8.3_1/org.apache.servicemix.bundles.commons-beanutils-1.8.3_1.jar
> 572     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-collections/3.2.1_1/org.apache.servicemix.bundles.commons-collections-3.2.1_1.jar
> 360     ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-vfs/1.0_5/org.apache.servicemix.bundles.commons-vfs-1.0_5.jar
> 2688    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.3.0.11_2/org.apache.servicemix.bundles.saxon-9.3.0.11_2.jar
> 2808    ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.4.0.1_2/org.apache.servicemix.bundles.saxon-9.4.0.1_2.jar
> 53704   total
>
>
>
> On Jun 27, 2013, at 4:57 PM, Gert Vanthienen <ge...@gmail.com> wrote:
>
>> L.S.,
>>
>>
>> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
>> that there now is a 100 MB upload limit to the dist repository.  Our
>> -full assembly is definitely larger than this and we even make things
>> a bit worse by adding multiple versions of some bundles into the
>> assembly.  This usually happens when multiple versions of the same
>> bundle are being used across projects.
>>
>> The obvious solution would be to check those versions across projects
>> and try to get them aligned as good as we can, but this will be a
>> never-ending task and very hard to keep up in the long run, so I was
>> wondering if there was anything else we could do to make this a bit
>> easier or more automated.
>>
>> For Apache ServiceMix 5.0.0, we could also consider the option of only
>> shipping a ZIP file.  I think it should be possible to create an
>> archive that works on both Windows and other operating systems.  If we
>> could, that would significantly reduce our footprint on Apache's
>> infrastructure, though it would still keep us way above the 100 MB
>> limit if we keep on shipping the -full assembly.
>>
>> Personally, I would prefer to keep that assembly around - the
>> ease/speed of installation of all the extra features outweighs the
>> cost of the extra disk space used on a server in my mind.  But that's
>> just my personal opinion and we can always consider the option of
>> dropping the -full assembly again if it proves too big of an issue for
>> infra@
>>
>>
>> Regards,
>>
>> Gert
>
> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
>

Re: Size of the assemblies

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi Dan,

thanks for the update.

It makes sense to review the content of the full assembly and especially 
the overlap between different projects.

I will take a look on that during this week.

Regards
JB

On 07/01/2013 07:45 PM, Daniel Kulp wrote:
>
> I did a bit of cleanup in just the smx4-features  XML and Camel 2.10.x branch and was able to shave off about 25MB from the assembly.  There is certainly more to go.   We now have about 53MB of "duplicate" jars  (which is down from over 100MB).   I've attached the list below.  A bunch of them we certainly need to have the various versions (like ehcache due to incompatible changes between 2.5.1 and 2.5.2).   Others are pulled in from jclouds or activemq or similar and thus would e hard to resolve.   Some would require better support from Karaf to really resolve (like the duplicate Spring jars) or an enhancement to the plugin would be great (like exclude the CXF activemq stuff as the activemq pom can supply a workable version).
>
> The bottom bunch are things that really should be looked at more in depth.  A couple can be fixed by updating the versions in the smx-nmr features.xml (which I don't have checked out on my computer right now).  Others are likely fixable by flipping from the smx bundled versions of commons-* to the actual commons-* versions.   Saxon is something that needs a bit more testing.   I've had some bad luck updating that in OSGi before.
>
> Anyway, here's a starting point for some work.  :-)    In anycase the tar.gz is now down below 290M.   Still huge though.
>
> Dan
>
>
>
> 1424	./com/hazelcast/hazelcast/1.9.4/hazelcast-1.9.4.jar
> 1660	./com/hazelcast/hazelcast/2.0.2/hazelcast-2.0.2.jar
> 60	./commons-codec/commons-codec/1.4/commons-codec-1.4.jar
> 228	./commons-codec/commons-codec/1.6/commons-codec-1.6.jar
> 276	./commons-lang/commons-lang/2.5/commons-lang-2.5.jar
> 280	./commons-lang/commons-lang/2.6/commons-lang-2.6.jar
> 208	./commons-net/commons-net/2.2/commons-net-2.2.jar
> 268	./commons-net/commons-net/3.1/commons-net-3.1.jar
> 96	./commons-pool/commons-pool/1.5.4/commons-pool-1.5.4.jar
> 112	./commons-pool/commons-pool/1.6/commons-pool-1.6.jar
> 484	./javax/mail/mail/1.4.4/mail-1.4.4.jar
> 500	./javax/mail/mail/1.4.5/mail-1.4.5.jar
> 532	./joda-time/joda-time/1.6.2/joda-time-1.6.2.jar
> 560	./joda-time/joda-time/2.1/joda-time-2.1.jar
> 116	./org/apache/activemq/activemq-console/5.4.2/activemq-console-5.4.2.jar
> 124	./org/apache/activemq/activemq-console/5.7.0/activemq-console-5.7.0.jar
> 3244	./org/apache/activemq/activemq-core/5.4.2/activemq-core-5.4.2.jar
> 3872	./org/apache/activemq/activemq-core/5.7.0/activemq-core-5.7.0.jar
> 36	./org/apache/activemq/activemq-pool/5.4.2/activemq-pool-5.4.2.jar
> 48	./org/apache/activemq/activemq-pool/5.7.0/activemq-pool-5.7.0.jar
> 84	./org/apache/activemq/activemq-ra/5.4.2/activemq-ra-5.4.2.jar
> 88	./org/apache/activemq/activemq-ra/5.7.0/activemq-ra-5.7.0.jar
> 152	./org/apache/activemq/kahadb/5.4.2/kahadb-5.4.2.jar
> 184	./org/apache/activemq/kahadb/5.7.0/kahadb-5.7.0.jar
> 160	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.2-incubating/org.apache.aries.transaction.manager-0.2-incubating.jar
> 172	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3/org.apache.aries.transaction.manager-0.3.jar
> 172	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3.1/org.apache.aries.transaction.manager-0.3.1.jar
> 488	./org/apache/httpcomponents/httpclient-osgi/4.1.1/httpclient-osgi-4.1.1.jar
> 528	./org/apache/httpcomponents/httpclient-osgi/4.1.3/httpclient-osgi-4.1.3.jar
> 796	./org/apache/httpcomponents/httpclient-osgi/4.2.1/httpclient-osgi-4.2.1.jar
> 336	./org/apache/httpcomponents/httpcore-osgi/4.1/httpcore-osgi-4.1.jar
> 376	./org/apache/httpcomponents/httpcore-osgi/4.1.4/httpcore-osgi-4.1.4.jar
> 504	./org/apache/httpcomponents/httpcore-osgi/4.2.1/httpcore-osgi-4.2.1.jar
> 284	./org/apache/jackrabbit/jackrabbit-jcr-commons/2.2.12/jackrabbit-jcr-commons-2.2.12.jar
> 344	./org/apache/jackrabbit/jackrabbit-jcr-commons/2.5.2/jackrabbit-jcr-commons-2.5.2.jar
> 632	./org/apache/mina/mina-core/2.0.5/mina-core-2.0.5.jar
> 632	./org/apache/mina/mina-core/2.0.7/mina-core-2.0.7.jar
> 444	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/2.7.7_5/org.apache.servicemix.bundles.antlr-2.7.7_5.jar
> 560	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/3.0.1_6/org.apache.servicemix.bundles.antlr-3.0.1_6.jar
> 112	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr-runtime/3.0.1_2/org.apache.servicemix.bundles.antlr-runtime-3.0.1_2.jar
> 16	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_5/org.apache.servicemix.bundles.aopalliance-1.0_5.jar
> 20	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_6/org.apache.servicemix.bundles.aopalliance-1.0_6.jar
> 184	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/2.2.3_5/org.apache.servicemix.bundles.asm-2.2.3_5.jar
> 232	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/3.3.1_1/org.apache.servicemix.bundles.asm-3.3.1_1.jar
> 308	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_6/org.apache.servicemix.bundles.commons-httpclient-3.1_6.jar
> 312	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_7/org.apache.servicemix.bundles.commons-httpclient-3.1_7.jar
> 316	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_2/org.apache.servicemix.bundles.dom4j-1.6.1_2.jar
> 320	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5/org.apache.servicemix.bundles.dom4j-1.6.1_5.jar
> 1272	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.1_1/org.apache.servicemix.bundles.ehcache-2.5.1_1.jar
> 1284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.2_1/org.apache.servicemix.bundles.ehcache-2.5.2_1.jar
> 136	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.6_1/org.apache.servicemix.bundles.jasypt-1.6_1.jar
> 128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.9.0_1/org.apache.servicemix.bundles.jasypt-1.9.0_1.jar
> 192	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.44_2/org.apache.servicemix.bundles.jsch-0.1.44_2.jar
> 232	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.48_1/org.apache.servicemix.bundles.jsch-0.1.48_1.jar
> 308	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_2/org.apache.servicemix.bundles.jsmpp-2.1.0_2.jar
> 312	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_4/org.apache.servicemix.bundles.jsmpp-2.1.0_4.jar
> 748	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.3.Final_2/org.apache.servicemix.bundles.netty-3.2.3.Final_2.jar
> 764	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.7.Final_1/org.apache.servicemix.bundles.netty-3.2.7.Final_1.jar
> 72	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_3/org.apache.servicemix.bundles.oro-2.0.8_3.jar
> 76	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_6/org.apache.servicemix.bundles.oro-2.0.8_6.jar
> 332	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.3.0_3/org.apache.servicemix.bundles.protobuf-java-2.3.0_3.jar
> 452	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.4.1_1/org.apache.servicemix.bundles.protobuf-java-2.4.1_1.jar
> 396	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.10.1_1/org.apache.servicemix.bundles.snmp4j-1.10.1_1.jar
> 284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.8.1_4/org.apache.servicemix.bundles.snmp4j-1.8.1_4.jar
> 452	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_4/org.apache.servicemix.bundles.velocity-1.7_4.jar
> 448	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_5/org.apache.servicemix.bundles.velocity-1.7_5.jar
> 84	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.werken-xpath/0.9.4_5/org.apache.servicemix.bundles.werken-xpath-0.9.4_5.jar
> 2692	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.5.0_2/org.apache.servicemix.bundles.xmlbeans-2.5.0_2.jar
> 2696	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.6.0_2/org.apache.servicemix.bundles.xmlbeans-2.6.0_2.jar
> 128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_5/org.apache.servicemix.bundles.xpp3-1.1.4c_5.jar
> 128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_6/org.apache.servicemix.bundles.xpp3-1.1.4c_6.jar
> 416	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.3_3/org.apache.servicemix.bundles.xstream-1.3_3.jar
> 488	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.4.2_2/org.apache.servicemix.bundles.xstream-1.4.2_2.jar
> 36	./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.9.0/org.apache.servicemix.specs.scripting-api-1.0-1.9.0.jar
> 36	./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/2.2.0/org.apache.servicemix.specs.scripting-api-1.0-2.2.0.jar
> 48	./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.9.0/org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar
> 48	./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/2.2.0/org.apache.servicemix.specs.stax-api-1.0-2.2.0.jar
> 324	./org/apache/sshd/sshd-core/0.6.0/sshd-core-0.6.0.jar
> 368	./org/apache/sshd/sshd-core/0.8.0/sshd-core-0.8.0.jar
> 108	./org/fusesource/hawtdispatch/hawtdispatch/1.11/hawtdispatch-1.11.jar
> 108	./org/fusesource/hawtdispatch/hawtdispatch/1.12/hawtdispatch-1.12.jar
> 104	./org/fusesource/hawtdispatch/hawtdispatch-transport/1.11/hawtdispatch-transport-1.11.jar
> 124	./org/fusesource/hawtdispatch/hawtdispatch-transport/1.12/hawtdispatch-transport-1.12.jar
> 112	./org/fusesource/mqtt-client/mqtt-client/1.3/mqtt-client-1.3.jar
> 112	./org/fusesource/mqtt-client/mqtt-client/1.4/mqtt-client-1.4.jar
> 320	./org/springframework/spring-aop/2.5.6.SEC03/spring-aop-2.5.6.SEC03.jar
> 316	./org/springframework/spring-aop/3.0.7.RELEASE/spring-aop-3.0.7.RELEASE.jar
> 480	./org/springframework/spring-beans/2.5.6.SEC03/spring-beans-2.5.6.SEC03.jar
> 544	./org/springframework/spring-beans/3.0.7.RELEASE/spring-beans-3.0.7.RELEASE.jar
> 468	./org/springframework/spring-context/2.5.6.SEC03/spring-context-2.5.6.SEC03.jar
> 656	./org/springframework/spring-context/3.0.7.RELEASE/spring-context-3.0.7.RELEASE.jar
> 96	./org/springframework/spring-context-support/2.5.6.SEC03/spring-context-support-2.5.6.SEC03.jar
> 100	./org/springframework/spring-context-support/3.0.7.RELEASE/spring-context-support-3.0.7.RELEASE.jar
> 280	./org/springframework/spring-core/2.5.6.SEC03/spring-core-2.5.6.SEC03.jar
> 376	./org/springframework/spring-core/3.0.7.RELEASE/spring-core-3.0.7.RELEASE.jar
> 192	./org/springframework/spring-web/2.5.6.SEC03/spring-web-2.5.6.SEC03.jar
> 392	./org/springframework/spring-web/3.0.7.RELEASE/spring-web-3.0.7.RELEASE.jar
> 396	./org/springframework/spring-webmvc/2.5.6.SEC03/spring-webmvc-2.5.6.SEC03.jar
> 412	./org/springframework/spring-webmvc/3.0.7.RELEASE/spring-webmvc-3.0.7.RELEASE.jar
>
> 156	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_3/org.apache.servicemix.bundles.wsdl4j-1.6.2_3.jar
> 156	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_6/org.apache.servicemix.bundles.wsdl4j-1.6.2_6.jar
> 1284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_4/org.apache.servicemix.bundles.ant-1.7.0_4.jar
> 1288	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_6/org.apache.servicemix.bundles.ant-1.7.0_6.jar
> 248	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-beanutils/1.8.3_1/org.apache.servicemix.bundles.commons-beanutils-1.8.3_1.jar
> 572	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-collections/3.2.1_1/org.apache.servicemix.bundles.commons-collections-3.2.1_1.jar
> 360	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-vfs/1.0_5/org.apache.servicemix.bundles.commons-vfs-1.0_5.jar
> 2688	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.3.0.11_2/org.apache.servicemix.bundles.saxon-9.3.0.11_2.jar
> 2808	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.4.0.1_2/org.apache.servicemix.bundles.saxon-9.4.0.1_2.jar
> 53704	total
>
>
>
> On Jun 27, 2013, at 4:57 PM, Gert Vanthienen <ge...@gmail.com> wrote:
>
>> L.S.,
>>
>>
>> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
>> that there now is a 100 MB upload limit to the dist repository.  Our
>> -full assembly is definitely larger than this and we even make things
>> a bit worse by adding multiple versions of some bundles into the
>> assembly.  This usually happens when multiple versions of the same
>> bundle are being used across projects.
>>
>> The obvious solution would be to check those versions across projects
>> and try to get them aligned as good as we can, but this will be a
>> never-ending task and very hard to keep up in the long run, so I was
>> wondering if there was anything else we could do to make this a bit
>> easier or more automated.
>>
>> For Apache ServiceMix 5.0.0, we could also consider the option of only
>> shipping a ZIP file.  I think it should be possible to create an
>> archive that works on both Windows and other operating systems.  If we
>> could, that would significantly reduce our footprint on Apache's
>> infrastructure, though it would still keep us way above the 100 MB
>> limit if we keep on shipping the -full assembly.
>>
>> Personally, I would prefer to keep that assembly around - the
>> ease/speed of installation of all the extra features outweighs the
>> cost of the extra disk space used on a server in my mind.  But that's
>> just my personal opinion and we can always consider the option of
>> dropping the -full assembly again if it proves too big of an issue for
>> infra@
>>
>>
>> Regards,
>>
>> Gert
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Re: Size of the assemblies

Posted by Daniel Kulp <dk...@apache.org>.
I did a bit of cleanup in just the smx4-features  XML and Camel 2.10.x branch and was able to shave off about 25MB from the assembly.  There is certainly more to go.   We now have about 53MB of "duplicate" jars  (which is down from over 100MB).   I've attached the list below.  A bunch of them we certainly need to have the various versions (like ehcache due to incompatible changes between 2.5.1 and 2.5.2).   Others are pulled in from jclouds or activemq or similar and thus would e hard to resolve.   Some would require better support from Karaf to really resolve (like the duplicate Spring jars) or an enhancement to the plugin would be great (like exclude the CXF activemq stuff as the activemq pom can supply a workable version).

The bottom bunch are things that really should be looked at more in depth.  A couple can be fixed by updating the versions in the smx-nmr features.xml (which I don't have checked out on my computer right now).  Others are likely fixable by flipping from the smx bundled versions of commons-* to the actual commons-* versions.   Saxon is something that needs a bit more testing.   I've had some bad luck updating that in OSGi before.

Anyway, here's a starting point for some work.  :-)    In anycase the tar.gz is now down below 290M.   Still huge though.

Dan



1424	./com/hazelcast/hazelcast/1.9.4/hazelcast-1.9.4.jar
1660	./com/hazelcast/hazelcast/2.0.2/hazelcast-2.0.2.jar
60	./commons-codec/commons-codec/1.4/commons-codec-1.4.jar
228	./commons-codec/commons-codec/1.6/commons-codec-1.6.jar
276	./commons-lang/commons-lang/2.5/commons-lang-2.5.jar
280	./commons-lang/commons-lang/2.6/commons-lang-2.6.jar
208	./commons-net/commons-net/2.2/commons-net-2.2.jar
268	./commons-net/commons-net/3.1/commons-net-3.1.jar
96	./commons-pool/commons-pool/1.5.4/commons-pool-1.5.4.jar
112	./commons-pool/commons-pool/1.6/commons-pool-1.6.jar
484	./javax/mail/mail/1.4.4/mail-1.4.4.jar
500	./javax/mail/mail/1.4.5/mail-1.4.5.jar
532	./joda-time/joda-time/1.6.2/joda-time-1.6.2.jar
560	./joda-time/joda-time/2.1/joda-time-2.1.jar
116	./org/apache/activemq/activemq-console/5.4.2/activemq-console-5.4.2.jar
124	./org/apache/activemq/activemq-console/5.7.0/activemq-console-5.7.0.jar
3244	./org/apache/activemq/activemq-core/5.4.2/activemq-core-5.4.2.jar
3872	./org/apache/activemq/activemq-core/5.7.0/activemq-core-5.7.0.jar
36	./org/apache/activemq/activemq-pool/5.4.2/activemq-pool-5.4.2.jar
48	./org/apache/activemq/activemq-pool/5.7.0/activemq-pool-5.7.0.jar
84	./org/apache/activemq/activemq-ra/5.4.2/activemq-ra-5.4.2.jar
88	./org/apache/activemq/activemq-ra/5.7.0/activemq-ra-5.7.0.jar
152	./org/apache/activemq/kahadb/5.4.2/kahadb-5.4.2.jar
184	./org/apache/activemq/kahadb/5.7.0/kahadb-5.7.0.jar
160	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.2-incubating/org.apache.aries.transaction.manager-0.2-incubating.jar
172	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3/org.apache.aries.transaction.manager-0.3.jar
172	./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3.1/org.apache.aries.transaction.manager-0.3.1.jar
488	./org/apache/httpcomponents/httpclient-osgi/4.1.1/httpclient-osgi-4.1.1.jar
528	./org/apache/httpcomponents/httpclient-osgi/4.1.3/httpclient-osgi-4.1.3.jar
796	./org/apache/httpcomponents/httpclient-osgi/4.2.1/httpclient-osgi-4.2.1.jar
336	./org/apache/httpcomponents/httpcore-osgi/4.1/httpcore-osgi-4.1.jar
376	./org/apache/httpcomponents/httpcore-osgi/4.1.4/httpcore-osgi-4.1.4.jar
504	./org/apache/httpcomponents/httpcore-osgi/4.2.1/httpcore-osgi-4.2.1.jar
284	./org/apache/jackrabbit/jackrabbit-jcr-commons/2.2.12/jackrabbit-jcr-commons-2.2.12.jar
344	./org/apache/jackrabbit/jackrabbit-jcr-commons/2.5.2/jackrabbit-jcr-commons-2.5.2.jar
632	./org/apache/mina/mina-core/2.0.5/mina-core-2.0.5.jar
632	./org/apache/mina/mina-core/2.0.7/mina-core-2.0.7.jar
444	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/2.7.7_5/org.apache.servicemix.bundles.antlr-2.7.7_5.jar
560	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/3.0.1_6/org.apache.servicemix.bundles.antlr-3.0.1_6.jar
112	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr-runtime/3.0.1_2/org.apache.servicemix.bundles.antlr-runtime-3.0.1_2.jar
16	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_5/org.apache.servicemix.bundles.aopalliance-1.0_5.jar
20	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_6/org.apache.servicemix.bundles.aopalliance-1.0_6.jar
184	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/2.2.3_5/org.apache.servicemix.bundles.asm-2.2.3_5.jar
232	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/3.3.1_1/org.apache.servicemix.bundles.asm-3.3.1_1.jar
308	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_6/org.apache.servicemix.bundles.commons-httpclient-3.1_6.jar
312	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_7/org.apache.servicemix.bundles.commons-httpclient-3.1_7.jar
316	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_2/org.apache.servicemix.bundles.dom4j-1.6.1_2.jar
320	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5/org.apache.servicemix.bundles.dom4j-1.6.1_5.jar
1272	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.1_1/org.apache.servicemix.bundles.ehcache-2.5.1_1.jar
1284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.2_1/org.apache.servicemix.bundles.ehcache-2.5.2_1.jar
136	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.6_1/org.apache.servicemix.bundles.jasypt-1.6_1.jar
128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.9.0_1/org.apache.servicemix.bundles.jasypt-1.9.0_1.jar
192	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.44_2/org.apache.servicemix.bundles.jsch-0.1.44_2.jar
232	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.48_1/org.apache.servicemix.bundles.jsch-0.1.48_1.jar
308	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_2/org.apache.servicemix.bundles.jsmpp-2.1.0_2.jar
312	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_4/org.apache.servicemix.bundles.jsmpp-2.1.0_4.jar
748	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.3.Final_2/org.apache.servicemix.bundles.netty-3.2.3.Final_2.jar
764	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.7.Final_1/org.apache.servicemix.bundles.netty-3.2.7.Final_1.jar
72	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_3/org.apache.servicemix.bundles.oro-2.0.8_3.jar
76	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_6/org.apache.servicemix.bundles.oro-2.0.8_6.jar
332	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.3.0_3/org.apache.servicemix.bundles.protobuf-java-2.3.0_3.jar
452	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.4.1_1/org.apache.servicemix.bundles.protobuf-java-2.4.1_1.jar
396	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.10.1_1/org.apache.servicemix.bundles.snmp4j-1.10.1_1.jar
284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.8.1_4/org.apache.servicemix.bundles.snmp4j-1.8.1_4.jar
452	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_4/org.apache.servicemix.bundles.velocity-1.7_4.jar
448	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_5/org.apache.servicemix.bundles.velocity-1.7_5.jar
84	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.werken-xpath/0.9.4_5/org.apache.servicemix.bundles.werken-xpath-0.9.4_5.jar
2692	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.5.0_2/org.apache.servicemix.bundles.xmlbeans-2.5.0_2.jar
2696	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.6.0_2/org.apache.servicemix.bundles.xmlbeans-2.6.0_2.jar
128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_5/org.apache.servicemix.bundles.xpp3-1.1.4c_5.jar
128	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_6/org.apache.servicemix.bundles.xpp3-1.1.4c_6.jar
416	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.3_3/org.apache.servicemix.bundles.xstream-1.3_3.jar
488	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.4.2_2/org.apache.servicemix.bundles.xstream-1.4.2_2.jar
36	./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.9.0/org.apache.servicemix.specs.scripting-api-1.0-1.9.0.jar
36	./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/2.2.0/org.apache.servicemix.specs.scripting-api-1.0-2.2.0.jar
48	./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.9.0/org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar
48	./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/2.2.0/org.apache.servicemix.specs.stax-api-1.0-2.2.0.jar
324	./org/apache/sshd/sshd-core/0.6.0/sshd-core-0.6.0.jar
368	./org/apache/sshd/sshd-core/0.8.0/sshd-core-0.8.0.jar
108	./org/fusesource/hawtdispatch/hawtdispatch/1.11/hawtdispatch-1.11.jar
108	./org/fusesource/hawtdispatch/hawtdispatch/1.12/hawtdispatch-1.12.jar
104	./org/fusesource/hawtdispatch/hawtdispatch-transport/1.11/hawtdispatch-transport-1.11.jar
124	./org/fusesource/hawtdispatch/hawtdispatch-transport/1.12/hawtdispatch-transport-1.12.jar
112	./org/fusesource/mqtt-client/mqtt-client/1.3/mqtt-client-1.3.jar
112	./org/fusesource/mqtt-client/mqtt-client/1.4/mqtt-client-1.4.jar
320	./org/springframework/spring-aop/2.5.6.SEC03/spring-aop-2.5.6.SEC03.jar
316	./org/springframework/spring-aop/3.0.7.RELEASE/spring-aop-3.0.7.RELEASE.jar
480	./org/springframework/spring-beans/2.5.6.SEC03/spring-beans-2.5.6.SEC03.jar
544	./org/springframework/spring-beans/3.0.7.RELEASE/spring-beans-3.0.7.RELEASE.jar
468	./org/springframework/spring-context/2.5.6.SEC03/spring-context-2.5.6.SEC03.jar
656	./org/springframework/spring-context/3.0.7.RELEASE/spring-context-3.0.7.RELEASE.jar
96	./org/springframework/spring-context-support/2.5.6.SEC03/spring-context-support-2.5.6.SEC03.jar
100	./org/springframework/spring-context-support/3.0.7.RELEASE/spring-context-support-3.0.7.RELEASE.jar
280	./org/springframework/spring-core/2.5.6.SEC03/spring-core-2.5.6.SEC03.jar
376	./org/springframework/spring-core/3.0.7.RELEASE/spring-core-3.0.7.RELEASE.jar
192	./org/springframework/spring-web/2.5.6.SEC03/spring-web-2.5.6.SEC03.jar
392	./org/springframework/spring-web/3.0.7.RELEASE/spring-web-3.0.7.RELEASE.jar
396	./org/springframework/spring-webmvc/2.5.6.SEC03/spring-webmvc-2.5.6.SEC03.jar
412	./org/springframework/spring-webmvc/3.0.7.RELEASE/spring-webmvc-3.0.7.RELEASE.jar

156	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_3/org.apache.servicemix.bundles.wsdl4j-1.6.2_3.jar
156	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_6/org.apache.servicemix.bundles.wsdl4j-1.6.2_6.jar
1284	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_4/org.apache.servicemix.bundles.ant-1.7.0_4.jar
1288	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_6/org.apache.servicemix.bundles.ant-1.7.0_6.jar
248	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-beanutils/1.8.3_1/org.apache.servicemix.bundles.commons-beanutils-1.8.3_1.jar
572	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-collections/3.2.1_1/org.apache.servicemix.bundles.commons-collections-3.2.1_1.jar
360	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-vfs/1.0_5/org.apache.servicemix.bundles.commons-vfs-1.0_5.jar
2688	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.3.0.11_2/org.apache.servicemix.bundles.saxon-9.3.0.11_2.jar
2808	./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.4.0.1_2/org.apache.servicemix.bundles.saxon-9.4.0.1_2.jar
53704	total



On Jun 27, 2013, at 4:57 PM, Gert Vanthienen <ge...@gmail.com> wrote:

> L.S.,
> 
> 
> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
> that there now is a 100 MB upload limit to the dist repository.  Our
> -full assembly is definitely larger than this and we even make things
> a bit worse by adding multiple versions of some bundles into the
> assembly.  This usually happens when multiple versions of the same
> bundle are being used across projects.
> 
> The obvious solution would be to check those versions across projects
> and try to get them aligned as good as we can, but this will be a
> never-ending task and very hard to keep up in the long run, so I was
> wondering if there was anything else we could do to make this a bit
> easier or more automated.
> 
> For Apache ServiceMix 5.0.0, we could also consider the option of only
> shipping a ZIP file.  I think it should be possible to create an
> archive that works on both Windows and other operating systems.  If we
> could, that would significantly reduce our footprint on Apache's
> infrastructure, though it would still keep us way above the 100 MB
> limit if we keep on shipping the -full assembly.
> 
> Personally, I would prefer to keep that assembly around - the
> ease/speed of installation of all the extra features outweighs the
> cost of the extra disk space used on a server in my mind.  But that's
> just my personal opinion and we can always consider the option of
> dropping the -full assembly again if it proves too big of an issue for
> infra@
> 
> 
> Regards,
> 
> Gert

-- 
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com


Re: Size of the assemblies

Posted by Christian Müller <ch...@gmail.com>.
+1 on zip only for 5.0 and keep the -full distro.
I don't think it's possible to align all third party dependencies of SMX,
Camel, CXF and ActiveMQ because they all have different release cycles. May
SMX can do some last minute sanity checks on this before starting the
release procedure...

Best,
Christian
-----------------

Software Integration Specialist

Apache Camel committer: https://camel.apache.org/team
V.P. Apache Camel: https://www.apache.org/foundation/
Apache Member: https://www.apache.org/foundation/members.html

https://www.linkedin.com/pub/christian-mueller/11/551/642


On Thu, Jun 27, 2013 at 10:57 PM, Gert Vanthienen <gert.vanthienen@gmail.com
> wrote:

> L.S.,
>
>
> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
> that there now is a 100 MB upload limit to the dist repository.  Our
> -full assembly is definitely larger than this and we even make things
> a bit worse by adding multiple versions of some bundles into the
> assembly.  This usually happens when multiple versions of the same
> bundle are being used across projects.
>
> The obvious solution would be to check those versions across projects
> and try to get them aligned as good as we can, but this will be a
> never-ending task and very hard to keep up in the long run, so I was
> wondering if there was anything else we could do to make this a bit
> easier or more automated.
>
> For Apache ServiceMix 5.0.0, we could also consider the option of only
> shipping a ZIP file.  I think it should be possible to create an
> archive that works on both Windows and other operating systems.  If we
> could, that would significantly reduce our footprint on Apache's
> infrastructure, though it would still keep us way above the 100 MB
> limit if we keep on shipping the -full assembly.
>
> Personally, I would prefer to keep that assembly around - the
> ease/speed of installation of all the extra features outweighs the
> cost of the extra disk space used on a server in my mind.  But that's
> just my personal opinion and we can always consider the option of
> dropping the -full assembly again if it proves too big of an issue for
> infra@
>
>
> Regards,
>
> Gert
>

Re: Size of the assemblies

Posted by Freeman Fang <fr...@gmail.com>.
Yes, keep align across projects are really hard, especially projects evolve independently and release separately,   fortunately  we have OBR resolver which prevent to install redundant bundles, have multiple version bundles in kit is ugly but has no real impact in terms of functionality.

And I do think keep full kit is necessary, it's important for users who have no internet access.

My 2 cents

Thanks
-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋



On 2013-6-28, at 上午4:57, Gert Vanthienen wrote:

> L.S.,
> 
> 
> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact
> that there now is a 100 MB upload limit to the dist repository.  Our
> -full assembly is definitely larger than this and we even make things
> a bit worse by adding multiple versions of some bundles into the
> assembly.  This usually happens when multiple versions of the same
> bundle are being used across projects.
> 
> The obvious solution would be to check those versions across projects
> and try to get them aligned as good as we can, but this will be a
> never-ending task and very hard to keep up in the long run, so I was
> wondering if there was anything else we could do to make this a bit
> easier or more automated.
> 
> For Apache ServiceMix 5.0.0, we could also consider the option of only
> shipping a ZIP file.  I think it should be possible to create an
> archive that works on both Windows and other operating systems.  If we
> could, that would significantly reduce our footprint on Apache's
> infrastructure, though it would still keep us way above the 100 MB
> limit if we keep on shipping the -full assembly.
> 
> Personally, I would prefer to keep that assembly around - the
> ease/speed of installation of all the extra features outweighs the
> cost of the extra disk space used on a server in my mind.  But that's
> just my personal opinion and we can always consider the option of
> dropping the -full assembly again if it proves too big of an issue for
> infra@
> 
> 
> Regards,
> 
> Gert