Hi

The latest code committed on shared branch indicates the objective is
add a submodule of shared project, just like shared-tomahawk and
shared-orchestra.

http://svn.apache.org/repos/asf/myfaces/shared/trunk/shared-html5/

>From a theorical point of view, html5 project should not use a shared
submodule. The reason is there is not an strong reason why use it.
Below there is the list of the projects using shared and the reasons
why do that.

- Tomahawk requires a shared module because it has components that
extends from the base components and it extends the base renderers.
- Portlet-brigde requires reuse some classes related with view handling.
- Orchestra really does not requires shared, because currently it only
uses some utility code that deals with classes and a base class for
tag classes. In the future, orchestra will use myfaces-commons-utils
instead shared.
- The code available on html5 project uses some utility methods for
rendering code.

Myfaces commons utils is a project on myfaces with the intention of
provide a common place where utility methods used in JSF related
libraries. In few words, it is a long term "replacement of shared".
The idea is move with care the utility methods used on shared and
build a stable API. Later, projects like myfaces orchestra, myfaces
html5 and others could take advantage and use that code, just adding
it as a compile dependency.

The current javadoc of myfaces-commons-utils is here:

http://myfaces.apache.org/commons20/myfaces-commons-utils20/apidocs/index.html

>From this point of view, instead create a shared html5 module, we
should check which code is used by its renderers and create the files
necessary on myfaces-commons-utils that provides those utility
methods. Note it is not a "copy" of shared, some methods could have
changes in its signature or could be located in other classes. I know
there are one or two renderers that extends from the base one, but I
think in this case that code should be copied to html5 codebase.

I would like to do this before any release of html5, but note this is
not a blocker issue. In one way or another, you'll need to do two
release procedures (shared and html5 or commons for jsf 2.0 and
html5).

regards,

Leonardo Uribe

2011/3/20 Scott O'Bryan <[email protected]>:
> AFAIK, tomahawk is the only project that does it that way.
>
> I suppose my question is this.  Is html5 going to use every release of
> shared or will it only uptake a release when it needs to?  If the
> later, then all it really does is take up extra space in svn.
>
> On Mar 20, 2011, at 7:09 AM, Jakob Korherr <[email protected]> wrote:
>
>> Hi scott, ali.
>>
>> As ali mentioned, it was my idea to put the shared html5 module into
>> the shared project. And this is the way it should be IMO. Look at
>> shared_impl and shared_tomahawk for example.
>>
>> Also: there is no need to split up the shared and the html5 release.
>> They can be done together. For reference: look how Leonardo did the
>> last MyFaces core releases in the wiki.
>>
>> If you want, Ali, I can help you with the release next week!
>>
>> Regards,
>> Jakob
>>
>> Am Sonntag, 20. März 2011 schrieb Scott O'Bryan <[email protected]>:
>>> I'll see if I can't cough up an example later tonight.
>>>
>>> On Mar 19, 2011, at 7:09 PM, Scott O'Bryan <[email protected]> wrote:
>>>
>>> No, your not getting me.  MyFaces-shared-orchestra does not exist in 
>>> MyFaces shared, it exists in Orchestra..  That's where I got the process I 
>>> used in early releases of the 3.0 bridge and Matthias used in Trinidad.  
>>> The difference is that for these other modules, he shared is build during 
>>> PROJECT building/release whereas with tomahawk, it is done during the 
>>> shared release.
>>>
>>>
>>> (ie. You will never see a "shared-bridge" in the shared package.  It exists 
>>> only in the portlet Bridge's impl package.)
>>>
>>> On Mar 19, 2011, at 6:59 PM, Ali Ok <[email protected]> wrote:
>>>
>>> Hi,
>>>
>>>
>>>
>>> Ali, I think I'd suggest actually doing this like Trinidad, Orchestra, and 
>>> the Portlet Bridge do this in that they actually download the main "shared" 
>>> and instrument to code when THIER impl builds.
>>>
>>>
>>> Yep, that is what "myfaces-shared-html5" build is doing, just like 
>>> "myfaces-shared-impl", "myfaces-shared-tomahawk" and 
>>> "myfaces-shared-orchestra" (of branch 2.0.x). They are also submodules of 
>>> "myfaces-shared", and they are released with it.
>>>
>>>
>>>
>>>
>>>
>>>
>>> If that's not acceptable, you can simply install your new shared project 
>>> under trunk and use that.First, it was like that: the 
>>> "myfaces-shared-html5" was a submodule of Html5 project. However, as Jakob 
>>> suggested in another thread, that project is better to be a submodule of 
>>> myfaces-shared, just like others.
>>>
>>>
>>>
>>> I think myfaces-shared (in fact, in this case only the submodule 
>>> myfaces-shared-html5) release is necessary, since the submodule 
>>> myfaces-shared-html5 is a dependency of Html5 project and it is not 
>>> released yet.
>>>
>>>
>>>
>>> Thanks,Ali
>>> On Sun, Mar 20, 2011 at 2:21 AM, Scott O'Bryan <[email protected]> wrote:
>>> Ali, I think I'd suggest actually doing this like Trinidad, Orchestra, and 
>>> the Portlet Bridge do this in that they actually download the main "shared" 
>>> and instrument to code when THIER impl builds.  That way you don't have to 
>>> release "shared".
>>>
>>>
>>>
>>>
>>> If that's not acceptable, you can simply install your new shared project 
>>> under trunk and use that.  I would wait until HTML5 is ready for a release 
>>> before releasing the shared project.
>>> Scott
>>>
>>> On Mar 19, 2011, at 6:12 PM, Ali Ok <[email protected]> wrote:
>>>
>>>
>>> Hi all,
>>> Can someone experienced help me with releasing the first alpha of the 
>>> project?
>>>
>>> Code is at  <http://svn.apache.org/repos/asf/myfaces/html5/> 
>>> <http://svn.apache.org/repos/asf/myfaces/html5/>http://svn.apache.org/repos/asf/myfaces/html5/
>>>
>>>
>>>
>>>
>>> Project uses a new "myfaces-shared" project : "myfaces-shared-html5"[0]. 
>>> Since myfaces-shared version which I moved myfaces-shared-html5 (4.0.6) is 
>>> not released, first it needs to be released.
>>>
>>>
>>>
>>>
>>> Thus, for building the project, I needed to install myfaces-shared-html5 on 
>>> my local repository.
>>> May be we should discuss the further process of the release of Html5 
>>> project, after discussing/doing the new release of myfa
>>>
>>
>> --
>> Jakob Korherr
>>
>> blog: http://www.jakobk.com
>> twitter: http://twitter.com/jakobkorherr
>> work: http://www.irian.at
>

Reply via email to