You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Luciano Resende <lu...@gmail.com> on 2008/03/28 18:32:25 UTC

[SCA 1.2] SCA Sample dependencies

I was looking at some sample applications dependencies last night, and
realized that our simple calculator-webapp is huge and with a lot of
unnecessary dependencies being dragged to it's WEB-INF\lib. This might
cause the impression that SCA is heavy, when it's not. Should we spend
some time around reviewing these dependencies before next RC ?

-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by Luciano Resende <lu...@gmail.com>.
I have attached a patch to TUSCANY-2167 [1] with the changes for
Dependency Cleanup. With these changes, calculator dependencies, that
was originally around 13 MB is now around 4.4 MB.

In Summary, these changes introduce couple new modules that is being
used to break up ws specific dependencies from policy modules (e.g
policy-xml-ws and policy-security-ws). Other then refactoring, there
is no change in functionality.

Please give it a quick review, and let me know if people are
comfortable with adding this to SCA 1.2 release.


[1] https://issues.apache.org/jira/browse/TUSCANY-2167

On Mon, Mar 31, 2008 at 8:32 AM, Simon Nash <na...@apache.org> wrote:
> Luciano Resende wrote:
>  > I have created TUSCANY-2167 to track this issue, and I'm now
>  > evaluating our calculator sample, and calculator-webapp sample to see
>  > where all the dependencies are coming from. One thing I noticed is
>  > that policy-xml is bringing a lot of ws-security related dependencies
>  > to these applications, and I'm now trying to move this dependencies to
>  > a policy-xml-ws module that would be available only when the
>  > application is using the ws-binding. I'd also take a look in other
>  > dependencies and see if I can cleanup them before our next RC.
>  >
>  > Please let me know if you have questions and/or comments.
>  >
>  +1 for removing unecessary dependencies and refactoring modules
>  where necessary, as in the security case you described.  Thanks
>  for taking a look at this.
>
>  Moving ws-security dependencies to policy-xml-ws is better than
>  having them in policy-xml, though this doesn't seem quite right if
>  someone is trying to use a different policy (not security) with the
>  Web Service binding.  Should they be in policy-xml-ws-security?
>  To get the full benefit of this, it would also be necessary to
>  refactor binding-ws-axis2 so that it does not pull in all the
>  ws-security stuff.
>
>  On the more general point of sample dependencies, I think it
>  would be a very valuable exercise to use the samples to create
>  dependency profiles of what is really needed to run each sample
>  (with bogus dependencies removed).  When we have this information,
>  I think it would be useful to look for clustering between
>  different samples to establish profiles of groups of dependencies
>  that are typically needed together.  We might be able to come
>  up with a partially ordered tree containing functional units
>  for Tuscany SCA Java, and indicate for each node in the tree
>  which samples it enables.
>
>  These functional units would typically be larger than a single
>  maven module.  I'm expecting that we might have between 12 and 20
>  functional units in the whole of Tuscany SCA Java.
>
>  Here's a illustration of what I mean:
>
>  tuscany-core [runs: calculator, simple-callback]
>     tuscany-ws [runs: helloworld-ws-reference&service, simple-callback-ws]
>        tuscany-ws-security [runs: helloworld-ws-reference&service-secure]
>     tuscany-jms [runs: helloworld-reference&service-jms]
>     tuscany-webapp [runs: calculator-webapp]
>     tuscany-script [runs: calculator-script]
>     etc.
>
>  I don't know how deeply nested this would be, or whether it's a
>  simple tree (as shown above) or a graph where some samples would
>  require multiple functional units from different branches of the
>  tree.  For example, the sample calculator-ws-webapp might require
>  bringing in the functional units tuscany-ws and tuscany-webapp.
>
>    Simon
>
>
>
>  >
>  > [1] https://issues.apache.org/jira/browse/TUSCANY-2167
>  >
>  > On Fri, Mar 28, 2008 at 6:42 PM, haleh mahbod <hm...@gmail.com> wrote:
>  >> Should this  mvn command be put in the development guide for samples so
>  >>  anyone creating a new sample runs these commands and gets rid of unnecessary
>  >>  dependencies?
>  >>
>  >>
>  >>
>  >>
>  >>
>  >>  On 3/28/08, Raymond Feng <en...@gmail.com> wrote:
>  >>  >
>  >>  > Try mvn dependency:analyze. It analyzes the dependencies of this project
>  >>  > and
>  >>  > determines which are: used and declared; used and undeclared; unused and
>  >>  > declared.
>  >>  >
>  >>  > Thanks,
>  >>  > Raymond
>  >>  > --------------------------------------------------
>  >>  > From: "Jean-Sebastien Delfino" <js...@apache.org>
>  >>  > Sent: Friday, March 28, 2008 1:02 PM
>  >>  > To: <tu...@ws.apache.org>
>  >>  > Subject: Re: [SCA 1.2] SCA Sample dependencies
>  >>  >
>  >>  > > Luciano Resende wrote:
>  >>  > >> I was looking at some sample applications dependencies last night, and
>  >>  > >> realized that our simple calculator-webapp is huge and with a lot of
>  >>  > >> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
>  >>  > >> cause the impression that SCA is heavy, when it's not. Should we spend
>  >>  > >> some time around reviewing these dependencies before next RC ?
>  >>  > >>
>  >>  > >
>  >>  > > +1 I'd suggest to start with calculator (not even the webapp version), I
>  >>  > > can see dependencies on Xalan, Xerces, Axiom there, no idea why they are
>  >>  > > required. I've traced Xalan to assembly-xml, and removing it from the
>  >>  > pom
>  >>  > > doesn't seem to break it. I think we need a thorough review of the
>  >>  > > dependencies that have progressively been added to the core runtime, and
>  >>  > > see if they're all really needed or just oversights that can be cleaned
>  >>  > > up.
>  >>  > >
>  >>  > > --
>  >>  > > Jean-Sebastien
>  >>  > >
>  >>  > > ---------------------------------------------------------------------
>  >>  > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>  >>  > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>  >>  > >
>  >>  >
>  >>  > ---------------------------------------------------------------------
>  >>  > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>  >>  > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>  >>  >
>  >>  >
>  >>
>  >
>  >
>  >
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>  For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>



-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by Simon Nash <na...@apache.org>.
Luciano Resende wrote:
> I have created TUSCANY-2167 to track this issue, and I'm now
> evaluating our calculator sample, and calculator-webapp sample to see
> where all the dependencies are coming from. One thing I noticed is
> that policy-xml is bringing a lot of ws-security related dependencies
> to these applications, and I'm now trying to move this dependencies to
> a policy-xml-ws module that would be available only when the
> application is using the ws-binding. I'd also take a look in other
> dependencies and see if I can cleanup them before our next RC.
> 
> Please let me know if you have questions and/or comments.
> 
+1 for removing unecessary dependencies and refactoring modules
where necessary, as in the security case you described.  Thanks
for taking a look at this.

Moving ws-security dependencies to policy-xml-ws is better than
having them in policy-xml, though this doesn't seem quite right if
someone is trying to use a different policy (not security) with the
Web Service binding.  Should they be in policy-xml-ws-security?
To get the full benefit of this, it would also be necessary to
refactor binding-ws-axis2 so that it does not pull in all the
ws-security stuff.

On the more general point of sample dependencies, I think it
would be a very valuable exercise to use the samples to create
dependency profiles of what is really needed to run each sample
(with bogus dependencies removed).  When we have this information,
I think it would be useful to look for clustering between
different samples to establish profiles of groups of dependencies
that are typically needed together.  We might be able to come
up with a partially ordered tree containing functional units
for Tuscany SCA Java, and indicate for each node in the tree
which samples it enables.

These functional units would typically be larger than a single
maven module.  I'm expecting that we might have between 12 and 20
functional units in the whole of Tuscany SCA Java.

Here's a illustration of what I mean:

tuscany-core [runs: calculator, simple-callback]
    tuscany-ws [runs: helloworld-ws-reference&service, simple-callback-ws]
       tuscany-ws-security [runs: helloworld-ws-reference&service-secure]
    tuscany-jms [runs: helloworld-reference&service-jms]
    tuscany-webapp [runs: calculator-webapp]
    tuscany-script [runs: calculator-script]
    etc.

I don't know how deeply nested this would be, or whether it's a
simple tree (as shown above) or a graph where some samples would
require multiple functional units from different branches of the
tree.  For example, the sample calculator-ws-webapp might require
bringing in the functional units tuscany-ws and tuscany-webapp.

   Simon

> 
> [1] https://issues.apache.org/jira/browse/TUSCANY-2167
> 
> On Fri, Mar 28, 2008 at 6:42 PM, haleh mahbod <hm...@gmail.com> wrote:
>> Should this  mvn command be put in the development guide for samples so
>>  anyone creating a new sample runs these commands and gets rid of unnecessary
>>  dependencies?
>>
>>
>>
>>
>>
>>  On 3/28/08, Raymond Feng <en...@gmail.com> wrote:
>>  >
>>  > Try mvn dependency:analyze. It analyzes the dependencies of this project
>>  > and
>>  > determines which are: used and declared; used and undeclared; unused and
>>  > declared.
>>  >
>>  > Thanks,
>>  > Raymond
>>  > --------------------------------------------------
>>  > From: "Jean-Sebastien Delfino" <js...@apache.org>
>>  > Sent: Friday, March 28, 2008 1:02 PM
>>  > To: <tu...@ws.apache.org>
>>  > Subject: Re: [SCA 1.2] SCA Sample dependencies
>>  >
>>  > > Luciano Resende wrote:
>>  > >> I was looking at some sample applications dependencies last night, and
>>  > >> realized that our simple calculator-webapp is huge and with a lot of
>>  > >> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
>>  > >> cause the impression that SCA is heavy, when it's not. Should we spend
>>  > >> some time around reviewing these dependencies before next RC ?
>>  > >>
>>  > >
>>  > > +1 I'd suggest to start with calculator (not even the webapp version), I
>>  > > can see dependencies on Xalan, Xerces, Axiom there, no idea why they are
>>  > > required. I've traced Xalan to assembly-xml, and removing it from the
>>  > pom
>>  > > doesn't seem to break it. I think we need a thorough review of the
>>  > > dependencies that have progressively been added to the core runtime, and
>>  > > see if they're all really needed or just oversights that can be cleaned
>>  > > up.
>>  > >
>>  > > --
>>  > > Jean-Sebastien
>>  > >
>>  > > ---------------------------------------------------------------------
>>  > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>>  > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>>  > >
>>  >
>>  > ---------------------------------------------------------------------
>>  > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>>  > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>>  >
>>  >
>>
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by Luciano Resende <lu...@gmail.com>.
I have created TUSCANY-2167 to track this issue, and I'm now
evaluating our calculator sample, and calculator-webapp sample to see
where all the dependencies are coming from. One thing I noticed is
that policy-xml is bringing a lot of ws-security related dependencies
to these applications, and I'm now trying to move this dependencies to
a policy-xml-ws module that would be available only when the
application is using the ws-binding. I'd also take a look in other
dependencies and see if I can cleanup them before our next RC.

Please let me know if you have questions and/or comments.


[1] https://issues.apache.org/jira/browse/TUSCANY-2167

On Fri, Mar 28, 2008 at 6:42 PM, haleh mahbod <hm...@gmail.com> wrote:
> Should this  mvn command be put in the development guide for samples so
>  anyone creating a new sample runs these commands and gets rid of unnecessary
>  dependencies?
>
>
>
>
>
>  On 3/28/08, Raymond Feng <en...@gmail.com> wrote:
>  >
>  > Try mvn dependency:analyze. It analyzes the dependencies of this project
>  > and
>  > determines which are: used and declared; used and undeclared; unused and
>  > declared.
>  >
>  > Thanks,
>  > Raymond
>  > --------------------------------------------------
>  > From: "Jean-Sebastien Delfino" <js...@apache.org>
>  > Sent: Friday, March 28, 2008 1:02 PM
>  > To: <tu...@ws.apache.org>
>  > Subject: Re: [SCA 1.2] SCA Sample dependencies
>  >
>  > > Luciano Resende wrote:
>  > >> I was looking at some sample applications dependencies last night, and
>  > >> realized that our simple calculator-webapp is huge and with a lot of
>  > >> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
>  > >> cause the impression that SCA is heavy, when it's not. Should we spend
>  > >> some time around reviewing these dependencies before next RC ?
>  > >>
>  > >
>  > > +1 I'd suggest to start with calculator (not even the webapp version), I
>  > > can see dependencies on Xalan, Xerces, Axiom there, no idea why they are
>  > > required. I've traced Xalan to assembly-xml, and removing it from the
>  > pom
>  > > doesn't seem to break it. I think we need a thorough review of the
>  > > dependencies that have progressively been added to the core runtime, and
>  > > see if they're all really needed or just oversights that can be cleaned
>  > > up.
>  > >
>  > > --
>  > > Jean-Sebastien
>  > >
>  > > ---------------------------------------------------------------------
>  > > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>  > > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>  > >
>  >
>  > ---------------------------------------------------------------------
>  > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>  > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>  >
>  >
>



-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by haleh mahbod <hm...@gmail.com>.
Should this  mvn command be put in the development guide for samples so
anyone creating a new sample runs these commands and gets rid of unnecessary
dependencies?



On 3/28/08, Raymond Feng <en...@gmail.com> wrote:
>
> Try mvn dependency:analyze. It analyzes the dependencies of this project
> and
> determines which are: used and declared; used and undeclared; unused and
> declared.
>
> Thanks,
> Raymond
> --------------------------------------------------
> From: "Jean-Sebastien Delfino" <js...@apache.org>
> Sent: Friday, March 28, 2008 1:02 PM
> To: <tu...@ws.apache.org>
> Subject: Re: [SCA 1.2] SCA Sample dependencies
>
> > Luciano Resende wrote:
> >> I was looking at some sample applications dependencies last night, and
> >> realized that our simple calculator-webapp is huge and with a lot of
> >> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
> >> cause the impression that SCA is heavy, when it's not. Should we spend
> >> some time around reviewing these dependencies before next RC ?
> >>
> >
> > +1 I'd suggest to start with calculator (not even the webapp version), I
> > can see dependencies on Xalan, Xerces, Axiom there, no idea why they are
> > required. I've traced Xalan to assembly-xml, and removing it from the
> pom
> > doesn't seem to break it. I think we need a thorough review of the
> > dependencies that have progressively been added to the core runtime, and
> > see if they're all really needed or just oversights that can be cleaned
> > up.
> >
> > --
> > Jean-Sebastien
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: [SCA 1.2] SCA Sample dependencies

Posted by Raymond Feng <en...@gmail.com>.
Try mvn dependency:analyze. It analyzes the dependencies of this project and 
determines which are: used and declared; used and undeclared; unused and 
declared.

Thanks,
Raymond
--------------------------------------------------
From: "Jean-Sebastien Delfino" <js...@apache.org>
Sent: Friday, March 28, 2008 1:02 PM
To: <tu...@ws.apache.org>
Subject: Re: [SCA 1.2] SCA Sample dependencies

> Luciano Resende wrote:
>> I was looking at some sample applications dependencies last night, and
>> realized that our simple calculator-webapp is huge and with a lot of
>> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
>> cause the impression that SCA is heavy, when it's not. Should we spend
>> some time around reviewing these dependencies before next RC ?
>>
>
> +1 I'd suggest to start with calculator (not even the webapp version), I 
> can see dependencies on Xalan, Xerces, Axiom there, no idea why they are 
> required. I've traced Xalan to assembly-xml, and removing it from the pom 
> doesn't seem to break it. I think we need a thorough review of the 
> dependencies that have progressively been added to the core runtime, and 
> see if they're all really needed or just oversights that can be cleaned 
> up.
>
> -- 
> Jean-Sebastien
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Luciano Resende wrote:
> I was looking at some sample applications dependencies last night, and
> realized that our simple calculator-webapp is huge and with a lot of
> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
> cause the impression that SCA is heavy, when it's not. Should we spend
> some time around reviewing these dependencies before next RC ?
> 

+1 I'd suggest to start with calculator (not even the webapp version), I 
can see dependencies on Xalan, Xerces, Axiom there, no idea why they are 
required. I've traced Xalan to assembly-xml, and removing it from the 
pom doesn't seem to break it. I think we need a thorough review of the 
dependencies that have progressively been added to the core runtime, and 
see if they're all really needed or just oversights that can be cleaned up.

-- 
Jean-Sebastien

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [SCA 1.2] SCA Sample dependencies

Posted by Raymond Feng <en...@gmail.com>.
Hi,

Tuscany/SCA integrates with many other technologies to enable service 
composition/assembly. IMO, there are three different types of jars we ship:

1) Tuscany jars (core + extensions), such as tuscany-*.jar
2) Dependency jars required by Tuscany (core + extensions), such as stax and 
axis2
3) Hosting environment for various technologies, such as activemq, tomcat 
and jetty

We need to find a good balance.

Thanks,
Raymond
--------------------------------------------------
From: "Luciano Resende" <lu...@gmail.com>
Sent: Friday, March 28, 2008 10:32 AM
To: "tuscany-dev" <tu...@ws.apache.org>
Subject: [SCA 1.2] SCA Sample dependencies

> I was looking at some sample applications dependencies last night, and
> realized that our simple calculator-webapp is huge and with a lot of
> unnecessary dependencies being dragged to it's WEB-INF\lib. This might
> cause the impression that SCA is heavy, when it's not. Should we spend
> some time around reviewing these dependencies before next RC ?
>
> -- 
> Luciano Resende
> Apache Tuscany Committer
> http://people.apache.org/~lresende
> http://lresende.blogspot.com/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org