Your thoughts?
-- James Mitchell Software Engineer / Open Source Evangelist EdgeTech, Inc. 678.910.8017 AIM: jmitchtx
----- Original Message ----- From: "Ted Husted" <[EMAIL PROTECTED]>
To: "Struts Developers List" <dev@struts.apache.org>
Sent: Wednesday, March 02, 2005 6:42 AM
Subject: Re: Latest build (ala Maven) [Long]
If no one minds, I think it might be best to put the struts-scaffold package out to pasture as well.
It will be difficult for me to keep this in step with the changes we are making to the Actions.
At some point, we might want to think about an "Extras" subproject, where we can distribute goodies like DispatchAction and other cool conveniences not essential to Struts Core.
If we ever did that, then some of these might get a new lease on life. Others might be better suited as Commands now.
-Ted.
On Mon, 28 Feb 2005 22:30:50 -0500, James Mitchell wrote:
I'll take a look at faces tonight. Among other things, I've actually had it on my todo list for a few weeks. I'd like to get all of the sandbox done by the end of March.
With Martin working on getting the necessary infrastructure in place to build on Apache hardware, we should have the full set of nightlies back online in short order.
-- James Mitchell Software Engineer / Open Source Evangelist EdgeTech, Inc. 678.910.8017 AIM: jmitchtx
----- Original Message ----- From: "Craig McClanahan" <[EMAIL PROTECTED]> To: "Struts Developers List" <dev@struts.apache.org> Cc: "Struts Users Mailing List" <user@struts.apache.org> Sent: Monday, February 28, 2005 5:52 PM Subject: Re: Latest build (ala Maven) [Long]
James,
Great job on the Mavenization work.
I'm fine if you'd also like to Mavenize the "faces" subproject -- which will have its own interesting wrinkles, because it has nested builds of its own for its core library and example applications, with individual output artifacts. I'd ike to wait a bit on Shale, however (although the solution would likely be very similar).
Craig
On Mon, 28 Feb 2005 17:14:53 -0500, James Mitchell <[EMAIL PROTECTED]> wrote:
For those of you following along (and some who aren't) with the reorganization of Struts' source and subsequent shift (in part) to a Maven-based build system, I have created a nightly build directory for those eager to get all of the latest binary and/or source distributions.
The Maven-built nightly Struts subprojects are available at: http://cvs.apache.org/builds/struts/maven/
The generated docs will be temporarily available at: http://cvs.apache.org/~jmitchell/latest-docs/
Note - The documentation provided from the link above is also available for offline viewing by downloading any of the src distributions from the first link above. Also, please be aware that these nightly builds are not perfect and you are encouraged to download and try them at your leisure. We are all volunteers, so any time you can donate to provide input/feedback is VERY much appreciated.
If there is anything you would like to see in these artifacts, please do not hesitate to ask.
For developers who wish to build from the latest (from SVN), here are the steps to follow:
This assumes you have the following installed and working correctly on your machine: - SVN client - Maven
( For SVN, I use the command line client under cygwin ) http://subversion.tigris.org/project_packages.html
1. Get the latest from svn $cd path/to/where/you/want/svn/struts $svn co http://svn.apache.org/repos/asf/struts/current/
2. Change to build/ $cd current/build
3. Build all $maven build-all
You should see Maven building the complete distribution for each subproject under Struts. This will take a few minutes, so be patient.
The following will be built: core/ taglib/ tiles/ apps/ el/ bsf/ flow/
You can now go under any of the above folders and look in target/ to see what Maven has created for you. The docs/ dir will have the docs as the above link shows.
If there are errors and are not sure why, please don't hesitate to ask.
For those of you who feel even more daring ;) and would like to contribute a patch. The easiest way to do it is to check out the source (as described above) and make your changes locally, then do a 'svn diff' against the subproject that you've made changes to. The output is the exact format we need to patch and commit those changes. Simply pipe the out put from your diff to a file.
For example, say I made some changes to org.apache.struts.Globals.java
Before making changes, "svn status -q" would look like this:
[EMAIL PROTECTED] ~/svn/struts/current $ svn status -q
Performing status on external item at 'build'
Performing status on external item at 'el'
Performing status on external item at 'el/build'
Performing status on external item at 'tiles'
Performing status on external item at 'tiles/build'
Performing status on external item at 'faces'
Performing status on external item at 'faces/build'
Performing status on external item at 'taglib'
Performing status on external item at 'taglib/build'
Performing status on external item at 'apps'
Performing status on external item at 'apps/build'
Performing status on external item at 'flow'
Performing status on external item at 'flow/build'
Performing status on external item at 'core'
Performing status on external item at 'core/build'
Performing status on external item at 'bsf'
Performing status on external item at 'bsf/build'
Performing status on external item at 'shale'
Performing status on external item at 'sandbox'
[EMAIL PROTECTED] ~/svn/struts/current $
...ok, now I add my cool new constant...now I want to see what has changed...
[EMAIL PROTECTED] ~/svn/struts/current $ svn status -q
Performing status on external item at 'build'
Performing status on external item at 'el'
Performing status on external item at 'el/build'
Performing status on external item at 'tiles'
Performing status on external item at 'tiles/build'
Performing status on external item at 'faces'
Performing status on external item at 'faces/build'
Performing status on external item at 'taglib'
Performing status on external item at 'taglib/build'
Performing status on external item at 'apps'
Performing status on external item at 'apps/build'
Performing status on external item at 'flow'
Performing status on external item at 'flow/build'
Performing status on external item at 'core' M core/src/share/org/apache/struts/Globals.java <== here it is
Performing status on external item at 'core/build'
Performing status on external item at 'bsf'
Performing status on external item at 'bsf/build'
Performing status on external item at 'shale'
Performing status on external item at 'sandbox'
..so let's see exactly what changed under core/
[EMAIL PROTECTED] ~/svn/struts/current $ svn diff core/ Index: core/src/share/org/apache/struts/Globals.java =================================================================== -- - core/src/share/org/apache/struts/Globals.java (revision 155701) +++ core/src/share/org/apache/struts/Globals.java (working copy) @@ -223,6 +223,8 @@ * The property under which a transaction token is reported. */ public static final String TOKEN_KEY = TaglibPackage + ".TOKEN"; + + public static final String JAMES_COOL_NEW_CONSTANT = "foo";
}
...now I pipe that to a local file...
[EMAIL PROTECTED] ~/svn/struts/current $ svn diff core/ > james-cool-new-constant.patch
[EMAIL PROTECTED] ~/svn/struts/current $ ll total 1 drwsr-sr-t+ 12 jmitchel None 0 Feb 28 16:40 apps drwsr-sr-t+ 7 jmitchel None 0 Feb 28 16:43 bsf drwsr-sr-t+ 12 jmitchel None 0 Feb 28 16:32 core drwsr-sr-t+ 11 jmitchel None 0 Feb 28 16:40 el drwsr-sr-t+ 9 jmitchel None 0 Feb 23 11:33 faces drwsr-sr-t+ 7 jmitchel None 0 Feb 24 16:46 flow - rw-r--r-- 1 jmitchel None 497 Feb 28 17:04 james- cool-new-constant.patch drwsr-sr-t+ 8 jmitchel None 0 Feb 27 12:20 mock drwsr-sr-t+ 9 jmitchel None 0 Feb 23 11:39 sandbox drwsr-sr-t+ 7 jmitchel None 0 Feb 23 11:38 shale drwsr-sr-t+ 10 jmitchel None 0 Feb 28 16:37 taglib drwsr-sr-t+ 9 jmitchel None 0 Feb 28 16:39 tiles
Now I can attach that file as a patch on a ticket.
And after one of those awesome committers commits your patch...
Voila! You have now contributed to the Open Source movement!!!
(I know, I know, bad example, but you get the picture ;)
Getting the latest from SVN is just as easy
[EMAIL PROTECTED] ~/svn/struts/current $ svn up
I hope this simple email will inspire some of you to go beyond lurking status and help make Apache Struts even better than it is today.
P.S. Since the committers are likely to -1 my "cool new constant", I'll revert my changes ;)
[EMAIL PROTECTED] ~/svn/struts/current $ svn revert core/
-- James Mitchell Software Engineer / Open Source Evangelist EdgeTech, Inc. 678.910.8017 AIM: jmitchtx
---------------------------------------------------------------- ----- 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]
--------------------------------------------------------------------- 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]