You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by gi...@apache.org on 2026/04/26 07:03:57 UTC
(mina-site) branch asf-site updated: Updated site from master (1357dbf71716380356adab22f3f4686c79a2809f)
This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/mina-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new acd631735 Updated site from master (1357dbf71716380356adab22f3f4686c79a2809f)
acd631735 is described below
commit acd6317359f70a46e2598fda7e62b3e542251bd1
Author: jenkins <bu...@apache.org>
AuthorDate: Sun Apr 26 07:03:54 2026 +0000
Updated site from master (1357dbf71716380356adab22f3f4686c79a2809f)
---
content/index.xml | 2 +-
content/mina-project/developer-guide.html | 92 ++++++++++++++++++-------------
content/mina-project/index.xml | 2 +-
content/sitemap.xml | 4 +-
4 files changed, 57 insertions(+), 43 deletions(-)
diff --git a/content/index.xml b/content/index.xml
index 4eef33e1f..eb0e6a315 100644
--- a/content/index.xml
+++ b/content/index.xml
@@ -1363,7 +1363,7 @@ Why use a ProtocolCodecFilter? TCP guarantees delivery of all packets in the co
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://mina.apache.org/mina-project/developer-guide.html</guid>
- <description>Building MINA Please read the Developer Infrastructure Information if you haven't yet before you proceed. Preparing the release for the vote Step 0: Building MINA Step 1: Tagging and Deploying step 2 : Processing with a dry run Step 3 : Processing with the real release Step 4 : perform the release Step 5 : closing the staging release on nexus Step 6 : Build the Site Step 7 : Sign the packages Step 8 : Publish Source and Binary Distribution Packages Step 9 : Test [...]
+ <description>Building MINA Please read the Developer Infrastructure Information if you haven't yet before you proceed. Preparing the release for the vote Step 0: Building MINA Step 1: Tagging and Deploying step 2 : Processing with a dry run Step 3 : Processing with the real release Step 4 : perform the release Step 5 : closing the staging release on nexus Step 6 : Build the Site Step 7 : Sign the packages Step 8 : Publish Source and Binary Distribution Packages Step 9 : Test [...]
</item>
<item>
diff --git a/content/mina-project/developer-guide.html b/content/mina-project/developer-guide.html
index b3296381b..14582a399 100644
--- a/content/mina-project/developer-guide.html
+++ b/content/mina-project/developer-guide.html
@@ -146,41 +146,67 @@
<ul>
<li><a href="#step-11--close-the-vote">Step 11 : Close the vote</a></li>
<li><a href="#step-12-deploy-web-reports-javadoc-and-jxr">Step 12: Deploy Web Reports (JavaDoc and JXR)</a></li>
- <li><a href="#step-13-wait-24-hours">Step 13: Wait 24 hours</a></li>
- <li><a href="#step-14-update-the-links-in-web-site">Step 14: Update the Links in Web Site</a></li>
- <li><a href="#step-15-wait-another-24-hours">Step 15: Wait another 24 hours</a></li>
- <li><a href="#step-16-announce-the-new-release">Step 16: Announce the New Release</a></li>
+ <li><a href="#step-13-update-the-links-in-web-site">Step 13: Update the Links in Web Site</a></li>
+ <li><a href="#step-14-wait-an-hour">Step 14: Wait an hour</a></li>
+ <li><a href="#step-15-announce-the-new-release">Step 15: Announce the New Release</a></li>
</ul>
</li>
</ul>
</nav>
<h1 id="checking-out-the-code">Checking out the code</h1>
<div class="note" markdown="1">
- The current <em>MINA</em> code requires to be built with Java 8 for <em>MINA</em> 2.0.X and <em>MINA</em> 2.1.X, and with Java 17 or higher for <em>MINA</em> 2.2.X branch.
+ The current <em>MINA</em> code requires to be built with Java 8 for <em>MINA</em> 2.0.X and <em>MINA</em> 2.1.X, and with Java 17 or higher for <em>MINA</em> 2.2.X branch. See the table below.
</div>
-<p>You need <strong>Git</strong> to check out the source code from our source code repository, and <a href="https://maven.apache.org/">Maven</a> 3.8.5 (pick the latest Maven version) to build the source code (Building with Maven 3.0 will also work). The following example shows how to build the current stable branch (2.0.9).</p>
-<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone https://gitbox.apache.org/repos/asf/mina.git mina
+<p>You need <strong>Git</strong> to check out the source code from our source code repository, and <a href="https://maven.apache.org/">Maven</a> 3.8 (pick the latest Maven version) to build the source code (Building with Maven 3.0 will also work).</p>
+<p>Here are the Java version required for each branch. The Maven <em>pom.xml</em> has been configured to enforce those versions:</p>
+<table>
+<thead>
+<tr>
+<th>Banche</th>
+<th>Build Java required version</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>[2.0.X] Java 1.8</td>
+<td></td>
+</tr>
+<tr>
+<td>[2.1.X] Java 1.8</td>
+<td></td>
+</tr>
+<tr>
+<td>[2.2.X] Java 17 or higher</td>
+<td></td>
+</tr>
+</tbody>
+</table>
+<p>The following example shows how to build the current stable branch (2.2.X).</p>
+<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone -b 2.2.X https://gitbox.apache.org/repos/asf/mina.git mina
$ <span style="color:#a2f">cd</span> mina
$ mvn -Pserial clean install <span style="color:#080;font-style:italic"># Build packages (JARs) for the core API and other</span>
<span style="color:#080;font-style:italic"># extensions and install them to the local Maven repository.</span>
$ mvn -Pserial site <span style="color:#080;font-style:italic"># Generate reports (JavaDoc and JXR)</span>
$ mvn -Pserial package assembly:assembly <span style="color:#080;font-style:italic"># Generate a tarball (package goal needed to fix an assembly plugin bug)</span>
-$ mvn -Pserial eclipse:eclipse <span style="color:#080;font-style:italic"># Generate Eclipse project files if you want</span>
</code></pre></div><p>Eclipse users:
Don’t forget to declare a classpath variable named <strong>M2_REPO</strong>, pointing to <code>~/.m2/repository</code>, otherwise many links to existing jars will be broken.
You can declare new variables in Eclipse in <em>Windows -> Preferences…</em> and selecting <em>Java -> Build Path -> Classpath Variables</em>.</p>
<p>There are also other branches that might interest you:</p>
<ul>
-<li>trunk: Where big changes take place everyday</li>
+<li>2.1.X: For MINA 2.1 version</li>
+<li>2.0.X: For MINA 2.1 version</li>
</ul>
<p>If you want to check out the source code of previous releases, you have to select the branch you want to work on :</p>
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone https://gitbox.apache.org/repos/asf/mina.git mina
$ <span style="color:#a2f">cd</span> mina
$ git checkout <tag>
-</code></pre></div><p>For instance, to work on the on-going 2.2.X version trunk, just do :</p>
+</code></pre></div><p>For instance, to work on the 2.0.X version trunk, just do :</p>
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone https://gitbox.apache.org/repos/asf/mina.git mina
$ <span style="color:#a2f">cd</span> mina
-$ git checkout 2.2.X
+$ git checkout 2.0.X
+</code></pre></div><p>or in two lines only:</p>
+<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone -b 2.0.X https://gitbox.apache.org/repos/asf/mina.git mina
+$ <span style="color:#a2f">cd</span> mina
</code></pre></div><h1 id="coding-convention">Coding Convention</h1>
<p>We follow <a href="https://www.oracle.com/technetwork/java/codeconventions-150003.pdf">Sun’s standard Java coding convention</a> except that we always use spaces instead of tabs. Please download <a href="ImprovedJavaConventions.xml">the Eclipse Java formatter settings file</a> before you make any changes to the code.</p>
<p>This file is also available in the <code>/resources</code> directory.</p>
@@ -263,8 +289,8 @@ java is hashed <span style="color:#666">(</span>/usr/bin/java<span style="color:
<span style="color:#008000;font-weight:bold"></settings></span>
</code></pre></div><h3 id="step-2--processing-with-a-dry-run">step 2 : Processing with a dry run</h3>
-<p>After having checked out the trunk, and built it (see step 0),</p>
-<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone https://gitbox.apache.org/repos/asf/mina.git mina
+<p>After having checked out the branch you want to release (2.2.X, 2.1.X or 2.0.X), and built it (see step 0), here the 2.2.X branch:</p>
+<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ git clone -b 2.2.X https://gitbox.apache.org/repos/asf/mina.git mina
$ <span style="color:#a2f">cd</span> mina
$ mvn clean install -Pserial
</code></pre></div><p>run the following commands :</p>
@@ -344,28 +370,16 @@ $ mvn -Pserial,apache-release release:perform
<p>Now, you have to close the staged project on nexus. In order to do that you <strong>must</strong> have exported your PGP key to a PGP public server <a href="https://www.apache.org/dev/openpgp.html">see</a></p>
<p>Connect to the <a href="https://repository.apache.org">Nexus server</a>, login, and select the MINA staging repository you just created, then click on the ‘close’ button. You are home…</p>
<h3 id="step-6--build-the-site">Step 6 : Build the Site</h3>
-<p>You will need to modify the <strong>pom.xml</strong> file to be able to run the <strong>mvn site</strong> command. Actually, you have to comment the executions part of the maven JXF plugin in the <strong>maven-site-plugin</strong> configuration :</p>
-<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-xml" data-lang="xml"><span style="color:#008000;font-weight:bold"><plugin</span><span style="color:#008000;font-weight:bold">></span>
- <span style="color:#008000;font-weight:bold"><artifactId</span><span style="color:#008000;font-weight:bold">></span>maven-jxr-plugin<span style="color:#008000;font-weight:bold"></artifactId></span>
- <span style="color:#008000;font-weight:bold"><configuration</span><span style="color:#008000;font-weight:bold">></span>
- <span style="color:#008000;font-weight:bold"><aggregate</span><span style="color:#008000;font-weight:bold">></span>true<span style="color:#008000;font-weight:bold"></aggregate></span>
- <span style="color:#008000;font-weight:bold"></configuration></span>
-
- <span style="color:#080;font-style:italic"><!--</span><span style="color:#080;font-style:italic">executions>
-</span><span style="color:#080;font-style:italic"> <execution>
-</span><span style="color:#080;font-style:italic"> <phase>install</phase>
-</span><span style="color:#080;font-style:italic"> <goals>
-</span><span style="color:#080;font-style:italic"> <goal>jxr</goal>
-</span><span style="color:#080;font-style:italic"> <goal>test</span><span style="color:#080;font-style:italic">-</span><span style="color:#080;font-style:italic">jxr</goal>
-</span><span style="color:#080;font-style:italic"> </goals>
-</span><span style="color:#080;font-style:italic"> </execution>
-</span><span style="color:#080;font-style:italic"> </executions </span><span style="color:#080;font-style:italic">--></span>
-<span style="color:#008000;font-weight:bold"></plugin></span>
-</code></pre></div><div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ <span style="color:#a2f">cd</span> target/checkout
+<p>Just run this command:</p>
+<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ <span style="color:#a2f">cd</span> target/checkout
$ mvn -Pserial site
-</code></pre></div><p>This creates the site.</p>
+</code></pre></div><p>This creates the site in target/checkout/target</p>
<h3 id="step-7--sign-the-packages">Step 7 : Sign the packages</h3>
<p>Now, you have to sign the binary packages which are in target/checkout/distribution/target.</p>
+<p>You should have all the build packages here.</p>
+<p>First, remove the already signed files:</p>
+<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">rm *.asc
+</code></pre></div><p>Then start with the signing part.</p>
<div class="note" markdown="1">
Use your PGP key ID (the pub key, 4096R/[XXXXXXX] where [XXXXXXX] is the key ID)
</div>
@@ -386,7 +400,7 @@ uid [ultimate] Emmanuel Lecharny (CODE SIGNING KEY) <elecharny@apac
sub rsa4096 2010-09-13 [E]
...
-</code></pre></div><p>Take the long hexadecimal tart following the ‘pub’ part (ie “4D2DB2916149BAA9D0C92F3731474E5E7C6B7034” for the 4096 bits key)</p>
+</code></pre></div><p>Take the long hexadecimal part following the ‘pub’ part (ie “4D2DB2916149BAA9D0C92F3731474E5E7C6B7034” for the 4096 bits key)</p>
<p>Use a shell script to sign the packages which are stored in target/checkout/distribution/target. You will first have to delete the created .asc files :</p>
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-text" data-lang="text">localhost:target elecharny$ rm *.asc
localhost:target elecharny$ ~/sign.sh
@@ -440,7 +454,9 @@ stty <span style="color:#a2f">echo</span>
<span style="color:#a2f">echo</span> <span style="color:#b44">"</span><span style="color:#b44"> - Skipped '</span><span style="color:#b8860b">$FILE</span><span style="color:#b44">.asc' (file already existing)</span><span style="color:#b44">"</span>
<span style="color:#a2f;font-weight:bold">fi</span>
<span style="color:#a2f;font-weight:bold">done</span>
-</code></pre></div><h3 id="step-8--publish-source-and-binary-distribution-packages">Step 8 : Publish Source and Binary Distribution Packages</h3>
+</code></pre></div><p>Once done, you can remove the signed pom files, they are useless:</p>
+<pre><code>rm *.pom.*
+</code></pre><h3 id="step-8--publish-source-and-binary-distribution-packages">Step 8 : Publish Source and Binary Distribution Packages</h3>
<p>The sources, binaries and their signatures, have to be pushed in a place where they can be downloaded by the other committers, in order to be checked while validating the release. As the ~/people.apache.org server is not anymore available for that purpose, we use the distribution space for that purpose.</p>
<p>If you haven’t checked out this space, do it now :</p>
<div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-bash" data-lang="bash">$ mkdir -p ~/mina/dist/dev/mina
@@ -551,9 +567,7 @@ rclone copy --progress xref-test nightlies:/mina/mina/<version>/xref-test
<pre><code>RewriteRule ^latest-2.1$ https://nightlies.apache.org/mina/mina/<version>/ [QSA,L]
RewriteRule ^latest-2.1/(.*)$ https://nightlies.apache.org/mina/mina/<version>/$1 [QSA,L]
</code></pre><p>Save and commit the file, the web site should be automatically generated and published.</p>
-<h3 id="step-13-wait-24-hours">Step 13: Wait 24 hours</h3>
-<p>We have to wait at least 24 hours for all mirrors to retrieve the uploaded files before making any announcement. I’d recommend you to wait for 48 hours because some mirrors might lag due to various issues.</p>
-<h3 id="step-14-update-the-links-in-web-site">Step 14: Update the Links in Web Site</h3>
+<h3 id="step-13-update-the-links-in-web-site">Step 13: Update the Links in Web Site</h3>
<p>Some pages have to be updated. Assuming the MINA site has been checked out in ~/mina/site (this can be done with the command <em>$ svn co <a href="https://svn.apache.org/viewvc/mina/site/trunk">https://svn.apache.org/viewvc/mina/site/trunk</a> ~/mina/site</em>), here are the pages that need to be changed :</p>
<ul>
<li>/config.toml: update the <code>version_mina_XYZ</code> variable with the new version.</li>
@@ -563,9 +577,9 @@ RewriteRule ^latest-2.1/(.*)$ https://nightlies.apache.org/mina/mina/<version
<li>/source/mina-project/downloads-old.md: Add a line for the latest version which has been replaced by the released one</li>
</ul>
<p>Commit the changes, and publish the web site, you are done !</p>
-<h3 id="step-15-wait-another-24-hours">Step 15: Wait another 24 hours</h3>
+<h3 id="step-14-wait-an-hour">Step 14: Wait an hour</h3>
<p>We need to wait until any changes made in the web site and metadata file(s) go live.</p>
-<h3 id="step-16-announce-the-new-release">Step 16: Announce the New Release</h3>
+<h3 id="step-15-announce-the-new-release">Step 15: Announce the New Release</h3>
<p>An announcement message can be sent to [mailto:announce@apache.org], [mailto:announce@apachenews.org], [mailto:users@mina.apache.org] and [mailto:dev@mina.apache.org]. Please note that announcement messages are rejected unless your from-address ends with <code>@apache.org</code>. Plus, you shouldn’t forget to post a news to the MINA site main page.</p>
<p>Enjoy !</p>
diff --git a/content/mina-project/index.xml b/content/mina-project/index.xml
index b3125168d..8f8f0d3b3 100644
--- a/content/mina-project/index.xml
+++ b/content/mina-project/index.xml
@@ -613,7 +613,7 @@ Why use a ProtocolCodecFilter? TCP guarantees delivery of all packets in the co
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://mina.apache.org/mina-project/developer-guide.html</guid>
- <description>Building MINA Please read the Developer Infrastructure Information if you haven't yet before you proceed. Preparing the release for the vote Step 0: Building MINA Step 1: Tagging and Deploying step 2 : Processing with a dry run Step 3 : Processing with the real release Step 4 : perform the release Step 5 : closing the staging release on nexus Step 6 : Build the Site Step 7 : Sign the packages Step 8 : Publish Source and Binary Distribution Packages Step 9 : Test [...]
+ <description>Building MINA Please read the Developer Infrastructure Information if you haven't yet before you proceed. Preparing the release for the vote Step 0: Building MINA Step 1: Tagging and Deploying step 2 : Processing with a dry run Step 3 : Processing with the real release Step 4 : perform the release Step 5 : closing the staging release on nexus Step 6 : Build the Site Step 7 : Sign the packages Step 8 : Publish Source and Binary Distribution Packages Step 9 : Test [...]
</item>
<item>
diff --git a/content/sitemap.xml b/content/sitemap.xml
index 560e35678..bfe6f9a61 100644
--- a/content/sitemap.xml
+++ b/content/sitemap.xml
@@ -644,7 +644,7 @@
<url>
<loc>https://mina.apache.org/mina-project/developer-guide.html</loc>
- <lastmod>2026-04-25T23:33:24+02:00</lastmod>
+ <lastmod>2026-04-26T09:00:52+02:00</lastmod>
</url>
<url>
@@ -944,7 +944,7 @@
<url>
<loc>https://mina.apache.org/mina-project.html</loc>
- <lastmod>2026-04-25T23:33:24+02:00</lastmod>
+ <lastmod>2026-04-26T09:00:52+02:00</lastmod>
</url>
<url>