+1 to leaner, lighter-weight modules, and a maven dependency that has all 
(almost?) of the tapestry modules as dependencies.  Becomes easier to pick and 
choose at that point; you can explicitly include a small number of modules, or 
depend on tapestry-kitchensink and exclude a few pieces that you don't 
want/need.  The quickstart archetype would either add all of the "important" 
dependencies, or else add a dependency on the "kitchen sink".

Robert

On Jan 20, 2011, at 1/205:31 PM , Josh Canfield wrote:

>> So what are the advantages/disadvantages of having another module at
>> apache, say, tapestry-stdlib vs. just moving such a component into
>> tapestry-core?
> 
> Bloat is a disadvantage to continue putting things into tapestry-core,
> both from a size of dependency as well as a maintenance standpoint.
> 
> You can build the tapestry-kitchensink (not really what I would
> consider core) module that has compile dependencies on everything, but
> mostly I'd like to include the leanest meanest dependencies possible.
> 
> To the extreme, I'd go so far as to say that I'd like to separate out
> * tapestry-ioc               - IOC container
> * tapestry-servlets        - Servlet request processing
> * tapestry-templates     - Component/page rendering code (t:block,
> t:container, t:body, etc... i.e. non-component based template
> elements)
> * tapestry-components  - Core components (t:if, t:unless, t:loop, t:any, 
> t:zone)
> * tapestry-forms           - Form components (t:form, t:textfield, etc.)
> * tapestry-beaneditor    - BeanEditor components
> * tapestry-gridview       - Grid components
> * tapestry-usermessages   - User message tracking components
> * etc.
> 
> Deciding how large a feature needs to be in order to get it's own
> module is debatable. (AjaxFormLoop?)
> 
> I'm working on a project now that would just use tapestry-(ioc |
> servlets | hibernate | resteasy) (and tapestry-monitoring, but that's
> in the works!).
> 
> There _is_ a value to having a simple single dependency that a
> Tapestry and possibly Java newbie could use to rip through a tutorial,
> write the tutorial such that a single entry pointing at the
> kitchen-sink module in the pom and all the transient dependencies are
> sucked down with it.
> 
> An example of a project with lots of extensions is the Restlet API.
> While the docs in general are not great, they have an impressive list
> of extensions: http://wiki.restlet.org/docs_2.0/13-restlet/28-restlet.html.
> 
> 
> Josh
> 
> On Thu, Jan 20, 2011 at 12:52 PM, Howard Lewis Ship <[email protected]> wrote:
>> So what are the advantages/disadvantages of having another module at
>> apache, say, tapestry-stdlib vs. just moving such a component into
>> tapestry-core?
>> 
>> To me, the idea of saying "if you want to present confirmation to a
>> user, just use the AlertsManager and Alerts component" is more
>> satisifying in a tutorial than saying "create a flash-scoped message
>> field, etc., etc.,".  However, if the AlertsManager is in a optional
>> library, I might not feel as good about referencing it in a tutorial
>> compared to if it was in tapestry-core. And if we end up effectively
>> mandating the user of tapestry-stdllib, how valuable is it separate
>> from tapestry-core.
>> 
>> Alternately, if we have a stdlib, do we move some of our existing
>> components and mixins out of core?
>> 
>> 
>> On Thu, Jan 20, 2011 at 12:44 PM, Thiago H. de Paula Figueiredo
>> <[email protected]> wrote:
>>> On Thu, 20 Jan 2011 16:37:47 -0200, Josh Canfield <[email protected]>
>>> wrote:
>>> 
>>>>> Alternately, perhaps we need to resuscitate the idea of a standard
>>>>> library (or libraries) beyond core.
>>>> 
>>>> My gut tells me to pull as much of the system apart into independent
>>>> modules as possible. Smaller is better, easier to understand, easier
>>>> to test.
>>> 
>>> Please do it as a Tapestry subproject (tapestry-morecomponents?) instead of
>>> TapX or other external packages. It seems to me that people consider
>>> anything outside the Tapestry project, even being linked from there, as not
>>> part of the out-of-the-box experience. Something like "feature X is so
>>> important, but I need a third-party package to have it" (something used a
>>> lot to criticize JSF).
>>> 
>>> --
>>> 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: [email protected]
>>> For additional commands, e-mail: [email protected]
>>> 
>>> 
>> 
>> 
>> 
>> --
>> 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: [email protected]
>> For additional commands, e-mail: [email protected]
>> 
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to