Notes on the MyFaces Core 1.2.1 Release
Release manager: Leonardo Uribe
Timeline
- Release process for Core 1.2.1 not yet started
- Nightly builds are available (see Testing)
- Proposed release date: 2007-12-16
Issues
Testing
Here's how you can help us test the distribution.
The 1.2.x trunk gets built nightly, and the jarfiles deployed to the Apache Maven2 snapshot repository. You can therefore always download the latest jars here:
http://people.apache.org/repo/m2-snapshot-repository/org/apache/myfaces/core
If you are using maven 2.x for building your own application, then you can just configure this repository:
Configure a <repository> for Maven 2:
<repository>s <id>apache.snapshots</id> <name>Apache Snapshot Repository</name> <url>http://people.apache.org/repo/m2-snapshot-repository</url> </repository>
And declare a dependency on the 1.2.1 snapshots:
<dependency> <groupId>org.apache.myfaces.core</groupId> <artifactId>myfaces-api</artifactId> <version>1.2.1-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.myfaces.core</groupId> <artifactId>myfaces-impl</artifactId> <version>1.2.1-SNAPSHOT</version> </dependency>
Note: Maven 2.0.4 will not download a new version if one is already present in your local repository. You will need to delete $M2_REPO/org/apache/myfaces/core to force Maven to download the new version. (Usually, $M2_REPO is <your home directory>/.m2/repository .)
Test your application, then, let us know the results (good or bad!) on dev at myfaces.apache.org. (You must be subscribed to post. See: http://myfaces.apache.org/mail-lists.html.)
Distribution bundles are generated nightly for some MyFaces projects and made available here:
However this isn't yet working for myfaces-core (either 1.1.x or 1.2.x). Hopefully that will come soon..
Tasks
Proposed Release Announcement
}}} == Diary == <<Anchor(diary)>> 1. Download http://www.apache.org/dist/myfaces/KEYS, add my GPG and replace this file on /www/www.apache.org/dist/myfaces {{{ scp KEYS lu4242@people.apache.org:/www/www.apache.org/dist/myfaces
2. Preparing shared 3.0.1
- Trying to prepare FAIL!. There is a dependency of myfaces api on 1.2.1-SNAPSHOT, so when it try to resolve to 1.2.1 there is a problem because we
are trying to release this version.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -DdryRun=true [INFO] Can't release project due to non released dependencies : org.apache.myfaces.core:myfaces-api:jar:1.2.1-SNAPSHOT:provided in project 'MyFaces Shared Project' (org.apache.myfaces.shared:myfaces-shared-project:pom:3.0.1-SNAPSHOT)
- After asking and thinking about the previous point, the solution is point it to 1.2.0 while myfaces 1.2.1 is released, then switch back.
- Trying to prepare SUCCESS!.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -DdryRun=true
- Release it! FAIL.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -Dresume=false [INFO] Unable to find artifact. Embedded error: Unable to download the artifact from any repository Try downloading the file manually from the project website. Then, install it using the command: mvn install:install-file -DgroupId=org.apache.myfaces.shared -DartifactId=myfaces-shared-core \ -Dversion=3.0.1 -Dclassifier=sources -Dpackaging=jar -Dfile=/path/to/file Alternatively, if you host your own repository you can deploy the file there: mvn deploy:deploy-file -DgroupId=org.apache.myfaces.shared -DartifactId=myfaces-shared-core \ -Dversion=3.0.1 -Dclassifier=sources -Dpackaging=jar -Dfile=/path/to/file \ -Durl=[url] -DrepositoryId=[id] org.apache.myfaces.shared:myfaces-shared-core:jar:3.0.1
- Let's try with -o to avoid try to download artifacts from any repo. FAIL! mvn release:rollback.
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -Dresume=false -o
- Install the jars of myfaces-shared-core 3.0.1 on the local repo to avoid this.
cd core cd target mvn install:install-file -DgroupId=org.apache.myfaces.shared -DartifactId=myfaces-shared-core -Dversion=3.0.1 -Dclassifier=sources -Dpackaging=jar -Dfile=myfaces-shared-core-3.0.1-sources.jar
- Try again SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -Dresume=false
- dependency versions automatically updated, so there is no need to fix it manually.
- checkout 3_0_1 branch and deploy it FAIL
mvn clean deploy -Psign-artifacts -Dpassphrase=??? [INFO] Error deploying artifact: Error executing command for transfer Exit code 255 - Warning: Identity file /home/leonardo/.ssh/id_rsa not accessible: No such file or directory. Permission denied (publickey,keyboard-interactive).
- change local user to match user on people.apache.org and try again FAIL
- do first on local repo, then copy it on people.apache.org SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
3. Let's rollback all, create shared/branches/3_0_1prepare and core/branches/1_2_1prepare to avoid change trunks directores (better release and translate changes manually on trunk).
- Fix all scm urls on poms manually to point on proper repo.
4. Preparing share 3.0.1 again
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -DdryRun=true
- Do it! -Dresume=false SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -Dresume=false
- Checkout 3.0.1 branch and install on local repository
5. Preparing core 1.2.1
- Already copied trunk to temporary work branch core/branches/1_2_1prepare
- Set all dependencies to org.apache.myfaces.shared artifacts to version "3.0.1" (instead of 3.0.1-SNAPSHOT)
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -DdryRun=true
- Do it! -Dresume=false FAIL!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -Dresume=false [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Failed to resolve artifact. Missing: ---------- 1) org.apache.myfaces.core:myfaces-api:jar:tests:1.2.1 Try downloading the file manually from the project website.
- try a mvn install, then mvn release:rollback an try again SUCCESS!. But the release was created on core/tags, not on core/branches. The same happens with shared. Maybe this happens because I create a branch for prepare this. Checking the log says:
[maven-release-plugin] copy for tag 3_0_1
- let's delete shared/branches/3_0_1 and move tags/3_0_1 and tags/1_2_1 to branches manually. Remeber fix SCM properties on pom.xml
- checkout shared/branches/3_0_1 and core/branches/1_2_1, change shared/branches/3_0_1/pom.xml to point to myfaces-1.2.1 instead 1.2.0, mvn clean install on both twice to ensure no refs on myfaces-1.2.0
6. Deploy shared and core on local repo
- release shared 3.0.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
- release core 1.2.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
- copy manually using scp to the account on people.apache.org. Due to a bug on linux http://jira.codehaus.org/browse/MDEPLOY-62 deploy not work on linux. SUCCESS
cd home/lu4242/stage/repo scp -p -r org lu4242@people.apache.org:/home/lu4242/public_html/myfaces121
7. Some bug fixes made, so we need to do all steps again from, starting from copy trunks to prepare paths and try again
- rename shared/branches/3_0_1 and shared/branches/3_0_1prepare and core/branches/1_2_1 and core/branches/1_2_1 append old1 to its name
- copy trunk to prepare
8. Preparing share 3.0.1 again
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -DdryRun=true
- Do it! -Dresume=false SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/shared/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=3_0_1 -Dresume=false
- Checkout 3.0.1 branch and install on local repository
9. Preparing core 1.2.1
- Set all dependencies to org.apache.myfaces.shared artifacts to version "3.0.1" (instead of 3.0.1-SNAPSHOT)
- remove snapshot plugin dependences
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -DdryRun=true
- -Dresume=false SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -Dresume=false
- Checkout 1.2.1 branch and install on local repository
10. Deploy shared and core on local repo
- release shared 3.0.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
- release core 1.2.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
#
11. JIRA release management (1.2.1-SNAPSHOT --> 1.2.1)
- Add a new version 1.2.1 to the core project
- Add a new version 1.2.2-SNAPSHOT to the core project
- Do a bulk change for all resolved issues with version fixed as 1.2.1-SNAPSHOT and change to 1.2.1
- Do a bulk change for all resolved (but not closed) in 1.2.1 and close them
- Archive the 1.2.1-SNAPSHOT version
12. Vote while TCK test passes
13. Errors on trunk and need to release org.apache.myfaces.trinidadbuild maven-faces-plugin
14. Preparing trinidad-maven plugins
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/trinidad-maven/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=lu4242-126-release -DdryRun=true
- -Dresume=false FAIL!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/trinidad-maven/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=lu4242-126-release -Dresume=false [ERROR] BUILD ERROR [INFO] ----------------------------------------------------------------- ------- [INFO] Failed to resolve artifact. Missing: ---------- 1) org.apache.myfaces.trinidadbuild:maven-faces-plugin:jar:1.2.6
- mvn install, mvn release:rollback and again SUCCESS!!!
- move tag subdir created to branches
- Correct SCM properties
15. Deploy as written in POM SUCCESS!!
mvn clean source:jar install deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repot -Prelease
16. Move LICENSE and NOTICE to META-INF folder in trunk SUCCESS!!!
17. Rename again on core prepare and others to do all tasks again (The changes previously done affects just core release and not shared, so shared is fine)
18. Preparing core 1.2.1
- Copy trunk-1.2.x on prepare
- Set all dependencies to org.apache.myfaces.shared artifacts to version "3.0.1" (instead of 3.0.1-SNAPSHOT)
- Set all dependencies to org.apache.myfaces.trinidadbuild artifacts to version "1.2.6" (instead of 1.2.6-SNAPSHOT)
- Commit on prepare
- -DdryRun=true SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -DdryRun=true
- -Dresume=false SUCCESS!
mvn release:prepare -DtagBase=https://svn.apache.org/repos/asf/myfaces/core/branches -Dusername=lu4242 -Dscm.password=??? -Dtag=1_2_1 -Dresume=false
- Checkout 1.2.1 branch and install on local repository
19. Deploy shared and core on local repo
- release shared 3.0.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
- release core 1.2.1 SUCCESS
mvn clean deploy -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo -Psign-artifacts -Dpassphrase=???
- copy manually using scp to the account on people.apache.org. Due to a bug on linux http://jira.codehaus.org/browse/MDEPLOY-62 deploy not work on linux. SUCCESS
cd home/lu4242/stage/repo scp -p -r org lu4242@people.apache.org:/home/lu4242/public_html/myfaces121
20. JIRA release management
- Add MYFACES-1790 to 1.2.1 fix version
- Find issues fixed with no fix version but that belongs to JSF 1.2, attach to 1.2.1 and close them.
21. Message on vote to announce fix for these two problems
Hi, I was running the needed tasks to get the 1.2.1 release of Apache MyFaces core out. This mail is to make clear that the vote still continues and the problems discussed before already has been solved. Please note that this vote concerns all of the following parts: 1. Maven artifact group "org.apache.myfaces.shared" v3.0.1 [1] 2. Maven artifact group "org.apache.myfaces.core" v1.2.1 [1] The artifacts are deployed to my private Apache account ([1]). Please take a look at the "1.2.0" artifacts and vote! Please note: This vote is "majority approval" with a minimum of three +1 votes (see [3]). ------------------------------------------------ [ ] +1 for community members who have reviewed the bits [ ] +0 [ ] -1 for fatal flaws that should cause these bits not to be released, and why.............. ------------------------------------------------ Thanks, Leonardo Uribe [1] http://people.apache.org/~lu4242/myfaces121 [2] http://www.apache.org/foundation/voting.html#ReleaseVotes
22. Vote for maven trinidad plugins
Hi, I was running the needed tasks to get the 1.2.6 release of Trinidad Plugins out. This task is necessary for release Myfaces 1.2.1, because it uses faces plugin. Please note that this vote concerns all of the following parts: 1. Maven artifact group "org.apache.myfaces.trinidadbuild" v 1.2.6 [1] The artifacts are deployed to my private Apache account ([1]). Please take a look at the "1.2.6" artifacts and vote! Please note: This vote is "majority approval" with a minimum of three +1 votes (see [3]). ------------------------------ ------------------ [ ] +1 for community members who have reviewed the bits [ ] +0 [ ] -1 for fatal flaws that should cause these bits not to be released, and why.............. ------------------------------------------------ Thanks, Leonardo Uribe [1] http://people.apache.org/~lu4242/trinidad-build126 [2] http://www.apache.org/foundation/voting.html#ReleaseVotes
23. Ok +1 votes necessary to release, so close vote and start distribution
24. Generate assembly
- Try to do it automatically javadoc and other stuff SUCCESS. It generate myfaces-core-1.2.1-bin.tar.gz and zip,
cd 1_2_1 mvn install -Pgenerate-assembly cd assembly mvn assembly:assembly -Psign-artifacts -Dpassphrase=???
- Create myfaces-core-1.2.1-src.tar.gz and zip manually and create .asc .md5 .sha1 for bin and src
openssl md5 myfaces-core-1.2.1-src.tar.gz > myfaces-core-1.2.1-src.tar.gz.md5 openssl md5 myfaces-core-1.2.1-src.zip > myfaces-core-1.2.1-src.zip.md5 openssl sha1 myfaces-core-1.2.1-src.tar.gz > myfaces-core-1.2.1-src.tar.gz.md5 openssl sha1 myfaces-core-1.2.1-src.zip > myfaces-core-1.2.1-src.zip.sha1 gpg --armor --output myfaces-core-1.2.1-src.tar.gz.asc --detach-sig myfaces-core-1.2.1-src.tar.gz gpg --armor --output myfaces-core-1.2.1-src.zip.asc --detach-sig myfaces-core-1.2.1-src.zip openssl md5 myfaces-core-1.2.1-bin.tar.gz > myfaces-core-1.2.1-bin.tar.gz.md5 openssl md5 myfaces-core-1.2.1-bin.zip > myfaces-core-1.2.1-bin.zip.md5 openssl sha1 myfaces-core-1.2.1-bin.tar.gz > myfaces-core-1.2.1-bin.tar.gz.md5 openssl sha1 myfaces-core-1.2.1-bin.zip > myfaces-core-1.2.1-bin.zip.sha1 gpg --armor --output myfaces-core-1.2.1-bin.tar.gz.asc --detach-sig myfaces-core-1.2.1-bin.tar.gz gpg --armor --output myfaces-core-1.2.1-bin.zip.asc --detach-sig myfaces-core-1.2.1-bin.zip
25. Vote closed trinidad plugins, starting distribution
- Oh problem. I cannot have rights to access /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/, so I cannot
finalize the release procedure.
26. JIRA release managment
- Release 1.2.6-plugins on JIRA
27. Vote closed myfaces core, starting distribution
- copy on /www/www.apache.org/dist/myfaces/source and /www/www.apache.org/dist/myfaces/binaries
cd /home/lu4242/public_html/sources cp * /www/www.apache.org/dist/myfaces/source cd /home/lu4242/public_html/binaries cp * /www/www.apache.org/dist/myfaces/binaries
- copy shared on /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/shared SUCCESS
- copy core on /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/core FAIL Permissions
- SVN tags for projects done
28. Rollback changes because TCK did not pass.
- Rollback poms
- Rollback tags
- Rollback copy on m2-ibiblio-rsync-repository