Hi,  sorry to pipe in late ;)

Sean and I just spent a few hours on the phone talking about the reorg of myfaces.

As you might know, we (Struts community) have gone through this ourselves recently, so we have plenty of insight to offer.

Here's my take on what needs to be nailed down before any action is taken.
a) determine exactly what the output will look like at the end of this
    - artifacts
       For example:
          myfaces-api-1.0.11.jar  - contains ...
          myfaces-impl-1.0.11.jar - contains ...
          myfaces-all-1.0.11.jar  - contains all classes and
                                    config from src/foo and src/bar
          myfaces-sandbox-1.0.11.jar  - contains all classes and
                                        config from src/sandbox
          myfaces-docs-1.0.11.zip - the web site and documentation


b) determine the steps involved
c) determine how the build will be adjusted to accomodate
d) go through a rehersal on a test server

Sean, can you put this down somewhere (wiki perhaps)?


As far as moving to a Maven-based build, I would love to help with that. I can personally guarantee that it can do everything the current Ant script does, and then some. I proved that over and over in Struts-land. Our single outstanding issue with that has to do with the documentation. But that's still in progress.

If you decide you would like to take me up on this offer, please do so as a group. This would be a pretty significant investment in what little free time I have. Although, I seem to be getting more of that back since starting a new job.

If you guys do decide you'd like to take me up on the offer, then I have a few suggestions for you to consider with respect to how the project gets laid out. Nothing is mandatory, but simple changes can benefit all.

Here's what I put together for the Struts maven-based build.

I run a single crob job on a dell laptop that does an update from svn and then kicks off Maven and ends doing an scp of the resulting build artifacts to this location:
http://svn.apache.org/builds/struts/maven/trunk/nightly/

(oh, and don't worry about the bomb icon, that's what apache http server puts for any folders with "core" in the name....you know, in case something takes a dump ;)


As you can see from the log last night, the build took approximately 12 minutes:
http://svn.apache.org/builds/struts/maven/trunk/nightly/logs/maven-build-20050527.log
Total build time was about 12 minutes.


Here's an example of what you get for free with Maven:
http://svn.apache.org/builds/struts/maven/trunk/docs/
As you look over that site, keep in mind that all of this was generated from a couple of xml build files. Not a "build.xml" file per se, but with the same notion in mind, it is called "project.xml" and describes your project. The big difference is that instead of being 870 lines long(as is the current build for myfaces/trunk/build/build.xml), the project.xml files under struts/current/{subproject} are usually under 100 lines, some only a few lines. Maven is fully integrated with every tool or report under the sun. Most of the hand coding needed for Ant builds just isn't needed. Maven already knows you wanted it.

Go ahead and click on "Struts Core" in the navigation box. Next, click on "Project Reports". Now look through some of those reports. Each of those reports are automatically configured and run based on the existing project.xml file. The useful ones (for me anyway) are the PMD, Simian, and JCoverage reports.

Sorry for the long post.


--
James Mitchell
Software Engineer / Open Source Evangelist
Consulting / Mentoring / Freelance
EdgeTech, Inc.
http://www.edgetechservices.net/
678.910.8017
AIM:   jmitchtx
Yahoo: jmitchtx
MSN:   [EMAIL PROTECTED]




----- Original Message ----- From: "Sean Schofield" <[EMAIL PROTECTED]>
To: "MyFaces Development" <[email protected]>
Sent: Friday, May 27, 2005 1:45 PM
Subject: Re: MyFaces Reorg


On 5/27/05, Grant Smith <[EMAIL PROTECTED]> wrote:
 Sounds reasonable. However, just to be clear... Will new components start
off in the sandbox, then get promoted to tomahawk, and then finally to
myfaces ? I guess I don't understand the need for the intermediate step.

No.  Just sandbox to tomahawk.  Tomahawk will be a myfaces subproject
so in that sense the components will be part of myfaces but the idea
is to distinguish myfaces implementation from components + goodies.

 +1 for myfaces-all.jar, although I don't think it should contain sandbox
components (which is I think what everyone else is saying).

I agree with you.

You mentioned SVN changes / reorg. Would that be a new repository ? If so,
do we need to request that from the infrastructure people, or can we do it
ourselves ?

Not sure if we'll need infra help but basically we'll need to create
subrprojects etc and move stuff around.  Most of this I suspect can be
done by the PMC.  Once we get agreement on the jarfiles I will propose
a svn restructure that we can debate.  I'll also get some feedback
from the Struts team who have plenty of experience in this area.
James Mitchell and Martin Cooper have both offered help and ideas on
this in the past so when the time comes we'll try and pull them into
the discussion.

Just to be clear, no new repository would be created.  Just shuffling
of existing stuff.

sean


Reply via email to