This is an automated email from the ASF dual-hosted git repository. robertlazarski pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-rampart.git
The following commit(s) were added to refs/heads/master by this push: new 50b0f026 Release cleanup and docs, link to JavaDoc via apidocs needs to be fixed still 50b0f026 is described below commit 50b0f0269d92c210dff5356c49458e43ba1e762f Author: Robert Lazarski <robertlazar...@gmail.com> AuthorDate: Tue Nov 12 17:06:07 2024 -1000 Release cleanup and docs, link to JavaDoc via apidocs needs to be fixed still --- apidocs/pom.xml | 6 ++ modules/distribution/bin.xml | 14 ++-- pom.xml | 18 ++--- src/site/markdown/release-notes/1.8.0.md | 4 +- src/site/site.xml | 4 +- src/site/xdoc/developer-guide.xml | 131 +++++++++++++++++++++++++++++-- src/site/xdoc/siteHowTo.xml | 60 -------------- src/site/xdoc/svn.xml | 114 --------------------------- 8 files changed, 147 insertions(+), 204 deletions(-) diff --git a/apidocs/pom.xml b/apidocs/pom.xml index 050394dc..eea5b791 100644 --- a/apidocs/pom.xml +++ b/apidocs/pom.xml @@ -50,6 +50,12 @@ <artifactId>rampart-trust</artifactId> <version>${project.version}</version> </dependency> + <!-- Artifacts that are needed to generate the Javadoc but that are not transitive dependencies + because they are in scope "provided". --> + <dependency> + <groupId>org.apache.maven.plugin-tools</groupId> + <artifactId>maven-plugin-annotations</artifactId> + </dependency> </dependencies> <build> <plugins> diff --git a/modules/distribution/bin.xml b/modules/distribution/bin.xml index c9ec0f0a..456a975d 100644 --- a/modules/distribution/bin.xml +++ b/modules/distribution/bin.xml @@ -17,25 +17,21 @@ <includes> <include>org.apache.santuario:xmlsec:jar</include> <include>org.apache.ws.security:wss4j:jar</include> - <include>org.bouncycastle:bcprov-jdk15on:jar</include> + <include>org.bouncycastle:bcprov-jdk18on:jar</include> <include>org.apache.rampart:rampart-core:jar</include> <include>org.apache.rampart:rampart-policy:jar</include> <include>org.apache.rampart:rampart-trust:jar</include> <include>org.opensaml:opensaml:jar</include> - <include>org.opensaml:xmltooling:jar</include> + <include>org.opensaml:opensaml-soap-impl:jar</include> + <include>org.opensaml:opensaml-soap-api:jar</include> + <include>org.opensaml:opensaml-xacml-impl:jar</include> + <include>org.opensaml:opensaml-xacml-api:jar</include> <include>org.owasp.esapi:esapi:jar</include> - <include>joda-time:joda-time:jar</include> <include>org.slf4j:slf4j-api:jar</include> <include>org.slf4j:slf4j-jcl:jar</include> <include>velocity:velocity:jar</include> <include>commons-collections:commons-collections:jar</include> - <include>org.opensaml:openws:jar</include> <include>commons-lang:commons-lang:jar</include> - <include>org.apache.xerces:xercesImpl:jar</include> - <include>org.apache.xerces:resolver:jar</include> - <include>org.apache.xerces:serializer:jar</include> - <include>org.owasp.esapi:esapi:jar</include> - <include>ca.juliusdavies:not-yet-commons-ssl</include> </includes> </dependencySet> <dependencySet> diff --git a/pom.xml b/pom.xml index c4643776..e26e9686 100644 --- a/pom.xml +++ b/pom.xml @@ -163,7 +163,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> - <version>3.5.0</version> + <version>3.5.2</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -210,7 +210,7 @@ </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> - <version>3.10.1</version> + <version>3.11.1</version> </plugin> <plugin> <groupId>com.github.veithen.alta</groupId> @@ -411,7 +411,7 @@ <plugins> <plugin> <artifactId>maven-project-info-reports-plugin</artifactId> - <version>3.7.0</version> + <version>3.8.0</version> <reportSets> <reportSet> <reports> @@ -639,7 +639,7 @@ <dependency> <groupId>org.apache.santuario</groupId> <artifactId>xmlsec</artifactId> - <version>4.0.2</version> + <version>4.0.3</version> <exclusions> <exclusion> <groupId>com.sun.activation</groupId> @@ -655,17 +655,17 @@ <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjrt</artifactId> - <version>1.9.19</version> + <version>1.9.22.1</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> - <version>1.9.19</version> + <version>1.9.22.1</version> </dependency> <dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> - <version>4.0.0</version> + <version>4.0.2</version> </dependency> </dependencies> @@ -731,9 +731,9 @@ <axiom.version>1.4.0</axiom.version> <wss4j.version>3.0.3</wss4j.version> - <opensaml.version>4.3.0</opensaml.version> + <opensaml.version>4.3.2</opensaml.version> - <bcprov.jdk18.version>1.78.1</bcprov.jdk18.version> + <bcprov.jdk18.version>1.79</bcprov.jdk18.version> <failIfNoTests>false</failIfNoTests> diff --git a/src/site/markdown/release-notes/1.8.0.md b/src/site/markdown/release-notes/1.8.0.md index 45a234b1..b5a67831 100644 --- a/src/site/markdown/release-notes/1.8.0.md +++ b/src/site/markdown/release-notes/1.8.0.md @@ -9,7 +9,9 @@ namely opensaml to 4.3 and ws-wss4j to 3.0.3. This will be the last javax based release. The next Rampart release will be 2.0.0 and will support Axis2 2.0.0, Jakarta, servlet 6.0 and EE 10. This should happen -soon as the hardwork in Axis2 2.0.0 has been done already. +soon as the hardwork in Axis2 2.0.0 has been done already. The +biggest expected challenge will be the OpenSAML upgrade from +4.x which supports javax, to 5.x which supports jakarta. The Apache Rampart project and our top level Axis project covering Axis2 needs committers! diff --git a/src/site/site.xml b/src/site/site.xml index 3e26ddd4..dc74cb5e 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -46,7 +46,6 @@ <item name="Home" href="index.html" /> <item name="Downloads" href="javascript:void(0)"> <item name="Releases" href="download.html"/> - <item name="Source Code" href="svn.html"/> </item> <item name="Release Notes" href="javascript:void(0)"> <item name="1.6.1" href="release-notes/1.6.1.html"/> @@ -64,7 +63,6 @@ <item name="Rampart Configuration" href="rampartconfig-guide.html"/> <item name="STS Configuration" href="setting-up-sts.html"/> <item name="Developer Guide" href="developer-guide.html"/> - <item name="Build the Site" href="siteHowTo.html" /> </menu> <menu name="Resources"> <item name="Articles" href="articles.html" /> @@ -75,7 +73,7 @@ <item name="Project Team" href="team-list.html" /> <item name="Issue Tracking" href="http://issues.apache.org/jira/browse/Rampart" /> <item name="Mailing Lists" href="mail-lists.html"/> - <item name="Source Code" href="http://svn.apache.org/viewvc/axis/axis2/java/rampart/" /> + <item name="Source Code" href="https://github.com/apache/axis-axis2-java-rampart" /> <item name="License" href="http://www.apache.org/licenses/"/> <item name="Sponsorship" href="http://www.apache.org/foundation/sponsorship.html"/> <item name="Thanks" href="http://www.apache.org/foundation/thanks.html"/> diff --git a/src/site/xdoc/developer-guide.xml b/src/site/xdoc/developer-guide.xml index 6852c87d..bd9b62b9 100644 --- a/src/site/xdoc/developer-guide.xml +++ b/src/site/xdoc/developer-guide.xml @@ -26,17 +26,12 @@ Stack</em></strong></p> <h3>Building Rampart</h3> <ol> - <li>Install maven2. Refer to the <a + <li>Install maven3. Refer to the <a href="http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html">Installation guide</a>.</li> - <li>Install SVN on your machine. (The Rampart repository uses SVN.) Please - read the ASF <a - href="http://www.apache.org/dev/version-control.html">Source Code - Repositories page.</a></li> <li>Download the source code. <ul> - <li>Anon Checkout <a - href="https://github.com/apache/axis-axis2-java-rampart">https://github.com/apache/axis-axis2-java-rampart/</a></li> + <li>Checkout <a href="https://github.com/apache/axis-axis2-java-rampart">https://github.com/apache/axis-axis2-java-rampart/</a></li> </ul> </li> <li>The Rampart project has 8 modules under it. They are: @@ -186,5 +181,125 @@ align="middle" /> <p></p> <p></p> - </body> + +<h3>Release process and release preparation</h3> +<p>Check that all dependencies and plugins are available from standard repositories. To do this, clean the local repository and execute 'mvn clean install followed by 'mvn site'</p> + +<p>Check that the set of license files in the legal directory is complete and accurate (by checking that in the binary distribution for every third party JAR in the lib directory. </p> + +<p>Check that the apache-release profile can be executed properly. To do this, issue the following command: mvn clean install -Papache-release -DskipTests=true</p> + +<p>You may also execute a dry run of the release process: mvn release:prepare -DdryRun=true. After this, you need to clean up using the following command: mvn release:clean</p> + +<p>Check that the Maven site can be generated and deployed successfully, and that it has the expected content.</p> + +<p>To generate the entire documentation in one place, complete with working inter-module links, execute the site-deploy phase (and check the files under target/staging). A quick and reliable way of doing that is to use the following command: mvn -Dmaven.test.skip=true clean package site-deploy</p> + +<p>Complete the release notes in the new src/site/markdown/release-notes .md file, i.e. 2.0.0.md. It should include a description of the major changes in the release as well as a list of resolved JIRA issues.</p> + +<h3>Prerequisites</h3> + +<p>The following things are required to perform the actual release:</p> + +<p>A PGP key that conforms to the <a href="http://specs.xmlsoap.org/ws/2005/02/trust/WS-Trust.pdf"> requirement for Apache release signing</a></p> + +<p>To make the release process easier, the passphrase for the code signing key should be configured in ~/.m2/settings.xml</p> + +<code><![CDATA[<settings> + ... + <profiles> + <profile> + <id>apache-release</id> + <properties> + <gpg.passphrase><!-- KEY PASSPHRASE --></gpg.passphrase> + </properties> + </profile> + </profiles> + ... +</settings>]]> + +</code> + +<p>To make the release process easier, the passphrase for the code signing key should be configured in ~/.m2/settings.xml</p> + +<p>The release process uses a Nexus staging repository. Every committer should have access to the corresponding staging profile in Nexus. To validate this, login to repository.apache.org and check that you can see the org.apache.axis staging profile. The credentials used to deploy to Nexus should be added to settings.xml</p> + +<h3>Release</h3> + +<p>In order to prepare the release artifacts for vote, execute the following steps:</p> + +<p>If necessary, update the copyright date in the top level NOTICE file.</p> + +<p>Start the release process with the following command:</p> + +<code>mvn release:prepare</code> + +<p>When asked for the "SCM release tag or label", keep the default value (x.y.z) </p> + +<p>The above command will create a tag in Subversion and increment the version number of the trunk to the next development version. It will also create a release.properties file that will be used in the next step.</p> + +<p>Perform the release using the following command: </p> + +<code>mvn release:perform</code> + +<p>This will upload the release artifacts to the Nexus staging repository.</p> + +<p>Close the staging repository. The name of the staging profile is org.apache.axis. See <a href="https://maven.apache.org/developers/release/maven-project-release-procedure.html"> for a more thorough description of this step. </a></p> + +<p>Execute the target/checkout/etc/dist.py script to upload the source and binary distributions to the development area of the <a href="https://dist.apache.org/repos/dist/"> repository. </a></p> + +<p>If not yet done, export your public key and <a href="https://dist.apache.org/repos/dist/release/axis/axis2/java/rampart/KEYS"> append it here. </a></p> + +<p>The command to export a public key is as follows:</p> + +<code>gpg --armor --export key_id</code> + +<p>Delete <a href="https://dist.apache.org/repos/dist/release/axis/axis2/java/rampart/KEYS"> if it exists. </a></p> + +<p>Create a new staging area for the site:</p> + +<code>svn copy https://svn.apache.org/repos/asf/axis/site/axis2/java/rampart https://svn.apache.org/repos/asf/axis/site/axis2/java/rampart-staging</code> + +<p>This step can be skipped if the staging area has already been created earlier (e.g. to test a snapshot version of the site).</p> + +<p>Change to the target/checkout directory and prepare the site using the following commands:</p> + +<code>mvn site-deploy ; mvn scm-publish:publish-scm -Dscmpublish.skipCheckin=true</code> + +<p>The staging area will be checked out to target/scmpublish-checkout (relative to target/checkout). Do a sanity check on the changes and then commit them.</p> + +<p>Start the release vote by sending a mail to java-...@axis.apache.org . The mail should mention the list of issues solved in the release (by linking to the relevant JIRA view).</p> + +<p>Include a link to the location of the Nexus staging repository, and a link to the <a href="https://dist.apache.org/repos/dist/dev/axis/axis2/java/rampart/"> source and binary distributions. </a></p> + +<p>A link to the preview of the <a href="https://axis.apache.org/axis2/java/rampart-staging/"> Maven site. </a></p> + +<p>If the vote passes, execute the following steps:</p> + +<p>Promote the artifacts in the staging repository. See<a href="https://central.sonatype.org/publish/release/#close-and-drop-or-release-your-staging-repository"> for detailed instructions for this step.</a></p> + +<p>Publish the distributions:</p> + +<!-- version? --> +<code>svn mv https://dist.apache.org/repos/dist/dev/axis/axis2/java/rampart/ https://dist.apache.org/repos/dist/release/axis/axis2/java/rampart</code> + +<p>Publish the site:</p> + +<code>svn co --depth=immediates https://svn.apache.org/repos/asf/axis/site/ site ; cd site/axis2/java ; svn rm rampart ; svn mv rampart-staging rampart ; svn commit</code> + +<p>It may take several hours before all the updates have been synchronized to the relevant ASF systems. Before proceeding, check that the Maven artifacts for the release are available from the Maven central repository, and the <a href="https://axis.apache.org/axis2/java/rampart/"> Rampart Maven site has been synchronized.</a></p> + +<p>Verify the binary and source distributions can be downloaded from the<a href="https://axis.apache.org/axis2/java/rampart/download.html"> Rampart download page.</a></p> + +<p>Once everything is in place, send announcements to java-...@axis.apache.org and annou...@apache.org. Since the two lists have different conventions, audiences and moderation policies, to send the announcement separately to the two lists.</p> + +<p>Sample announcement:</p> + +<p>Apache Rampart Team is pleased to announce the release of Rampart x.y.z. The release is available for download at:</p> + +<p>https://axis.apache.org/axis2/java/rampart/download.html</p> + +<p>Apache Rampart provides implementations of the WS-Sec* specifications for Apache Axis2, based on Apache WSS4J and the Apache Axiom DOOM implementation.</p> + +</body> </html> diff --git a/src/site/xdoc/siteHowTo.xml b/src/site/xdoc/siteHowTo.xml deleted file mode 100644 index 1ccdbe26..00000000 --- a/src/site/xdoc/siteHowTo.xml +++ /dev/null @@ -1,60 +0,0 @@ -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ 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. - --> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> -<title></title> -</head> -<body> -<h1>How to Build the Rampart Project's Website</h1> -<h2>Installing Maven2</h2> -<p>The Apache Rampart website build system solely depends on <a href= -"http://maven.apache.org/">Maven2</a>. The build has been -specifically tested to work with Maven version 2.0.7. To install -Maven, download the distributions and follow the instructions in -the documentation. Make sure you don't forget to add MAVEN_HOME/bin -directory in the path.</p> -<h2>Checking out Apache Rampart</h2> -<p>Checkout the <a href= -"http://svn.apache.org/repos/asf/webservices/rampart/trunk/java">latest -source</a> using your favorite SVN client. If you are a committer, -get a <a href= -"https://svn.apache.org/repos/asf/webservices/rampart/trunk/java">commiter -check out.</a></p> -<h2>Building the Site</h2> -<p>cd to modules/documentation and type <i>mvn install</i> The built -site will be available under target/site.</p> -<h2>FAQ</h2> -<ol> -<li>How can I update a document in the site ?<br /> -Get a commiter check out. All the documents are in XHTML format -under the modules/documentation/src/site/xdoc folder, and you can change only the documents found -under this folder. Change the relevant file and run <i>mvn -install</i>. New documentation will be available under -the target folder.</li> -<li>How can I add a new document?<br /> -Add the new document in the xdoc folder. Change the site.xml -found under the modules/documentation/src/site folder by adding a link to the newly added -document. Re-generate the site.<br /> -Please make sure you have not included any of the illegal -characters and your document should be well formed.</li> -</ol> -</body> -</html> diff --git a/src/site/xdoc/svn.xml b/src/site/xdoc/svn.xml deleted file mode 100644 index 02f0d2fe..00000000 --- a/src/site/xdoc/svn.xml +++ /dev/null @@ -1,114 +0,0 @@ -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ 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. - --> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> -<head> -<title>Developing Apache Rampart</title> -</head> -<body lang="en" xml:lang="en"> -<h1>Developing Apache Rampart</h1> -<p>This document provides information on how to use SVN to get an -SVN checkout/update, make commits to the repository, etc., in the -process of contributing to Apache projects (specifically Apache Rampart). -Instructions on configuring IDEs for development and using Maven to -build the project is also included here.</p> -<h2>Content</h2> -<ul> -<li><a href="#svn">Working with Subversion (SVN)</a></li> -<li><a href="#checkout">Checkout Rampart from Subversion</a></li> -<li><a href="#maven">Installing Maven 2</a></li> -<li><a href="#ide">Configuring your IDE</a></li> -</ul> -<a name="svn" id="svn"></a> -<h2>Working with Subversion (SVN)</h2> -<p>The Rampart development team uses Subversion (SVN) for source -control. Subversion is a compelling replacement for CVS, developed -under the auspices of the Tigris community and licensed under an -Apache compatible license. To learn more about Subversion or to -download the latest distribution, visit the <a href= -"http:///subversion.tigris.org" target="_blank">Subversion project -site</a>. If you are looking for guidance on setting up and -installing Subversion, please read the ASF <a href= -"http://www.apache.org/dev/version-control.html" target= -"_blank">Source Code Repositories page</a>.</p> -<a name="checkout" id="checkout"></a> -<h2>Checkout Axis2 from Subversion</h2> -<p>To check out the latest version of Rampart from the Foundation's -Subversion repository, you must use one of the following URLs -depending on your level of access to the Rampart source code:</p> -<ul> -<li><b>If you are not a committer:</b> <a href= -"http://svn.apache.org/repos/asf/axis/axis2/java/rampart/trunk" -target= -"_blank">http://svn.apache.org/repos/asf/axis/axis2/java/rampart/trunk</a></li> -<li><b>If you are a committer:</b> <a href= -"https://svn.apache.org/repos/asf/axis/axis2/java/rampart/trunk" -target= -"_blank">https://svn.apache.org/repos/asf/axis/axis2/java/rampart/trunk</a></li> -</ul> -If you are a committer, make sure that you have selected an -svnpasswd. To do this, you must log into svn.apache.org. For more -information, please read the ASF <a href= -"http://www.apache.org/dev/version-control.html" target= -"_blank">Source Code Repositories page</a>. -<p>Once you have successfully installed Subversion, you can check -out Rampart trunk by following these steps:</p> -<ol type="1"> -<li>Run <strong>svn co <repository URL> rampart</strong> where -the repository URL is one of the URLs from the previous list.</li> -<li>This step will check out the latest version of the Rampart Java -codebase to a directory named "rampart". The second parameter to the -<strong>svn co</strong> selects a directory to create on your local -machine. If you want to checkout Rampart to a different directory, -feel free to change rampart to any other directory name.</li> -<li>To update your working copy to the latest version from the -repository, execute the <strong>svn update</strong> command.</li> -<li>If you would like to submit a patch, you can execute -<strong>svn diff</strong> to create a unified diff for submission -to the Rampart JIRA issue tracker.</li> -</ol> -<a name="maven" id="maven"></a> -<h2>Installing Maven 2</h2> -<p>Rampart's build is based on Maven 2. Maven is a build system that -allows for the reuse of common build projects across multiple -projects. For information about obtaining, installing, and -configuring Maven 2, please see the <a href= -"http://maven.apache.org" target="_blank">Maven project page</a>. -To use Maven to build the Axis2 project, Please install <a href="http://maven.apache.org/download.html" target= -"_blank">Maven2</a> and follow instructions here - <a href="maven-help.html">Quick Guide to Maven for Axis 2.0</a></p>. -<a name="ide" id="ide"></a> -<h2>Configuring your IDE</h2> -<p>The Rampart development team uses a variety of development tools -from vi to emacs to eclipse to Intellij/IDEA. The following section -is not an endorsement of a specific set of tools, it is simply -meant as a pointer to ease the process of getting started with -Rampart development.</p> -<ul> -<li><strong>Intellij IDEA</strong> - type <strong>mvn -idea:idea</strong>. Generates the necessary IDEA .ipr, .iml -and .iws project files</li> -<li><strong>Eclipse</strong>- type <strong>mvn eclipse:eclipse</strong>. Then in Eclipse, setup a Classpath Variable -for MAVEN_REPO, and select File > Import > Existing Projects -into Workspace > Select root directory. Selecting the root of -the Rampart source discovers all the modules and allows them to be -imported as individual projects at once.</li> -</ul> -</body> -</html>