You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Howard Lewis Ship <hl...@gmail.com> on 2011/03/03 19:16:06 UTC

YUICompresser/Rhino as dependency?

If you've been watching the commits, I've been reorganizing things
inside Tapestry's asset processing to support some new features. The
big goal is JavaScript (and CSS) minification. Right now, all the
pipelines are in place, and there's a placeholder service,
ResourceMinimizer, waiting for a real implementation.

I've targeted YUICompressor
(http://developer.yahoo.com/yui/compressor/) which uses a BSD license
(and requires Rhino,  MPL license). I believe these are compatible
licences w/ ASL.

So ... where should the hooks into YUICompressor go?  Could put it
right into tapestry-core, could create a new sub-project,
tapestry-minification, or it could just be a 3rd party library on
GitHub.

Thoughts? Preferences?

-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

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


Re: YUICompresser/Rhino as dependency?

Posted by Andreas Andreou <an...@di.uoa.gr>.
+1 for tapestry-minification from me as well

On Fri, Mar 4, 2011 at 00:03, Howard Lewis Ship <hl...@gmail.com> wrote:
> 2011/3/3 françois facon <fr...@gmail.com>:
>> seems to be compatible with jQuery and others toolkits.
>> better performance on both client an server side. it's Green.
>> +1 for tapestry-minification, or 3rd party library (in case license trouble)
>> Perhaps this will also let the door open to use any compressor during the
>> Maven *build.*
>>
>
> I think the advantage of doing it at runtime, rather than build time,
> is that the un-minified files are always there, which are easier to
> debug on the client. I think it's a have-your-cake-and-eat-it-too
> situation ... though there's the cost of aggregating and mini-fying
> the JS files the first time.  Other solutions involve shipping
> multiple copies of files (individual, minified, aggregated,
> aggregated/minified). That can cause its own problems, not just bloat.
>
>> 2011/3/3 Howard Lewis Ship <hl...@gmail.com>
>>
>>> Check out my most recent commit, which will make it super-easy to
>>> override any default behavior.
>>>
>>> On Thu, Mar 3, 2011 at 11:09 AM, Josh Canfield <jo...@gmail.com>
>>> wrote:
>>> >> So ... where should the hooks into YUICompressor go?  Could put it
>>> >> right into tapestry-core, could create a new sub-project,
>>> >> tapestry-minification, or it could just be a 3rd party library on
>>> >> GitHub.
>>> >
>>> > I would make my decision based on whether this would turn into a
>>> > prototype vs. jquery debate at some point. If you make it a module
>>> > then I assume core would get public APIs that would make integrating
>>> > the next great js/css compressor.
>>> >
>>> > Maybe just keeping an eye on replaceability would be good enough.
>>> >
>>> > Josh
>>> >
>>> > On Thu, Mar 3, 2011 at 10:16 AM, Howard Lewis Ship <hl...@gmail.com>
>>> wrote:
>>> >> If you've been watching the commits, I've been reorganizing things
>>> >> inside Tapestry's asset processing to support some new features. The
>>> >> big goal is JavaScript (and CSS) minification. Right now, all the
>>> >> pipelines are in place, and there's a placeholder service,
>>> >> ResourceMinimizer, waiting for a real implementation.
>>> >>
>>> >> I've targeted YUICompressor
>>> >> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
>>> >> (and requires Rhino,  MPL license). I believe these are compatible
>>> >> licences w/ ASL.
>>> >>
>>> >> So ... where should the hooks into YUICompressor go?  Could put it
>>> >> right into tapestry-core, could create a new sub-project,
>>> >> tapestry-minification, or it could just be a 3rd party library on
>>> >> GitHub.
>>> >>
>>> >> Thoughts? Preferences?
>>> >>
>>> >> --
>>> >> Howard M. Lewis Ship
>>> >>
>>> >> Creator of Apache Tapestry
>>> >>
>>> >> The source for Tapestry training, mentoring and support. Contact me to
>>> >> learn how I can get you up and productive in Tapestry fast!
>>> >>
>>> >> (971) 678-5210
>>> >> http://howardlewisship.com
>>> >>
>>> >> ---------------------------------------------------------------------
>>> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> >> For additional commands, e-mail: dev-help@tapestry.apache.org
>>> >>
>>> >>
>>> >
>>> > ---------------------------------------------------------------------
>>> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> > For additional commands, e-mail: dev-help@tapestry.apache.org
>>> >
>>> >
>>>
>>>
>>>
>>> --
>>> Howard M. Lewis Ship
>>>
>>> Creator of Apache Tapestry
>>>
>>> The source for Tapestry training, mentoring and support. Contact me to
>>> learn how I can get you up and productive in Tapestry fast!
>>>
>>> (971) 678-5210
>>> http://howardlewisship.com
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>>
>>>
>>
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>



-- 
Andreas Andreou - andyhot@apache.org - http://blog.andyhot.gr
Apache Tapestry PMC / http://chesstu.be owner
Open Source / JEE Consulting

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


Re: YUICompresser/Rhino as dependency?

Posted by Howard Lewis Ship <hl...@gmail.com>.
2011/3/3 françois facon <fr...@gmail.com>:
> seems to be compatible with jQuery and others toolkits.
> better performance on both client an server side. it's Green.
> +1 for tapestry-minification, or 3rd party library (in case license trouble)
> Perhaps this will also let the door open to use any compressor during the
> Maven *build.*
>

I think the advantage of doing it at runtime, rather than build time,
is that the un-minified files are always there, which are easier to
debug on the client. I think it's a have-your-cake-and-eat-it-too
situation ... though there's the cost of aggregating and mini-fying
the JS files the first time.  Other solutions involve shipping
multiple copies of files (individual, minified, aggregated,
aggregated/minified). That can cause its own problems, not just bloat.

> 2011/3/3 Howard Lewis Ship <hl...@gmail.com>
>
>> Check out my most recent commit, which will make it super-easy to
>> override any default behavior.
>>
>> On Thu, Mar 3, 2011 at 11:09 AM, Josh Canfield <jo...@gmail.com>
>> wrote:
>> >> So ... where should the hooks into YUICompressor go?  Could put it
>> >> right into tapestry-core, could create a new sub-project,
>> >> tapestry-minification, or it could just be a 3rd party library on
>> >> GitHub.
>> >
>> > I would make my decision based on whether this would turn into a
>> > prototype vs. jquery debate at some point. If you make it a module
>> > then I assume core would get public APIs that would make integrating
>> > the next great js/css compressor.
>> >
>> > Maybe just keeping an eye on replaceability would be good enough.
>> >
>> > Josh
>> >
>> > On Thu, Mar 3, 2011 at 10:16 AM, Howard Lewis Ship <hl...@gmail.com>
>> wrote:
>> >> If you've been watching the commits, I've been reorganizing things
>> >> inside Tapestry's asset processing to support some new features. The
>> >> big goal is JavaScript (and CSS) minification. Right now, all the
>> >> pipelines are in place, and there's a placeholder service,
>> >> ResourceMinimizer, waiting for a real implementation.
>> >>
>> >> I've targeted YUICompressor
>> >> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
>> >> (and requires Rhino,  MPL license). I believe these are compatible
>> >> licences w/ ASL.
>> >>
>> >> So ... where should the hooks into YUICompressor go?  Could put it
>> >> right into tapestry-core, could create a new sub-project,
>> >> tapestry-minification, or it could just be a 3rd party library on
>> >> GitHub.
>> >>
>> >> Thoughts? Preferences?
>> >>
>> >> --
>> >> Howard M. Lewis Ship
>> >>
>> >> Creator of Apache Tapestry
>> >>
>> >> The source for Tapestry training, mentoring and support. Contact me to
>> >> learn how I can get you up and productive in Tapestry fast!
>> >>
>> >> (971) 678-5210
>> >> http://howardlewisship.com
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> >> For additional commands, e-mail: dev-help@tapestry.apache.org
>> >>
>> >>
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> > For additional commands, e-mail: dev-help@tapestry.apache.org
>> >
>> >
>>
>>
>>
>> --
>> Howard M. Lewis Ship
>>
>> Creator of Apache Tapestry
>>
>> The source for Tapestry training, mentoring and support. Contact me to
>> learn how I can get you up and productive in Tapestry fast!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

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


Re: YUICompresser/Rhino as dependency?

Posted by françois facon <fr...@gmail.com>.
seems to be compatible with jQuery and others toolkits.
better performance on both client an server side. it's Green.
+1 for tapestry-minification, or 3rd party library (in case license trouble)
Perhaps this will also let the door open to use any compressor during the
Maven *build.*

2011/3/3 Howard Lewis Ship <hl...@gmail.com>

> Check out my most recent commit, which will make it super-easy to
> override any default behavior.
>
> On Thu, Mar 3, 2011 at 11:09 AM, Josh Canfield <jo...@gmail.com>
> wrote:
> >> So ... where should the hooks into YUICompressor go?  Could put it
> >> right into tapestry-core, could create a new sub-project,
> >> tapestry-minification, or it could just be a 3rd party library on
> >> GitHub.
> >
> > I would make my decision based on whether this would turn into a
> > prototype vs. jquery debate at some point. If you make it a module
> > then I assume core would get public APIs that would make integrating
> > the next great js/css compressor.
> >
> > Maybe just keeping an eye on replaceability would be good enough.
> >
> > Josh
> >
> > On Thu, Mar 3, 2011 at 10:16 AM, Howard Lewis Ship <hl...@gmail.com>
> wrote:
> >> If you've been watching the commits, I've been reorganizing things
> >> inside Tapestry's asset processing to support some new features. The
> >> big goal is JavaScript (and CSS) minification. Right now, all the
> >> pipelines are in place, and there's a placeholder service,
> >> ResourceMinimizer, waiting for a real implementation.
> >>
> >> I've targeted YUICompressor
> >> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
> >> (and requires Rhino,  MPL license). I believe these are compatible
> >> licences w/ ASL.
> >>
> >> So ... where should the hooks into YUICompressor go?  Could put it
> >> right into tapestry-core, could create a new sub-project,
> >> tapestry-minification, or it could just be a 3rd party library on
> >> GitHub.
> >>
> >> Thoughts? Preferences?
> >>
> >> --
> >> Howard M. Lewis Ship
> >>
> >> Creator of Apache Tapestry
> >>
> >> The source for Tapestry training, mentoring and support. Contact me to
> >> learn how I can get you up and productive in Tapestry fast!
> >>
> >> (971) 678-5210
> >> http://howardlewisship.com
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> >> For additional commands, e-mail: dev-help@tapestry.apache.org
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> > For additional commands, e-mail: dev-help@tapestry.apache.org
> >
> >
>
>
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>

Re: YUICompresser/Rhino as dependency?

Posted by Howard Lewis Ship <hl...@gmail.com>.
Check out my most recent commit, which will make it super-easy to
override any default behavior.

On Thu, Mar 3, 2011 at 11:09 AM, Josh Canfield <jo...@gmail.com> wrote:
>> So ... where should the hooks into YUICompressor go?  Could put it
>> right into tapestry-core, could create a new sub-project,
>> tapestry-minification, or it could just be a 3rd party library on
>> GitHub.
>
> I would make my decision based on whether this would turn into a
> prototype vs. jquery debate at some point. If you make it a module
> then I assume core would get public APIs that would make integrating
> the next great js/css compressor.
>
> Maybe just keeping an eye on replaceability would be good enough.
>
> Josh
>
> On Thu, Mar 3, 2011 at 10:16 AM, Howard Lewis Ship <hl...@gmail.com> wrote:
>> If you've been watching the commits, I've been reorganizing things
>> inside Tapestry's asset processing to support some new features. The
>> big goal is JavaScript (and CSS) minification. Right now, all the
>> pipelines are in place, and there's a placeholder service,
>> ResourceMinimizer, waiting for a real implementation.
>>
>> I've targeted YUICompressor
>> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
>> (and requires Rhino,  MPL license). I believe these are compatible
>> licences w/ ASL.
>>
>> So ... where should the hooks into YUICompressor go?  Could put it
>> right into tapestry-core, could create a new sub-project,
>> tapestry-minification, or it could just be a 3rd party library on
>> GitHub.
>>
>> Thoughts? Preferences?
>>
>> --
>> Howard M. Lewis Ship
>>
>> Creator of Apache Tapestry
>>
>> The source for Tapestry training, mentoring and support. Contact me to
>> learn how I can get you up and productive in Tapestry fast!
>>
>> (971) 678-5210
>> http://howardlewisship.com
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

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


Re: YUICompresser/Rhino as dependency?

Posted by Josh Canfield <jo...@gmail.com>.
> So ... where should the hooks into YUICompressor go?  Could put it
> right into tapestry-core, could create a new sub-project,
> tapestry-minification, or it could just be a 3rd party library on
> GitHub.

I would make my decision based on whether this would turn into a
prototype vs. jquery debate at some point. If you make it a module
then I assume core would get public APIs that would make integrating
the next great js/css compressor.

Maybe just keeping an eye on replaceability would be good enough.

Josh

On Thu, Mar 3, 2011 at 10:16 AM, Howard Lewis Ship <hl...@gmail.com> wrote:
> If you've been watching the commits, I've been reorganizing things
> inside Tapestry's asset processing to support some new features. The
> big goal is JavaScript (and CSS) minification. Right now, all the
> pipelines are in place, and there's a placeholder service,
> ResourceMinimizer, waiting for a real implementation.
>
> I've targeted YUICompressor
> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
> (and requires Rhino,  MPL license). I believe these are compatible
> licences w/ ASL.
>
> So ... where should the hooks into YUICompressor go?  Could put it
> right into tapestry-core, could create a new sub-project,
> tapestry-minification, or it could just be a 3rd party library on
> GitHub.
>
> Thoughts? Preferences?
>
> --
> Howard M. Lewis Ship
>
> Creator of Apache Tapestry
>
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
>
> (971) 678-5210
> http://howardlewisship.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>

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


Re: YUICompresser/Rhino as dependency?

Posted by "Thiago H. de Paula Figueiredo" <th...@gmail.com>.
On Thu, 03 Mar 2011 15:16:06 -0300, Howard Lewis Ship <hl...@gmail.com>  
wrote:

> So ... where should the hooks into YUICompressor go?  Could put it
> right into tapestry-core, could create a new sub-project,
> tapestry-minification, or it could just be a 3rd party library on
> GitHub.

+1 to tapestry-minification, documentation listing it as an optional but  
very interesenting feature and quickstart including it automatically.

-- 
Thiago H. de Paula Figueiredo
Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,  
and instructor
Owner, Ars Machina Tecnologia da Informação Ltda.
http://www.arsmachina.com.br

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


Re: YUICompresser/Rhino as dependency?

Posted by Ulrich Stärk <ul...@spielviel.de>.
We'll need to make sure that all licenses are ASL compatible. Then it can go into tapestry-core. Otherwise it has to be a non-required additional module which I prefer to live here, at the ASF.

Uli



Am 03.03.2011 um 19:16 schrieb Howard Lewis Ship <hl...@gmail.com>:

> If you've been watching the commits, I've been reorganizing things
> inside Tapestry's asset processing to support some new features. The
> big goal is JavaScript (and CSS) minification. Right now, all the
> pipelines are in place, and there's a placeholder service,
> ResourceMinimizer, waiting for a real implementation.
> 
> I've targeted YUICompressor
> (http://developer.yahoo.com/yui/compressor/) which uses a BSD license
> (and requires Rhino,  MPL license). I believe these are compatible
> licences w/ ASL.
> 
> So ... where should the hooks into YUICompressor go?  Could put it
> right into tapestry-core, could create a new sub-project,
> tapestry-minification, or it could just be a 3rd party library on
> GitHub.
> 
> Thoughts? Preferences?
> 
> -- 
> Howard M. Lewis Ship
> 
> Creator of Apache Tapestry
> 
> The source for Tapestry training, mentoring and support. Contact me to
> learn how I can get you up and productive in Tapestry fast!
> 
> (971) 678-5210
> http://howardlewisship.com
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
> 

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