This repository has been archived by the owner on Nov 24, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathrelease-process.txt
656 lines (585 loc) · 24.6 KB
/
release-process.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
Seam Release Process
====================
Notify branch is closed
------------------------
* Send an email to seam-dev@lists.jboss.org.
- State a version of the following :
- As all issues in JIRA for Seam <release> are now resolved, the release
process for <release> is now underway. Please don't make any commits to
the <branch or trunk> without checking with and getting approval from
this mail list first.
Updating version numbers
------------------------
* Update the version information:
- readme.txt
- one place at top including date.
- changelog.txt
- Generate a JIRA release note report for the release in "text" format
- Only "issue types" that have jira's will work
- Usually that is (Bug, Feature Request, Task, and Patch)
- Check all the issue types one at a time to determine final list.
- build/default.build.properties
- Change the version numbers as needed
- Set the qualifier using a "." ex. ".CR1" or ".Final"
- Check that build.properties has the qualifier commented out
Maven repository settings
-------------------------
* A released version of seam should not reference any repositories other than
"http://repository.jboss.org/nexus/content/groups/public/" or for older things "https://repository.jboss.org/nexus/content/repositories/deprecated/".
See "build/readme.txt" for details.
- Search "$SEAM/build" for "repositories".
- Comment out any repository entry not "http://repository.jboss.org/maven2"
- Should only be entries in "root.pom.xml" and "docs.pom.xml"
- Search "$SEAM/build" for "artifact:remoteRepository"
- Note any that reference other repositories
- <TODO: determine acceptable list (ci, embedded, etc...)/>
- Verify prior to tagging
- Clean our your local maven repository
- ex. "~/.m2"
- <TODO document way to set local repo settings for clean build />
- run "ant cleanall testall testreport" with these changes
- This should build, and test without a problem.
- Run "ant dependencyReport"
- Review for snapshot dependencies
Internal testing before tagging for Final releases
--------------------------------------------------
Final releases should be verified before tagging. Just note revision number after updating changelog.txt and build/default.build.properties.
Send email to <seam-dev@lists.jboss.org> about frozen branch and point the QE to the revision number.
After verification continue with creating final tag and final steps for releasing.
SVN tagging and checkout
------------------------
<NOTE testing can begin prior to official tagging but a complete process
should be executed on the tag prior to release/>
* Tag the release (XX as needed)
-"svn copy https://svn.jboss.org/repos/seam/XX/XX
https://svn.jboss.org/repos/seam/tags/JBoss_Seam_x_x_x_XXX
-m "create JBoss_Seam_x_x_x_XXX tag""
- ex. "svn copy https://svn.jboss.org/repos/seam/trunk
https://svn.jboss.org/repos/seam/tags/JBoss_Seam_2_1_0_B1
-m "create JBoss_Seam_2_1_0_B1 tag""
* In a clean directory checkout the newly tagged seam source ( XX as needed)
- "svn co https://svn.jboss.org/repos/seam/tags/JBoss_Seam_x_x_x_XXX seam"
- ex. "svn co https://svn.jboss.org/repos/seam/tags/JBoss_Seam_2_1_0_B1 seam"
* In the original branch/trunk change:
- Qualifier back to "-SNAPSHOT" in default.build.properties file.
- The version numbers should be incremented as appropriate.
- Any new work is that versions snapshot
- Revert any Maven repository changes if needed
JDK Version Specific Information
--------------------------------
The latest version of Sun's JDK 1.5 is used for building the release, and the
majority of the testing. The JDK 1.6 section below outlines the JDK 1.6
building and testing process used during the release process.
Building and Checking Dist
--------------------------
* Run "mkdir ../releaselogs" for release artifacts and logs.
* Create the distribution build
- run "ant cleanall dist > ../releaselogs/x.x.x.XX.distbuild.txt"
- Use the dist build for all example tests
* Diff the zip, gz, and exploded version of the dist build
- example of how to do it:
- explode the zip and gz into "../tmp/zip" and "../tmp/gz"
- cp distribution directory into "../tmp/dist"
- in "../tmp" run:
- "diff -r ./gz/. ./zip/."
- "diff -r ./gz/. ./dist/."
- There should be no differences.
- Compare the new dist to dist of the previous version using the same method
- Manually look over for any glaring differences or errors.
- Delete "../tmp" if you wish
* check that the following files/directories exist in the dist "ls -1"
bootstrap
build
build.properties
build.xml
changelog.txt
dependency-report.txt
doc
examples
extras
lgpl.txt
lib
readme.txt
seam
seam-gen
seam-text.g
seam.bat
seam2migration.txt
seam21migration.txt
src
ui
* check that the following source directories exist in the dist "ls -1 src"
debug
excel
gen
interop
ioc
mail
main
pdf
remoting
resteasy
rss
test
wicket
* Archive reports
- run these in the dist directory
find . -name *.jar > ../releaselogs/jarlist.txt
find . -name *.sar > ../releaselogs/sarlist.txt
find . -name *.war > ../releaselogs/warlist.txt
find . -name *.ear > ../releaselogs/earlist.txt
find . -name *.zip > ../releaselogs/ziplist.txt
find . -name *.gz > ../releaselogs/gzlist.txt
find . -name *seam*.jar > ../releaselogs/seamjarlist.txt
- Manually review the lists for problems
- <TODO: list expected items or provide listing in svn/>
* Built source verification, dependency report & test suite
- Clean our your local maven repository
- ex. "rm -Rf ~/.m2"
- <TODO document way to set local repo settings for clean build/>
- Create a copy of the $DIST directory
- rename the copy with "*.orig"
- the idea is the leave the original pristine for example testing.
** Source verification **
- run "ant > ../releaselogs/x.x.x.XX.sourcebuild.txt"
- diff the original and the built versions of the $DIST directories
- only difference should be build related
- <TODO: list expected differences/>
- Extract seam jars from orig, and the newly built into tmp directories
- diff the directories
- Should be no differences except version of ant and/or jdk versions
** Dependency report **
- "ant dependencyReport > ../releaselogs/x.x.x.XX.dependencybuild.txt"
- run "cp ./dependency-report.txt ../releaselogs"
- Review for snapshot dependencies
- there should be none.
- Compare with real jar versions from META-INF/MANIFEST.MF
- <TODO: A tool is needed to do this effectively/>
** Testsuite execution **
- "ant cleanall validateall testall testreport
> ../releaselogs/x.x.x.XX.testallreport.txt"
- check report/junit-noframes.html
- There should be no failures or errors.
- run "cp -R test-output ../releaselogs"
- run "cp -R test-report ../releaselogs"
** Compare the original distribtion to the one used for the testing.
- Review changes in thirdparty jars, directories, and files.
- <TODO: generate list of acceptable difference>
- Delete or rename to original dist.
- Rename the "*.orig" back to the original name
Example verification
--------------------
* The list of examples below is extensive, and testing may not touch each.
- This should be based on risk analysis, and release note review.
- For a major/minor GA build they should all be tested.
- Any examples that are not tested should be noted.
* Verify the the following are accurate and up to date:
- "$DIST/readme.txt"
- "$DIST/examples/readme.txt"
* For these examples verify the following:
- readme.txt is accurate
- ant deploy
- ant tomcat.deploy - for supported examples
- ant test
- ant clean
- ant undeploy
* Examples with "(tutorial)" are discussed in the reference guide tutorial.
- document should be validated as well
- including tomcat deployments
* Edit the $dist/build.properties and set the jboss.home and tomcat.home
- JBoss AS 5.1.0.GA and Tomcat 6.X
* JBoss 5.1.0 examples
- blog (tutorial)
- booking (tutorial)
- contactlist
- drools
- dvdstore (tutorial)
- excel (review docs)
- groovybooking
- hibernate (tutorial)
- icefaces
- itext
- jpa
- mail
- messages (tutorial)
- nestedbooking
- numberguess (tutorial)
- quartz
- registration (tutorial)
- remoting/chatroom
- remoting/gwt
- remoting/helloworld
- seambay
- seamdiscs
- seampay
- seamspace
- spring
- todo (tutorial)
- ui
- wicket (you should verify both buildtime instrumentation and runtime instrumentation)
* Tomcat 6 examples
- Note: use JBoss embedded unless specified differently
- blog (tutorial)
- booking (tutorial)
- dvdstore (tutorial)
- hibernate (tutorial)
- hibernate (tutorial) without embedded
- jpa
- jpa without embedded
- messages (tutorial)
- numberguess (tutorial)
- registration (tutorial)
- seambay
- seampay
- todo (tutorial)
* GlassFish v2.1 examples
- jee5
- jpa
- hibernate
Functional tests of Seam examples
---------------------------------
The functionality of most examples can be verified by automated tests. There are also jobs
at Hudson system which run the testsuites periodically.
* JBoss 5.1.0 examples
The following examples are tested automatically:
* blog (tutorial)
* booking (tutorial)
* contactlist
* drools
* dvdstore (tutorial)
* groovybooking
* hibernate (tutorial)
* jee5/booking
* jpa
* messages (tutorial)
* nestedbooking
* numberguess (tutorial)
* openid (need to set properties openid.account and openid.password in ftest.properties file)
* quartz
* registration (tutorial)
* remoting/helloworld
* remoting/gwt
* remoting/chatroom
* seambay
* seamdiscs
* seampay
* seamspace
* spring
* toto (tutorial)
* ui (except the s:resource/download link)
The testsuite also verifies ability to deploy of the following examples:
* excel
* itext
* mail
* ui
The following sample applications have to be verified manually:
* excel
* itext
* mail
* nestedbooking (only nested conversation part)
* ui (only s:resource/download link)
All automated tests are executed from src/test/ftest directory.
* To run the automated tests:
ant testall.jboss5
* To test examples manually:
ant deploy (in SEAM_DIR/examples/<example_name>/)
...test manually
ant undeploy
* Tomcat 6 examples (with JBoss embedded)
The following examples are tested (automatically):
* blog (tutorial)
* booking (tutorial)
* dvdstore (tutorial)
* hibernate (tutorial)
* jpa
* messages (tutorial)
* numberguess (tutorial)
* registration (tutorial)
* seambay
* seampay
* todo (tutorial)
All automated tests are executed from src/test/ftest directory.
* To run the automated tests:
ant testall.jboss-embedded
* Tomcat 6 examples (without JBoss embedded)
The following examples are tested (automatically):
* hibernate (tutorial)
* jpa
All automated tests are executed from src/test/ftest directory.
* To run the automated tests:
ant testall.tomcat6
Most of the examples can be tested automatically also with JBoss 4.x. However there are exceptions
(the newest functional test were tested only on JBoss 5.x and later). The automated test can
be executed with JBoss 4.x if there is a file jboss4.xml at src/test/ftest/examples/<example_name>/
directory)
* To run the automated tests with JBoss 4.x:
ant testall.jboss4
Testing of Cluster
------------------
Currently testing of cluster environment is done through one automated test of booking example.
The main goal of this test is to simulate recovery from breakdown.
This test should be executed autonomously (not as a part of test bundle).
To run the test follow these steps:
1) Specify jboss5.home property in src/test/ftest/ftest.properties to point to your JBoss server folder
2) Create second "all" configuration of your JBossAS instance (name it for instance "all2")
3) Start first (master) instance of JBossAS:
JBOSS_HOME/bin/run.sh -c all -g DocsPartition -u 239.255.101.101 -b localhost -Djboss.messaging.ServerPeerID=1
-Djboss.service.binding.set=ports-default
4) Start second (slave) instance of JBossAS:
JBOSS_HOME/bin/run.sh -c all2 -g DocsPartition -u 239.255.101.101 -b localhost -Djboss.messaging.ServerPeerID=2
-Djboss.service.binding.set=ports-01
5) Go to src/test/ftest directory and run:
ant test -Dtest=booking -Dcluster=true
** A booking example is configured to run in cluster only on JBoss server. **
JBDS and seam-gen verification
------------------------------
These tests use a stable version of MySQL and the latest release of JBDS. Be sure
to use the latest stable release of tools (2.1.1.GA at the time of writing), and
to also apply the JBoss tools provided WTP patch. <TODO: update is version changes
behavior>
* export the following tables to MySQL:
CREATE TABLE `Person` (
`username` varchar(10) NOT NULL,
`name` varchar(100) NOT NULL,
`birthdate` date default NULL,
`address` varchar(600) NOT NULL,
PRIMARY KEY (`username`)
) ENGINE=InnoDB;
CREATE TABLE `Vehicle` (
`ownerUsername` varchar(10) default NULL,
`make` varchar(50) NOT NULL,
`model` varchar(50) NOT NULL,
`year` int(11) NOT NULL,
`registration` varchar(8) NOT NULL,
`state` varchar(2) NOT NULL,
PRIMARY KEY USING BTREE (`registration`,`state`),
KEY `ownerUsername` (`ownerUsername`),
CONSTRAINT `owner` FOREIGN KEY (`ownerUsername`) REFERENCES `Person` (`username`)
) ENGINE=InnoDB;
<NOTE: seam-gen should be able to run without an internet connection. To test
this you should first remove/rename your maven repository (document
option to set this as a property). Then either disable networking, or
lock down a firewall on the test machine so that no requests are allowed
out. Then test the various seam-gen targets. JBoss-as may not start in
the configuration so testing the live app may need to be done after
executing the various seam-gen targets. This does not have to be
done for each test below but the different targets should be verified./>
* Review seam-gen chapter of the reference guide
- accurate and up to date
* seam-gen EAR
- run seam with setup create-project and explode
- during setup choose an EAR project
- verify basic functionality
- run seam generate-entities restart
- test the basic functionality of the app (CRUD on each table)
- run "seam new-action new-form restart"
- test both generated pages
- run seam test
- run "ant validate" in seam-gen project directory
* seam-gen IceFaces EAR test
- run seam with setup create-project and explode
- during setup choose to use icefaces
- during setup choose an EAR project
- verify basic functionality
- run seam generate-entities restart
- test the basic functionality of the app (CRUD on each table)
- run seam test
- run "ant validate" in seam-gen project directory
* seam-gen WAR
- run seam with setup create-project and explode
- during setup choose a WAR project
- verify basic functionality
- run seam generate-entities restart
- test the basic functionality of the app (CRUD on each table)
- run "seam new-action new-form restart"
- test both generated pages
- run seam test
- run "ant validate" in seam-gen project directory
* JBDS - import the EAR seam-gen generated project into JBDS.
- Enable Seam support in project properties
- Check that EL code completion works for Seam components
- both project specific and core components
- in views, and config files, etc...
- Check that Hibernate Console work on the project
- expand the Configuration node
- Open HQL editor and query "from SomeEntity" and execute the query
- Execute testng testcases for project
* JBDS new WAR project
- Reverse engineer entities from MySQL
- Create "new Seam Action" and "new Seam Form"
- Test generated pages (check hot deployment of Seam components, html)
- Test running unit tests from Eclipse
* JBDS new EAR project
- Reverse engineer entities from MySQL
- Create "new Seam Action" and "new Seam Form"
- Test generated pages (check hot deployment of Seam components, html)
- Test running unit tests from JBDS
* JBDS - test a subset of the examples with testNG plugin.
- See "/readme.txt" and "/examples/readme.txt" for details.
Portlet Bridge Verification
--------------------------
* Use the latest released version of the JBoss Portlet Bridge (PBR) and GateIn.
- for PBR source distribution is preferred
- http://www.jboss.org/portletbridge
- http://www.jboss.org/gatein
* Deploy PBR seam booking example following the PBR document instructions.
- Review any known issues with the PBR in the PBR JIRA project.
- simplified instructions for deploying seam booking:
- run "mvn package" in $PBR_SRC/examples/seam/booking/
- copy $PBR_SRC/examples/seam/booking/ear/target/seamEAR.ear into
running JBossAS in GateIn destribution
* Verify the example and functionality.
- Update applications in application registry
- in the GUI under http://localhost:8080/portal - Group -> Administration -> Application Registry,
click Categories, Import Applications
- Add new page with Seam booking portlets
- in the GUI - click Group Editor -> Add Page
- User authentication through portal
- use default users, and new users that are created
- Basic hotel booking
- user both text search and search button
- change dates, and options in the booking
- confirm, logout, login, verify confirmation, cancel confirmation
- Conversation handling
- launch several hotels booking conv. from the search page
- individually confirm and switch between conversations.
- <NOTE: Can not launch into multiple conversations ATM>
* Upgrade the Seam version in the Seam portlet booking example and follow
steps above
- install the jars with current version of Seam into your local mvn repo
- adjust the following files to contain current version of Seam:
- $PBR_SRC/parent/pom.xml
- build all the distribution by running "mvn -U clean install" in the $PBR_SRC dir
- make sure the built booking application contains jars related to the current version of Seam
- deploy the app
* Deploy a second version of the booking example as a separate portlet
- <TODO: DEFER - this is not supported in the bridge yet/>
- <TODO: there may be a new chatroom seam portlet for this testing/>
JDK 1.6 Specific Testing
-------------------------
The latest available version of Sun's JDK 1.6 will be used for tests and steps
in this section.
<NOTE: 2.1.0.B1 will be the first execution of this process - it needs to be
reviewed, and modified as needed/>
* Building and comparing the JDK1.6 built distribution
- checkout a clean version of the tag in a new/clean directory.
- run "ant cleanall dist > ../releaselogs/x.x.x.XX.jdk16distbuild.txt"
- use this dist for all testing in this section
- diff the JDK 1.5 version of the dist to the JDK 1.6
- <TODO create a listing of expected changes/>
* Source build validation
- Follow the steps above for Source Verification
- except put "jdk16" in the log file redirects
* Testsuite execution
- Follow the steps above for Testsuite Execution
- except put "jdk16" in the log file and artifact names
* Example execution
- There will not be a complete testing of the examples on 1.6
- The list below should be modified as needed based on risk
** JBoss 4.2.3 examples **
- booking
- dvdstore
- excel
- nestedbooking
- remoting/chatroom
- seamspace
- ui
- wicket
** Tomcat 6 examples **
- booking
- jpa
- jpa without embedded
** GlassFish v2.1 examples **
- jee5
- jpa
* seam-gen
- Follow the steps above for seam-gen testing
- EAR app
- WAR app
Document review
---------------
* Review the API javadocs in both IE and FF.
- Specifically for version differences
- This is not a full review at all
* Review the Reference Guide documentation in both IE and FF.
- Review for format and code styles
- Review for version numbers, and dependencies
- Review any extensive changes based on release notes and the team.
- This is not a full review at all.
Final Build + Upload
--------------
* When ready for the release
- checkout a clean version of the tag in a new/clean directory.
- run "ant cleanall dist -Dbuild.translations=true > ../releaselogs/x.x.x.XX.finaldistbuild.txt"
- diff this to the one used for testing
* Follow instructions for sourceforge upload
- Create md5 files for the ".zip" and ".tar.gz" files
- <QUESTION: do we want to create md5 files for the archives/>
- <NOTE: not for 2.0.X/>
- upload the .zip and .tar.gz and md5 files
- FTP to your SF users "/incoming" directory
* Login to sourceforge.org and go to jboss.org project
- Under admin tab click on "file releases"
- Add a release to the "JBoss Seam" project
- Set "Status" to "hidden"
- Paste this release changelog snippet in the "changelog"
- Paste this release readme.txt in the "release notes"
- Add the files uploaded to the release
- Keep everything hidden for now.
* Upload the "$DIST/doc" directory to "docs.jboss.com/seam/<NEW VERSION>"
- Note: this can take a long time.
* Maven release procedure.(see build/readme.txt for details)
- Run "ant -Drepository.username=<your_username> -Drepository.password=<your_password> stageReleaseSeam" in the build directory
- Then follow http://community.jboss.org/wiki/MavenDeployingaRelease section Closing the Staging Respository
- test a Seam project with staged artifacts in repository https://repository.jboss.org/nexus/content/groups/staging/
- then release Maven artifacts
* Create draft of the documentation and download pages on seamframework.org
- documentation points to "docs.jboss.com"
- downloads point to sourceforge download page
Final Coordination and Announcement
-----------------------------------
* For a GA release and if its newest version of Seam
- Update "http://docs.jboss.com/seam/latest" with the docs from this version.
- Not for cr,alpha,beta releases
- This can take a long time
* Update the DTDs and XSDs on jboss.com/products/seam
- Easiest way to use a script that checks for changes
- <TODO add script to svn>
- Update any changes to the site
* Login to sourceforge.org and modify the Seam release entry
- Change the date to today
- Change "Status" to active
- Provide the link to the SF download page for the release for announcements.
* Update the documentation and download pages on seamframework.org with drafts.
* Update Jira so that version shows as "released"
* Announce the release
- Blog on in.relation.to
- seamframework.org news, and forums
- jboss.org news
- TheServerSide.com
Update Demos
------------
* This step is not needed for every point release:
* Upload the booking and dvdstore examples to demo.jboss.com
* <TODO more information on what is needed>
* <QUESTION: is this really a part of the process or is it out of date/>
Notes
-----
* To reapply a tag:
- First delete the original
- svn delete https://svn.jboss.org/repos/seam/tags/JBoss_Seam_x_x_x_XXX
-m "removing old tag prior to applying updated tag"
- ex. svn delete https://svn.jboss.org/repos/seam/tags/JBoss_Seam_2_1_0_B1
-m "removing old tag prior to applying updated tag"
- Recopy back to tag
-"svn copy https://svn.jboss.org/repos/seam/XX/XX
https://svn.jboss.org/repos/seam/tags/JBoss_Seam_x_x_x_XXX
-m "create JBoss_Seam_x_x_x_XXX tag""
- ex. svn copy https://svn.jboss.org/repos/seam/trunk
https://svn.jboss.org/repos/seam/tags/JBoss_Seam_2_1_0_B1
-m "Updated tag for 2.1.0.B1"
[FUTURE]
--------
* Store release related scripts (especially when more automated) in svn.
* Store release logs, and reports in svn.
* Find a jar/archive reporting tool for detailed dependency, version reports.