From 05714adcf957e7a7644a71cd82de30145288ff38 Mon Sep 17 00:00:00 2001 From: Gary Gregory Date: Sun, 4 Feb 2024 10:09:27 -0500 Subject: [PATCH] Prepare release candidate --- CONTRIBUTING.md | 5 +- README.md | 83 ++++++++------------------------ RELEASE-NOTES.txt | 51 ++++++++++++++++++++ pom.xml | 4 +- src/changes/release-notes.vm | 5 +- src/site/xdoc/download_codec.xml | 26 +++++----- src/site/xdoc/mail-lists.xml | 38 +++++++-------- 7 files changed, 110 insertions(+), 102 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 11017958ac..62e99f8d28 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -49,13 +49,13 @@ Getting Started --------------- + Make sure you have a [JIRA account](https://issues.apache.org/jira/). -+ Make sure you have a [GitHub account](https://github.com/signup/free). ++ Make sure you have a [GitHub account](https://github.com/signup/free). This is not essential, but makes providing patches much easier. + If you're planning to implement a new feature it makes sense to discuss your changes on the [dev list](https://commons.apache.org/mail-lists.html) first. This way you can make sure you're not wasting your time on something that isn't considered to be in Apache Commons Codec's scope. + Submit a [Jira Ticket][jira] for your issue, assuming one does not already exist. + Clearly describe the issue including steps to reproduce when it is a bug. + Make sure you fill in the earliest version that you know has the issue. + Find the corresponding [repository on GitHub](https://github.com/apache/?query=commons-), -[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. +[fork](https://help.github.com/articles/fork-a-repo/) and check out your forked repository. If you don't have a GitHub account, you can still clone the Commons repository. Making Changes -------------- @@ -109,7 +109,6 @@ Additional Resources + [General GitHub documentation](https://help.github.com/) + [GitHub pull request documentation](https://help.github.com/articles/creating-a-pull-request/) + [Apache Commons Twitter Account](https://twitter.com/ApacheCommons) -+ `#apache-commons` IRC channel on `irc.freenode.net` [cla]:https://www.apache.org/licenses/#clas [jira]:https://issues.apache.org/jira/browse/CODEC diff --git a/README.md b/README.md index 8e2a705d49..66cda56ccc 100644 --- a/README.md +++ b/README.md @@ -46,12 +46,12 @@ Apache Commons Codec [![Java CI](https://github.com/apache/commons-codec/actions/workflows/maven.yml/badge.svg)](https://github.com/apache/commons-codec/actions/workflows/maven.yml) [![Coverage Status](https://codecov.io/gh/apache/commons-codec/branch/master/graph/badge.svg)](https://app.codecov.io/gh/apache/commons-codec) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/commons-codec/commons-codec/badge.svg?gav=true)](https://maven-badges.herokuapp.com/maven-central/commons-codec/commons-codec/?gav=true) -[![Javadocs](https://javadoc.io/badge/commons-codec/commons-codec/1.16.0.svg)](https://javadoc.io/doc/commons-codec/commons-codec/1.16.0) +[![Javadocs](https://javadoc.io/badge/commons-codec/commons-codec/1.16.1.svg)](https://javadoc.io/doc/commons-codec/commons-codec/1.16.1) [![CodeQL](https://github.com/apache/commons-codec/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/apache/commons-codec/actions/workflows/codeql-analysis.yml) [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/apache/commons-codec/badge)](https://api.securityscorecards.dev/projects/github.com/apache/commons-codec) -The Apache Commons Codec package contains simple encoder and decoders for - various formats such as Base64 and Hexadecimal. In addition to these +The Apache Commons Codec component contains encoder and decoders for + various formats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these widely used encoders and decoders, the codec package also maintains a collection of phonetic encoding utilities. @@ -62,8 +62,8 @@ More information can be found on the [Apache Commons Codec homepage](https://com The [Javadoc](https://commons.apache.org/proper/commons-codec/apidocs) can be browsed. Questions related to the usage of Apache Commons Codec should be posted to the [user mailing list](https://commons.apache.org/mail-lists.html). -Where can I get the latest release? ------------------------------------ +Getting the latest release +-------------------------- You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-codec/download_codec.cgi). Alternatively, you can pull it from the central Maven repositories: @@ -72,17 +72,25 @@ Alternatively, you can pull it from the central Maven repositories: commons-codec commons-codec - 1.16.0 + 1.16.1 ``` +Building +-------- + +Building requires a Java JDK and [Apache Maven](https://maven.apache.org/). +The required Java version is found in the `pom.xml` as the `maven.compiler.source` property. + +From a command shell, run `mvn` without arguments to invoke the default Maven goal to run all tests and checks. + Contributing ------------ We accept Pull Requests via GitHub. The [developer mailing list](https://commons.apache.org/mail-lists.html) is the main channel of communication for contributors. There are some guidelines which will make applying PRs easier for us: + No tabs! Please use spaces for indentation. -+ Respect the code style. ++ Respect the existing code style for each file. + 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```. @@ -91,13 +99,13 @@ You can learn more about contributing via GitHub in our [contribution guidelines License ------- -This code is under the [Apache License v2](https://www.apache.org/licenses/LICENSE-2.0). +This code is licensed under the [Apache License v2](https://www.apache.org/licenses/LICENSE-2.0). See the `NOTICE.txt` file for required notices and attributions. -Donations ---------- -You like Apache Commons Codec? Then [donate back to the ASF](https://www.apache.org/foundation/contributing.html) to support the development. +Donating +-------- +You like Apache Commons Codec? Then [donate back to the ASF](https://www.apache.org/foundation/contributing.html) to support development. Additional Resources -------------------- @@ -106,59 +114,8 @@ Additional Resources + [Apache Issue Tracker (JIRA)](https://issues.apache.org/jira/browse/CODEC) + [Apache Commons Slack Channel](https://the-asf.slack.com/archives/C60NVB8AD) + [Apache Commons Twitter Account](https://twitter.com/ApacheCommons) -+ `#apache-commons` IRC channel on `irc.freenode.org` Apache Commons Components ------------------------- -| Component | GitHub Repository | Apache Homepage | -| --------- | ----------------- | ----------------| -| Apache Commons BCEL | [commons-bcel](https://github.com/apache/commons-bcel) | [commons-bcel](https://commons.apache.org/proper/commons-bcel) | -| Apache Commons Beanutils | [commons-beanutils](https://github.com/apache/commons-beanutils) | [commons-beanutils](https://commons.apache.org/proper/commons-beanutils) | -| Apache Commons BSF | [commons-bsf](https://github.com/apache/commons-bsf) | [commons-bsf](https://commons.apache.org/proper/commons-bsf) | -| Apache Commons Build-plugin | [commons-build-plugin](https://github.com/apache/commons-build-plugin) | [commons-build-plugin](https://commons.apache.org/proper/commons-build-plugin) | -| Apache Commons Chain | [commons-chain](https://github.com/apache/commons-chain) | [commons-chain](https://commons.apache.org/proper/commons-chain) | -| Apache Commons CLI | [commons-cli](https://github.com/apache/commons-cli) | [commons-cli](https://commons.apache.org/proper/commons-cli) | -| Apache Commons Codec | [commons-codec](https://github.com/apache/commons-codec) | [commons-codec](https://commons.apache.org/proper/commons-codec) | -| Apache Commons Collections | [commons-collections](https://github.com/apache/commons-collections) | [commons-collections](https://commons.apache.org/proper/commons-collections) | -| Apache Commons Compress | [commons-compress](https://github.com/apache/commons-compress) | [commons-compress](https://commons.apache.org/proper/commons-compress) | -| Apache Commons Configuration | [commons-configuration](https://github.com/apache/commons-configuration) | [commons-configuration](https://commons.apache.org/proper/commons-configuration) | -| Apache Commons Crypto | [commons-crypto](https://github.com/apache/commons-crypto) | [commons-crypto](https://commons.apache.org/proper/commons-crypto) | -| Apache Commons CSV | [commons-csv](https://github.com/apache/commons-csv) | [commons-csv](https://commons.apache.org/proper/commons-csv) | -| Apache Commons Daemon | [commons-daemon](https://github.com/apache/commons-daemon) | [commons-daemon](https://commons.apache.org/proper/commons-daemon) | -| Apache Commons DBCP | [commons-dbcp](https://github.com/apache/commons-dbcp) | [commons-dbcp](https://commons.apache.org/proper/commons-dbcp) | -| Apache Commons Dbutils | [commons-dbutils](https://github.com/apache/commons-dbutils) | [commons-dbutils](https://commons.apache.org/proper/commons-dbutils) | -| Apache Commons Digester | [commons-digester](https://github.com/apache/commons-digester) | [commons-digester](https://commons.apache.org/proper/commons-digester) | -| Apache Commons Email | [commons-email](https://github.com/apache/commons-email) | [commons-email](https://commons.apache.org/proper/commons-email) | -| Apache Commons Exec | [commons-exec](https://github.com/apache/commons-exec) | [commons-exec](https://commons.apache.org/proper/commons-exec) | -| Apache Commons Fileupload | [commons-fileupload](https://github.com/apache/commons-fileupload) | [commons-fileupload](https://commons.apache.org/proper/commons-fileupload) | -| Apache Commons Functor | [commons-functor](https://github.com/apache/commons-functor) | [commons-functor](https://commons.apache.org/proper/commons-functor) | -| Apache Commons Geometry | [commons-geometry](https://github.com/apache/commons-geometry) | [commons-geometry](https://commons.apache.org/proper/commons-geometry) | -| Apache Commons Graph | [commons-graph](https://github.com/apache/commons-graph) | [commons-graph](https://commons.apache.org/proper/commons-graph) | -| Apache Commons Imaging | [commons-imaging](https://github.com/apache/commons-imaging) | [commons-imaging](https://commons.apache.org/proper/commons-imaging) | -| Apache Commons IO | [commons-io](https://github.com/apache/commons-io) | [commons-io](https://commons.apache.org/proper/commons-io) | -| Apache Commons JCI | [commons-jci](https://github.com/apache/commons-jci) | [commons-jci](https://commons.apache.org/proper/commons-jci) | -| Apache Commons JCS | [commons-jcs](https://github.com/apache/commons-jcs) | [commons-jcs](https://commons.apache.org/proper/commons-jcs) | -| Apache Commons Jelly | [commons-jelly](https://github.com/apache/commons-jelly) | [commons-jelly](https://commons.apache.org/proper/commons-jelly) | -| Apache Commons Jexl | [commons-jexl](https://github.com/apache/commons-jexl) | [commons-jexl](https://commons.apache.org/proper/commons-jexl) | -| Apache Commons Jxpath | [commons-jxpath](https://github.com/apache/commons-jxpath) | [commons-jxpath](https://commons.apache.org/proper/commons-jxpath) | -| Apache Commons Lang | [commons-lang](https://github.com/apache/commons-lang) | [commons-lang](https://commons.apache.org/proper/commons-lang) | -| Apache Commons Logging | [commons-logging](https://github.com/apache/commons-logging) | [commons-logging](https://commons.apache.org/proper/commons-logging) | -| Apache Commons Math | [commons-math](https://github.com/apache/commons-math) | [commons-math](https://commons.apache.org/proper/commons-math) | -| Apache Commons Net | [commons-net](https://github.com/apache/commons-net) | [commons-net](https://commons.apache.org/proper/commons-net) | -| Apache Commons Numbers | [commons-numbers](https://github.com/apache/commons-numbers) | [commons-numbers](https://commons.apache.org/proper/commons-numbers) | -| Apache Commons Parent | [commons-parent](https://github.com/apache/commons-parent) | [commons-parent](https://commons.apache.org/proper/commons-parent) | -| Apache Commons Pool | [commons-pool](https://github.com/apache/commons-pool) | [commons-pool](https://commons.apache.org/proper/commons-pool) | -| Apache Commons Proxy | [commons-proxy](https://github.com/apache/commons-proxy) | [commons-proxy](https://commons.apache.org/proper/commons-proxy) | -| Apache Commons RDF | [commons-rdf](https://github.com/apache/commons-rdf) | [commons-rdf](https://commons.apache.org/proper/commons-rdf) | -| Apache Commons Release-plugin | [commons-release-plugin](https://github.com/apache/commons-release-plugin) | [commons-release-plugin](https://commons.apache.org/proper/commons-release-plugin) | -| Apache Commons Rng | [commons-rng](https://github.com/apache/commons-rng) | [commons-rng](https://commons.apache.org/proper/commons-rng) | -| Apache Commons Scxml | [commons-scxml](https://github.com/apache/commons-scxml) | [commons-scxml](https://commons.apache.org/proper/commons-scxml) | -| Apache Commons Signing | [commons-signing](https://github.com/apache/commons-signing) | [commons-signing](https://commons.apache.org/proper/commons-signing) | -| Apache Commons Skin | [commons-skin](https://github.com/apache/commons-skin) | [commons-skin](https://commons.apache.org/proper/commons-skin) | -| Apache Commons Statistics | [commons-statistics](https://github.com/apache/commons-statistics) | [commons-statistics](https://commons.apache.org/proper/commons-statistics) | -| Apache Commons Testing | [commons-testing](https://github.com/apache/commons-testing) | [commons-testing](https://commons.apache.org/proper/commons-testing) | -| Apache Commons Text | [commons-text](https://github.com/apache/commons-text) | [commons-text](https://commons.apache.org/proper/commons-text) | -| Apache Commons Validator | [commons-validator](https://github.com/apache/commons-validator) | [commons-validator](https://commons.apache.org/proper/commons-validator) | -| Apache Commons VFS | [commons-vfs](https://github.com/apache/commons-vfs) | [commons-vfs](https://commons.apache.org/proper/commons-vfs) | -| Apache Commons Weaver | [commons-weaver](https://github.com/apache/commons-weaver) | [commons-weaver](https://commons.apache.org/proper/commons-weaver) | +Please see the [list of components](https://commons.apache.org/components.html) diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 07eca9c708..d9411e370c 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,3 +1,54 @@ +Apache Commons Codec 1.16.1-SNAPSHOT +RELEASE NOTES + +The Apache Commons Codec component contains encoder and decoders for +various formats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these +widely used encoders and decoders, the codec package also maintains a +collection of phonetic encoding utilities. + +Feature and fix release. Requires a minimum of Java 8. + +Changes in this version include: + +New features: +o Add Maven property project.build.outputTimestamp for build reproducibility. Thanks to Gary Gregory. + +Fixed Bugs: +o CODEC-295: Test clean ups. Thanks to Gary Gregory. +o [StepSecurity] ci: Harden GitHub Actions #187. Thanks to step-security-bot, Gary Gregory. +o CODEC-295: Correct error in Base64 Javadoc #188. Thanks to Evan Saulpaugh. +o CODEC-295: Add minimum Java version in changes.xml #186. Thanks to Olivier Jaquemet, Gary Gregory. +o CODEC-310: Documentation update for the org.apache.commons.codec.digest.* package #208. Thanks to Yakov Shafranovich. +o Precompile regular expression in UnixCrypt.crypt(byte[], String). Thanks to Gary Gregory. +o CODEC-315: Fix possible IndexOutOfBoundException in PhoneticEngine.encode method #223. Thanks to Arthur Chan, Gary Gregory. +o CODEC-313: Fix possible ArrayIndexOutOfBoundsException in QuotedPrintableCodec.encodeQuotedPrintable() method #221. Thanks to Arthur Chan, Gary Gregory. +o CODEC-312: Fix possible StringIndexOutOfBoundException in MatchRatingApproachEncoder.encode() method #220. Thanks to Arthur Chan, Gary Gregory. +o CODEC-311: Fix possible ArrayIndexOutOfBoundException in RefinedSoundex.getMappingCode() #219. Thanks to Arthur Chan, Gary Gregory. +o CODEC-314: Fix possible IndexOutOfBoundsException in PercentCodec.insertAlwaysEncodeChars() method #222. Thanks to Arthur Chan, Gary Gregory. +o Deprecate UnixCrypt 0-argument constructor. Thanks to Gary Gregory. +o Deprecate Md5Crypt 0-argument constructor. Thanks to Gary Gregory. +o Deprecate Crypt 0-argument constructor. Thanks to Gary Gregory. +o Deprecate StringUtils 0-argument constructor. Thanks to Gary Gregory. +o Deprecate Resources 0-argument constructor. Thanks to Gary Gregory. +o Deprecate Charsets 0-argument constructor. Thanks to Gary Gregory. +o Deprecate CharEncoding 0-argument constructor. Thanks to Gary Gregory. +o Add missing version for animal-sniffer-maven-plugin. Thanks to Gary Gregory. + +Changes: +o Bump commons-parent from 58 to 66. Thanks to Dependabot, Gary Gregory. +o Bump commons-lang3 from 3.12.0 to 3.14.0. Thanks to Gary Gregory. +o Bump commons-io from 2.13.0 to 2.15.1. Thanks to Gary Gregory. + + +For complete information on Apache Commons Codec, including instructions on how to submit bug reports, +patches, or suggestions for improvement, see the Apache Commons Codec website: + +https://commons.apache.org/proper/commons-codec/ + +Download page: https://commons.apache.org/proper/commons-codec/download_codec.cgi + +--------------------------------------------------------------------------------- + Apache Commons Codec 1.16.0 The Apache Commons Codec package contains simple encoder and decoders for diff --git a/pom.xml b/pom.xml index 104adcc9e7..db9886c05b 100644 --- a/pom.xml +++ b/pom.xml @@ -32,8 +32,8 @@ limitations under the License. Apache Commons Codec 2002 - The Apache Commons Codec package contains simple encoder and decoders for - various formats such as Base64 and Hexadecimal. In addition to these + The Apache Commons Codec component contains encoder and decoders for + various formats such as Base16, Base32, Base64, digest, and Hexadecimal. In addition to these widely used encoders and decoders, the codec package also maintains a collection of phonetic encoding utilities. diff --git a/src/changes/release-notes.vm b/src/changes/release-notes.vm index caa0c19d0b..cce5c5a738 100644 --- a/src/changes/release-notes.vm +++ b/src/changes/release-notes.vm @@ -14,7 +14,8 @@ ## KIND, either express or implied. See the License for the ## specific language governing permissions and limitations ## under the License. - ${project.name} ${version} RELEASE NOTES +${project.name} ${version} +RELEASE NOTES $introduction.replaceAll("(? -
+
- - - + + + - - - + + +
commons-codec-1.16.0-bin.tar.gzsha512pgpcommons-codec-1.16.1-bin.tar.gzsha512pgp
commons-codec-1.16.0-bin.zipsha512pgpcommons-codec-1.16.1-bin.zipsha512pgp
- - - + + + - - - + + +
commons-codec-1.16.0-src.tar.gzsha512pgpcommons-codec-1.16.1-src.tar.gzsha512pgp
commons-codec-1.16.0-src.zipsha512pgpcommons-codec-1.16.1-src.zipsha512pgp
diff --git a/src/site/xdoc/mail-lists.xml b/src/site/xdoc/mail-lists.xml index 7f8aa3bb83..32fb94f214 100644 --- a/src/site/xdoc/mail-lists.xml +++ b/src/site/xdoc/mail-lists.xml @@ -59,9 +59,9 @@ limitations under the License.

Questions related to the usage of Apache Commons Codec should be posted to the - User List. + User List.
- The Developer List + The Developer List is for questions and discussion related to the development of Apache Commons Codec.
Please do not cross-post; developers are also subscribed to the user list. @@ -70,8 +70,10 @@ limitations under the License. to subscribe.

- Note: please don't send patches or attachments to any of the mailing lists. + Note: please don't send patches or attachments to any of the mailing lists; + most of the lists are set up to drop attachments. Patches are best handled via the Issue Tracking system. + If you have a GitHub account, most components also accept PRs (pull requests). Otherwise, please upload the file to a public server and include the URL in the mail.

@@ -105,12 +107,11 @@ limitations under the License. Subscribe Unsubscribe Post - mail-archives.apache.org
+ lists.apache.org - markmail.org
- www.mail-archive.com
- news.gmane.org + + www.mail-archive.com @@ -125,12 +126,11 @@ limitations under the License. Subscribe Unsubscribe Post - mail-archives.apache.org
+ lists.apache.org - markmail.org
- www.mail-archive.com
- news.gmane.org + + www.mail-archive.com @@ -145,10 +145,10 @@ limitations under the License. Subscribe Unsubscribe read only - mail-archives.apache.org
+ lists.apache.org - markmail.org
+ www.mail-archive.com @@ -164,10 +164,10 @@ limitations under the License. Subscribe Unsubscribe read only - mail-archives.apache.org
+ lists.apache.org - markmail.org
+ www.mail-archive.com @@ -199,13 +199,11 @@ limitations under the License. Subscribe Unsubscribe read only - mail-archives.apache.org
+ lists.apache.org - markmail.org
- old.nabble.com
- www.mail-archive.com
- news.gmane.org + + www.mail-archive.com