| ################################################################################ |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| ################################################################################ |
| This document describes the process used to produce DBCP 1.3.x/1.4.x release |
| candidates from the common source code maintained in DBCP's svn trunk. |
| |
| 0. Prepare and validate changes, testing with JDK 1.4 and 1.5 using Ant |
| and the code in trunk. |
| |
| 1. Change the version numbers in pom.xml, build.xml, |
| pom-1.3.xml and build-1.3.xml to the new .x version. |
| |
| 3. Regenerate download_dbcp.xml using the commons-build plugin: |
| mvn commons:download-page |
| |
| 4. Regenerate RELEASE_NOTES.txt |
| mvn changes:announcement-generate |
| mv target/announcement/dbcp-release-notes.vm RELEASE-NOTES.txt |
| The formatting may need some tweaking. Check RELEASE-Notes.txt |
| in. |
| |
| 5. Test artifact generation from trunk: |
| mvn -Prc install |
| Inspect the 1.4.x tarballs in /target and the maven artifacts in |
| your local maven repo. Fix any problems. |
| |
| 6. Check in all changes to trunk; re-run tests. |
| |
| Now we create a branch which will be used to set up the JDBC3 |
| version of the code. This can be done in two different ways: |
| |
| 7a. Create the branch directly in SVN: |
| |
| [If necessary, delete any existing such branch first] |
| |
| svn copy -m"Create 1.3.x compatibility release branch." \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/trunk \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/branches/DBCP_1_3_x_BRANCH |
| |
| 8a. Check out the branch into a local workspace: |
| |
| svn co https://svn.apache.org/repos/asf/commons/proper/dbcp/branches/DBCP_1_3_x_BRANCH |
| |
| Alternatively: |
| |
| 7b. Check out DBCP fully - i.e., trunk, branches, tags. |
| |
| 8b. From the top level of the checkout, execute |
| svn cp trunk branches/DBCP_1_3_x_BRANCH |
| svn commit -m "Created 1.3.x compatibility release branch." |
| (where x is the final digit of the new release number) |
| |
| Whichever method was chosen above, continue as follows: |
| |
| 9. From the DBCP_1_3_x_BRANCH |
| svn rm pom.xml |
| svn rm build.xml |
| svn rm findbugs-exclude-filter.xml |
| svn mv build-1.3.xml build.xml |
| svn mv pom-1.3.xml pom.xml |
| |
| 10. From the DBCP_1_3_x_BRANCH, using JDK 1.4 or 1.5 |
| cp build.properties.sample build.properties (make sure all referenced jars exist) |
| ant filter-sources |
| ant clean test |
| mvn clean site |
| svn commit -m "Filtered sources to remove JDBC 4 methods." |
| |
| 11a. Create release tags directly in SVN. |
| |
| svn cp -m "Tagging 1.3.x RCy" \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/branches/DBCP_1_3_x_BRANCH \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/tags/DBCP_1_3_x_RCy |
| (where x is dot level, y is RC number) |
| svn cp -m "Tagging 1.4.x RCy" \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/trunk \ |
| https://svn.apache.org/repos/asf/commons/proper/dbcp/tags/DBCP_1_4_x_RCy |
| |
| 11b. Create release tags from workspace. From the top-level dbcp directory |
| svn cp branches/DBCP_1_3_x_BRANCH tags/DBCP_1_3_x_RCy (where x is dot level, y is RC number) |
| svn cp trunk tags/DBCP_1_4_x_RCy |
| svn commit -m "Tagging 1.3.x RCy" tags/DBCP_1_3_x_RCy |
| svn commit -m "Tagging 1.4.x RCy" tags/DBCP_1_4_x_RCy |
| |
| 12. From a fresh checkout of the DBCP_1_4_x_RCy tag, using JDK 1.6 execute |
| mvn -Prc install |
| |
| 13. From a fresh checkout of the DBCP_1_3_x_RCy tag using JDK 1.5, |
| mvn -Prc install |
| |
| 14. Collect the maven released artifacts from the 1.3.x/1.4.x dbcp directories |
| in your local repo and the tarballs/zips from the /target directories |
| in trunk and the 1.3 branch. |
| |