This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-net.git
The following commit(s) were added to refs/heads/master by this push: new bfaf5d20 Prepare for the next release candidate bfaf5d20 is described below commit bfaf5d20c1ea902c6f305fdd20349ac9dca60489 Author: Gary D. Gregory <garydgreg...@gmail.com> AuthorDate: Mon Jul 28 11:56:09 2025 +0000 Prepare for the next release candidate --- CONTRIBUTING.md | 4 +- README.md | 2 +- RELEASE-NOTES.txt | 101 +++++++++++++++++++++++++++++++++++++++ src/changes/changes.xml | 2 +- src/site/xdoc/download_net.xml | 34 ++++++------- src/site/xdoc/issue-tracking.xml | 12 +++-- src/site/xdoc/mail-lists.xml | 12 +++-- 7 files changed, 137 insertions(+), 30 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1d83148b..ca21d39a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -61,11 +61,11 @@ Making Changes + Create a _topic branch_ for your isolated work. * Usually you should base your branch from the `master` branch. - * A good topic branch name can be the JIRA bug ID plus a keyword, for example, `NET-123-InputStream`. + * A good topic branch name can be the JIRA bug ID plus a keyword, e.g. `NET-123-InputStream`. * If you have submitted multiple JIRA issues, try to maintain separate branches and pull requests. + Make commits of logical units. * Make sure your commit messages are meaningful and in the proper format. Your commit message should contain the key of the JIRA issue. - * For example, `[NET-123] Close input stream earlier` + * For example, `[NET-123] Close input stream sooner` + Respect the original code style: + Only use spaces for indentation; you can check for unnecessary whitespace with `git diff` before committing. + Create minimal diffs - disable _On Save_ actions like _Reformat Source Code_ or _Organize Imports_. If you feel the source code should be reformatted create a separate PR for this change first. diff --git a/README.md b/README.md index d7741793..146e9b7f 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,7 @@ There are some guidelines which will make applying PRs easier for us: + Create minimal diffs - disable on save actions like reformat source code or organize imports. If you feel the source code should be reformatted create a separate PR for this change. + Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running `mvn`. + Before you pushing a PR, run `mvn` (by itself), this runs the default goal, which contains all build checks. -+ To see the code coverage report, regardless of coverage failures, run `mvn clean site -Dcommons.jacoco.haltOnFailure=false` ++ To see the code coverage report, regardless of coverage failures, run `mvn clean site -Dcommons.jacoco.haltOnFailure=false -Pjacoco` If you plan to contribute on a regular basis, please consider filing a [contributor license agreement](https://www.apache.org/licenses/#clas). You can learn more about contributing via GitHub in our [contribution guidelines](CONTRIBUTING.md). diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 47b62e3c..176e65e7 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,3 +1,95 @@ +Apache Commons Net 3.12.0 Release Notes +--------------------------------------- + +The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.12.0. + +Apache Commons Net library contains a collection of network utilities and protocol implementations. +Supported protocols include Echo, Finger, FTP, NNTP, NTP, POP3(S), SMTP(S), Telnet, and Whois. + + +This is a feature and maintenance release. Java 8 or later is required. + +For complete information on Apache Commons Net, including instructions on how to submit bug reports, +patches, or suggestions for improvement, see the Apache Commons Net website: + +https://commons.apache.org/proper/commons-net/ + +Download page: https://commons.apache.org/proper/commons-net/download_net.cgi + + +New features +------------ + +o Add org.apache.commons.net.nntp.Article#getChild(). Thanks to Gary Gregory. +o Add org.apache.commons.net.nntp.Article#getNext(). Thanks to Gary Gregory. +o Add private SubnetAddressStringIterable and private SubnetAddressStringIterator to implement SubnetInfo.iterableAddressStrings() and SubnetInfo.streamAddressStrings() #298. Thanks to Lixiongyou, Gary Gregory. +o Add SubnetInfo.iterableAddressStrings(). Thanks to Gary Gregory. +o Add SubnetInfo.streamAddressStrings(). Thanks to Gary Gregory. +o Add FTPCmd.OPTS. Thanks to Gary Gregory. +o Add FTP.opts(String, String). Thanks to Gary Gregory. +o Add FTP.opts(String...). Thanks to Gary Gregory. +o Add FTP.setControlEncoding(Charset). Thanks to Gary Gregory. +o Add --OPTS to FTPClientExample. Thanks to Gary Gregory. +o NET-727: Add accessing options map for TFTP request packet and allow using 'blksize' option #331. Thanks to Gary Gregory. +o Add org.apache.commons.net.util.ListenerList.isEmpty(). Thanks to Gary Gregory. +o Add org.apache.commons.net.ftp.FTPClient.getSystemTypeOverride(). Thanks to Gary Gregory. +o Add generics to ListenerList. Thanks to Gary Gregory. +o Add module-info.class in the JAR file instead of an Automatic-Module-Name in MANIFEST.MF. Thanks to Gary Gregory. + +Fixed Bugs +---------- + +o Increase message limit in IMAPReply.TAGGED_RESPONSE from 80 to 500 characters. Thanks to Andreas Lemke, Gary Gregory. +o Increase message limit in IMAPReply.UNTAGGED_RESPONSE from 160 to 500 characters. Thanks to Andreas Lemke, Gary Gregory. +o Remove InvalidKeySpecException from AuthenticatingIMAPClient.auth(AUTH_METHOD, String, String) never throws, it's not thrown. Thanks to Gary Gregory. +o Remove InvalidKeySpecException from AuthenticatingIMAPClient.authenticate(AUTH_METHOD, String, String) never throws, it's not thrown. Thanks to Gary Gregory. +o Remove InvalidKeySpecException from ExtendedPOP3Client.auth(AUTH_METHOD, String, String) never throws, it's not thrown. Thanks to Gary Gregory. +o Remove InvalidKeySpecException from org.apache.commons.net.smtp.AuthenticatingSMTPClient.auth(AUTH_METHOD, String, String) never throws, it's not thrown. Thanks to Gary Gregory. +o Fix SpotBugs RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE in SSLSocketUtils. Thanks to Gary Gregory. +o Fix PMD UnnecessaryFullyQualifiedName. Thanks to Gary Gregory. +o Fix PMD UnusedFormalParameter. Thanks to Gary Gregory. +o Fix PMD AvoidBranchingStatementAsLastInLoop in org.apache.commons.net.bsd.RCommandClient. Thanks to Gary Gregory. +o Fix PMD UselessOverridingMethod in org.apache.commons.net.telnet.TelnetClient. Thanks to Gary Gregory. +o Fix PMD UnnecessaryModifier. Thanks to Gary Gregory. +o Deprecate MLSxEntryParser default constructor in favor of MLSxEntryParser.getInstance(). Thanks to Gary Gregory. +o Deprecate direct access to org.apache.commons.net.nntp.Article.kid and next fields. Thanks to Gary Gregory. +o Fix SpotBugs CT_CONSTRUCTOR_THROW in Base64 by implementing finalize() as a noop to avoid finalizer attacks. Thanks to Gary Gregory. +o Add missing Javadoc to ListenerList. Thanks to Gary Gregory. +o Add missing Javadoc to SubnetUtils. Thanks to Gary Gregory. +o Deprecate PrintCommandListeners.PrintCommandListeners(). Thanks to Gary Gregory. +o Deprecate NtpUtils.NtpUtils(). Thanks to Gary Gregory. +o Deprecate FTPFileFilters.FTPFileFilters(). Thanks to Gary Gregory. +o Avoid multiple possible NullPointerException in SocketClient.verifyRemote(Socket). Thanks to Gary Gregory. +o PrintCommandListener.protocolReplyReceived(ProtocolCommandEvent) doesn't always use an end-of-line. Thanks to Gary Gregory. +o FTPClientExample uses the wrong FTP system type to parse file lines. Thanks to Gary Gregory. +o Base64 does not call super.finalize(). Thanks to Gary Gregory. +o TFTPServer does not call super.finalize(). Thanks to Gary Gregory. +o KeyManagerUtils.loadStore(String, File, String) shouldn't ignore an IOException closing a keystore stream; use try-with-resources. Thanks to Gary Gregory. +o NNTPClient.readNewsgroupListing() can use an ArrayList instead of a Vector. Thanks to Gary Gregory. +o Deprecate org.apache.commons.net.util.Charsets. Thanks to Gary Gregory. +o Performance: NTFTPEntryParser.parseFTPEntry(String) doesn't need to parse timestamps if there is no name. Thanks to Gary Gregory. +o Improve error handling in org.apache.commons.net.ftp.parser.DefaultFTPFileEntryParserFactory.createFileEntryParser(String, FTPClientConfig). Thanks to Gary Gregory. +o Fail-fast in org.apache.commons.net.PrintCommandListener.PrintCommandListener(PrintWriter, boolean, char, boolean) if the PrintWriter is null. Thanks to Gary Gregory. +o Avoid NullPointerException in org.apache.commons.net.PrintCommandListener.org.apache.commons.net.PrintCommandListener.protocolCommandSent(ProtocolCommandEvent). Thanks to Gary Gregory. +o Avoid NullPointerException in org.apache.commons.net.PrintCommandListener.org.apache.commons.net.PrintCommandListener.protocolReplyReceived(ProtocolCommandEvent). Thanks to Gary Gregory. + +Changes +------- + +o Bump org.apache.commons:commons-parent from 70 to 85 #261, #278, #280, #285, #298, #293, #300, #345. Thanks to Gary Gregory, Dependabot. +o Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.18.0 #268, #273, #281, #354. Thanks to Gary Gregory, Dependabot. +o Bump commons-io:commons-io from 2.16.1 to 2.20.0 #286, #308. Thanks to Gary Gregory, Dependabot. +o Bump org.apache.commons:commons-collections4 from 4.5.0-M2 to 4.5.0 #314. Thanks to Gary Gregory, Dependabot. +o Bump org.apache.ftpserver:ftpserver-core from 1.2.0 to 1.2.1. Thanks to Gary Gregory. + + +Historical list of changes: https://commons.apache.org/proper/commons-net/changes.html + +Enjoy! +-Apache Commons Net team + +----------------------------------------------------------------------------- + Apache Commons Net 3.11.1 Release Notes --------------------------------------- @@ -30,7 +122,9 @@ Enjoy! -Apache Commons Net team ----------------------------------------------------------------------------- + Apache Commons Net 3.11.0 Release Notes +--------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.11.0. @@ -83,7 +177,9 @@ Enjoy! -Apache Commons Net team ----------------------------------------------------------------------------- + Apache Commons Net 3.10.0 Release Notes +--------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.10.0. @@ -157,6 +253,7 @@ Enjoy! ----------------------------------------------------------------------------- Apache Commons Net 3.9.0 Release Notes +-------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.9.0. @@ -226,6 +323,7 @@ Enjoy! ----------------------------------------------------------------------------- Apache Commons Net 3.8.0 Release Notes +-------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.8.0. @@ -274,6 +372,7 @@ Enjoy! ----------------------------------------------------------------------------- Apache Commons Net 3.7.2 Release Notes +-------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.7.2. @@ -313,6 +412,7 @@ Enjoy! ----------------------------------------------------------------------------- Apache Commons Net 3.7.1 Release Notes +-------------------------------------- The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.7.1 @@ -345,6 +445,7 @@ Enjoy! ----------------------------------------------------------------------------- Apache Commons Net 3.7 Release Notes +------------------------------------ The Apache Commons Net team is pleased to announce the release of Apache Commons Net 3.7 diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 7d05db1d..f328634c 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -61,7 +61,7 @@ The <action> type attribute can be add,update,fix,remove. Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix. --> <body> - <release version="3.12.0" date="YYYY-MM-DD" description="This is a feature and maintenance release. Java 8 or later is required."> + <release version="3.12.0" date="2025-07-28" description="This is a feature and maintenance release. Java 8 or later is required."> <!-- FIX --> <action type="fix" dev="ggregory" due-to="Andreas Lemke, Gary Gregory">Increase message limit in IMAPReply.TAGGED_RESPONSE from 80 to 500 characters.</action> <action type="fix" dev="ggregory" due-to="Andreas Lemke, Gary Gregory">Increase message limit in IMAPReply.UNTAGGED_RESPONSE from 160 to 500 characters.</action> diff --git a/src/site/xdoc/download_net.xml b/src/site/xdoc/download_net.xml index 51f58379..a10823f8 100644 --- a/src/site/xdoc/download_net.xml +++ b/src/site/xdoc/download_net.xml @@ -56,10 +56,12 @@ limitations under the License. | | +======================================================================+ --> -<document> +<document xmlns="http://maven.apache.org/XDOC/2.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd"> <properties> <title>Download Apache Commons Net</title> - <author email="d...@commons.apache.org">Apache Commons Documentation Team</author> + <author email="d...@commons.apache.org">Apache Commons Team</author> </properties> <body> <section name="Download Apache Commons Net"> @@ -79,7 +81,7 @@ limitations under the License. mirrors (at the end of the mirrors list) that should be available. <br></br> - [if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0"></img></a>[end] + [if-any logo]<a href="[link]"><img align="right" src="[logo]" border="0" alt="Logo"></img></a>[end] </p> <form action="[location]" method="get" id="SelectMirror"> @@ -113,32 +115,32 @@ limitations under the License. </p> </subsection> </section> - <section name="Apache Commons Net 3.11.1 (Requires Java 1.8 or later)"> + <section name="Apache Commons Net 3.12.0 (Requires Java 1.8 or later)"> <subsection name="Binaries"> <table> <tr> - <td><a href="[preferred]/commons/net/binaries/commons-net-3.11.1-bin.tar.gz">commons-net-3.11.1-bin.tar.gz</a></td> - <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.11.1-bin.tar.gz.sha512">sha512</a></td> - <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.11.1-bin.tar.gz.asc">pgp</a></td> + <td><a href="[preferred]/commons/net/binaries/commons-net-3.12.0-bin.tar.gz">commons-net-3.12.0-bin.tar.gz</a></td> + <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.12.0-bin.tar.gz.sha512">sha512</a></td> + <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.12.0-bin.tar.gz.asc">pgp</a></td> </tr> <tr> - <td><a href="[preferred]/commons/net/binaries/commons-net-3.11.1-bin.zip">commons-net-3.11.1-bin.zip</a></td> - <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.11.1-bin.zip.sha512">sha512</a></td> - <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.11.1-bin.zip.asc">pgp</a></td> + <td><a href="[preferred]/commons/net/binaries/commons-net-3.12.0-bin.zip">commons-net-3.12.0-bin.zip</a></td> + <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.12.0-bin.zip.sha512">sha512</a></td> + <td><a href="https://downloads.apache.org/commons/net/binaries/commons-net-3.12.0-bin.zip.asc">pgp</a></td> </tr> </table> </subsection> <subsection name="Source"> <table> <tr> - <td><a href="[preferred]/commons/net/source/commons-net-3.11.1-src.tar.gz">commons-net-3.11.1-src.tar.gz</a></td> - <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.11.1-src.tar.gz.sha512">sha512</a></td> - <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.11.1-src.tar.gz.asc">pgp</a></td> + <td><a href="[preferred]/commons/net/source/commons-net-3.12.0-src.tar.gz">commons-net-3.12.0-src.tar.gz</a></td> + <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.12.0-src.tar.gz.sha512">sha512</a></td> + <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.12.0-src.tar.gz.asc">pgp</a></td> </tr> <tr> - <td><a href="[preferred]/commons/net/source/commons-net-3.11.1-src.zip">commons-net-3.11.1-src.zip</a></td> - <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.11.1-src.zip.sha512">sha512</a></td> - <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.11.1-src.zip.asc">pgp</a></td> + <td><a href="[preferred]/commons/net/source/commons-net-3.12.0-src.zip">commons-net-3.12.0-src.zip</a></td> + <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.12.0-src.zip.sha512">sha512</a></td> + <td><a href="https://downloads.apache.org/commons/net/source/commons-net-3.12.0-src.zip.asc">pgp</a></td> </tr> </table> </subsection> diff --git a/src/site/xdoc/issue-tracking.xml b/src/site/xdoc/issue-tracking.xml index cd9aba3b..8ca80047 100644 --- a/src/site/xdoc/issue-tracking.xml +++ b/src/site/xdoc/issue-tracking.xml @@ -41,10 +41,12 @@ limitations under the License. | | +======================================================================+ --> -<document> +<document xmlns="http://maven.apache.org/XDOC/2.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd"> <properties> <title>Apache Commons Net Issue tracking</title> - <author email="d...@commons.apache.org">Apache Commons Documentation Team</author> + <author email="d...@commons.apache.org">Apache Commons Team</author> </properties> <body> @@ -64,6 +66,7 @@ limitations under the License. <p> If you would like to report a bug, or raise an enhancement request with Apache Commons Net please do the following: + </p> <ol> <li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310487&sorter/field=issuekey&sorter/order=DESC&status=1&status=3&status=4">Search existing open bugs</a>. If you find your issue listed then please add a comment with your details.</li> @@ -73,16 +76,15 @@ limitations under the License. <li>Submit either a <a href="https://issues.apache.org/jira/secure/CreateIssueDetails!init.jspa?pid=12310487&issuetype=1&priority=4&assignee=-1">bug report</a> or <a href="https://issues.apache.org/jira/secure/CreateIssueDetails!init.jspa?pid=12310487&issuetype=4&priority=4&assignee=-1">enhancement request</a>.</li> </ol> - </p> <p> Please also remember these points: + </p> <ul> <li>the more information you provide, the better we can help you</li> <li>test cases are vital, particularly for any proposed enhancements</li> <li>the developers of Apache Commons Net are all unpaid volunteers</li> </ul> - </p> <p> For more information on creating patches see the @@ -91,12 +93,12 @@ limitations under the License. <p> You may also find these links useful: + </p> <ul> <li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310487&sorter/field=issuekey&sorter/order=DESC&status=1&status=3&status=4">All Open Apache Commons Net bugs</a></li> <li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310487&sorter/field=issuekey&sorter/order=DESC&status=5&status=6">All Resolved Apache Commons Net bugs</a></li> <li><a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&pid=12310487&sorter/field=issuekey&sorter/order=DESC">All Apache Commons Net bugs</a></li> </ul> - </p> </section> </body> </document> diff --git a/src/site/xdoc/mail-lists.xml b/src/site/xdoc/mail-lists.xml index 74ac7d50..18c2c767 100644 --- a/src/site/xdoc/mail-lists.xml +++ b/src/site/xdoc/mail-lists.xml @@ -39,10 +39,12 @@ limitations under the License. | | +======================================================================+ --> -<document> +<document xmlns="http://maven.apache.org/XDOC/2.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd"> <properties> <title>Apache Commons Net Mailing Lists</title> - <author email="d...@commons.apache.org">Apache Commons Documentation Team</author> + <author email="d...@commons.apache.org">Apache Commons Team</author> </properties> <body> @@ -53,10 +55,10 @@ limitations under the License. To make it easier for people to only read messages related to components they are interested in, the convention in Commons is to prefix the subject line of messages with the component's name, for example: - <ul> - <li>[net] Problem with the ...</li> - </ul> </p> + <ul> + <li>[net] Problem with the ...</li> + </ul> <p> Questions related to the usage of Apache Commons Net should be posted to the <a href="https://lists.apache.org/list.html?u...@commons.apache.org">User List</a>.