Skip to content

Commit b993f6a

Browse files
committed
Prepare release candidate
1 parent 1cd45ae commit b993f6a

5 files changed

Lines changed: 129 additions & 93 deletions

File tree

README.md

Lines changed: 18 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Apache Commons IO
4646
[![GitHub Actions Status](https://github.com/apache/commons-io/workflows/Java%20CI/badge.svg)](https://github.com/apache/commons-io/actions)
4747
[![Coverage Status](https://codecov.io/gh/apache/commons-io/branch/master/graph/badge.svg)](https://app.codecov.io/gh/apache/commons-io)
4848
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/commons-io/commons-io/badge.svg?gav=true)](https://maven-badges.herokuapp.com/maven-central/commons-io/commons-io/?gav=true)
49-
[![Javadocs](https://javadoc.io/badge/commons-io/commons-io/2.14.0.svg)](https://javadoc.io/doc/commons-io/commons-io/2.14.0)
49+
[![Javadocs](https://javadoc.io/badge/commons-io/commons-io/2.15.0.svg)](https://javadoc.io/doc/commons-io/commons-io/2.15.0)
5050
[![CodeQL](https://github.com/apache/commons-io/workflows/CodeQL/badge.svg)](https://github.com/apache/commons-io/actions/workflows/codeql-analysis.yml?query=workflow%3ACodeQL)
5151
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/apache/commons-io/badge)](https://api.securityscorecards.dev/projects/github.com/apache/commons-io)
5252

@@ -60,8 +60,8 @@ More information can be found on the [Apache Commons IO homepage](https://common
6060
The [Javadoc](https://commons.apache.org/proper/commons-io/apidocs) can be browsed.
6161
Questions related to the usage of Apache Commons IO should be posted to the [user mailing list][ml].
6262

63-
Where can I get the latest release?
64-
-----------------------------------
63+
Getting the latest release
64+
--------------------------
6565
You can download source and binaries from our [download page](https://commons.apache.org/proper/commons-io/download_io.cgi).
6666

6767
Alternatively, you can pull it from the central Maven repositories:
@@ -70,17 +70,25 @@ Alternatively, you can pull it from the central Maven repositories:
7070
<dependency>
7171
<groupId>commons-io</groupId>
7272
<artifactId>commons-io</artifactId>
73-
<version>2.14.0</version>
73+
<version>2.15.0</version>
7474
</dependency>
7575
```
7676

77+
Building
78+
--------
79+
80+
Building requires a Java JDK and [Apache Maven](https://maven.apache.org/).
81+
The required Java version is found in the `pom.xml` as the `maven.compiler.source` property.
82+
83+
From a command shell, run `mvn` without arguments to invoke the default Maven goal to run all tests and checks.
84+
7785
Contributing
7886
------------
7987

8088
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.
8189
There are some guidelines which will make applying PRs easier for us:
8290
+ No tabs! Please use spaces for indentation.
83-
+ Respect the code style.
91+
+ Respect the existing code style for each file.
8492
+ 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.
8593
+ Provide JUnit tests for your changes and make sure your changes don't break any existing tests by running ```mvn```.
8694

@@ -89,13 +97,13 @@ You can learn more about contributing via GitHub in our [contribution guidelines
8997

9098
License
9199
-------
92-
This code is under the [Apache License v2](https://www.apache.org/licenses/LICENSE-2.0).
100+
This code is licensed under the [Apache License v2](https://www.apache.org/licenses/LICENSE-2.0).
93101

94102
See the `NOTICE.txt` file for required notices and attributions.
95103

96-
Donations
97-
---------
98-
You like Apache Commons IO? Then [donate back to the ASF](https://www.apache.org/foundation/contributing.html) to support the development.
104+
Donating
105+
--------
106+
You like Apache Commons IO? Then [donate back to the ASF](https://www.apache.org/foundation/contributing.html) to support development.
99107

100108
Additional Resources
101109
--------------------
@@ -109,54 +117,4 @@ Additional Resources
109117
Apache Commons Components
110118
-------------------------
111119

112-
| Component | GitHub Repository | Apache Homepage |
113-
| --------- | ----------------- | ----------------|
114-
| Apache Commons BCEL | [commons-bcel](https://github.com/apache/commons-bcel) | [commons-bcel](https://commons.apache.org/proper/commons-bcel) |
115-
| Apache Commons Beanutils | [commons-beanutils](https://github.com/apache/commons-beanutils) | [commons-beanutils](https://commons.apache.org/proper/commons-beanutils) |
116-
| Apache Commons BSF | [commons-bsf](https://github.com/apache/commons-bsf) | [commons-bsf](https://commons.apache.org/proper/commons-bsf) |
117-
| 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) |
118-
| Apache Commons Chain | [commons-chain](https://github.com/apache/commons-chain) | [commons-chain](https://commons.apache.org/proper/commons-chain) |
119-
| Apache Commons CLI | [commons-cli](https://github.com/apache/commons-cli) | [commons-cli](https://commons.apache.org/proper/commons-cli) |
120-
| Apache Commons Codec | [commons-codec](https://github.com/apache/commons-codec) | [commons-codec](https://commons.apache.org/proper/commons-codec) |
121-
| Apache Commons Collections | [commons-collections](https://github.com/apache/commons-collections) | [commons-collections](https://commons.apache.org/proper/commons-collections) |
122-
| Apache Commons Compress | [commons-compress](https://github.com/apache/commons-compress) | [commons-compress](https://commons.apache.org/proper/commons-compress) |
123-
| Apache Commons Configuration | [commons-configuration](https://github.com/apache/commons-configuration) | [commons-configuration](https://commons.apache.org/proper/commons-configuration) |
124-
| Apache Commons Crypto | [commons-crypto](https://github.com/apache/commons-crypto) | [commons-crypto](https://commons.apache.org/proper/commons-crypto) |
125-
| Apache Commons CSV | [commons-csv](https://github.com/apache/commons-csv) | [commons-csv](https://commons.apache.org/proper/commons-csv) |
126-
| Apache Commons Daemon | [commons-daemon](https://github.com/apache/commons-daemon) | [commons-daemon](https://commons.apache.org/proper/commons-daemon) |
127-
| Apache Commons DBCP | [commons-dbcp](https://github.com/apache/commons-dbcp) | [commons-dbcp](https://commons.apache.org/proper/commons-dbcp) |
128-
| Apache Commons Dbutils | [commons-dbutils](https://github.com/apache/commons-dbutils) | [commons-dbutils](https://commons.apache.org/proper/commons-dbutils) |
129-
| Apache Commons Digester | [commons-digester](https://github.com/apache/commons-digester) | [commons-digester](https://commons.apache.org/proper/commons-digester) |
130-
| Apache Commons Email | [commons-email](https://github.com/apache/commons-email) | [commons-email](https://commons.apache.org/proper/commons-email) |
131-
| Apache Commons Exec | [commons-exec](https://github.com/apache/commons-exec) | [commons-exec](https://commons.apache.org/proper/commons-exec) |
132-
| Apache Commons Fileupload | [commons-fileupload](https://github.com/apache/commons-fileupload) | [commons-fileupload](https://commons.apache.org/proper/commons-fileupload) |
133-
| Apache Commons Functor | [commons-functor](https://github.com/apache/commons-functor) | [commons-functor](https://commons.apache.org/proper/commons-functor) |
134-
| Apache Commons Geometry | [commons-geometry](https://github.com/apache/commons-geometry) | [commons-geometry](https://commons.apache.org/proper/commons-geometry) |
135-
| Apache Commons Graph | [commons-graph](https://github.com/apache/commons-graph) | [commons-graph](https://commons.apache.org/proper/commons-graph) |
136-
| Apache Commons Imaging | [commons-imaging](https://github.com/apache/commons-imaging) | [commons-imaging](https://commons.apache.org/proper/commons-imaging) |
137-
| Apache Commons IO | [commons-io](https://github.com/apache/commons-io) | [commons-io](https://commons.apache.org/proper/commons-io) |
138-
| Apache Commons JCI | [commons-jci](https://github.com/apache/commons-jci) | [commons-jci](https://commons.apache.org/proper/commons-jci) |
139-
| Apache Commons JCS | [commons-jcs](https://github.com/apache/commons-jcs) | [commons-jcs](https://commons.apache.org/proper/commons-jcs) |
140-
| Apache Commons Jelly | [commons-jelly](https://github.com/apache/commons-jelly) | [commons-jelly](https://commons.apache.org/proper/commons-jelly) |
141-
| Apache Commons Jexl | [commons-jexl](https://github.com/apache/commons-jexl) | [commons-jexl](https://commons.apache.org/proper/commons-jexl) |
142-
| Apache Commons Jxpath | [commons-jxpath](https://github.com/apache/commons-jxpath) | [commons-jxpath](https://commons.apache.org/proper/commons-jxpath) |
143-
| Apache Commons Lang | [commons-lang](https://github.com/apache/commons-lang) | [commons-lang](https://commons.apache.org/proper/commons-lang) |
144-
| Apache Commons Logging | [commons-logging](https://github.com/apache/commons-logging) | [commons-logging](https://commons.apache.org/proper/commons-logging) |
145-
| Apache Commons Math | [commons-math](https://github.com/apache/commons-math) | [commons-math](https://commons.apache.org/proper/commons-math) |
146-
| Apache Commons Net | [commons-net](https://github.com/apache/commons-net) | [commons-net](https://commons.apache.org/proper/commons-net) |
147-
| Apache Commons Numbers | [commons-numbers](https://github.com/apache/commons-numbers) | [commons-numbers](https://commons.apache.org/proper/commons-numbers) |
148-
| Apache Commons Parent | [commons-parent](https://github.com/apache/commons-parent) | [commons-parent](https://commons.apache.org/proper/commons-parent) |
149-
| Apache Commons Pool | [commons-pool](https://github.com/apache/commons-pool) | [commons-pool](https://commons.apache.org/proper/commons-pool) |
150-
| Apache Commons Proxy | [commons-proxy](https://github.com/apache/commons-proxy) | [commons-proxy](https://commons.apache.org/proper/commons-proxy) |
151-
| Apache Commons RDF | [commons-rdf](https://github.com/apache/commons-rdf) | [commons-rdf](https://commons.apache.org/proper/commons-rdf) |
152-
| 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) |
153-
| Apache Commons Rng | [commons-rng](https://github.com/apache/commons-rng) | [commons-rng](https://commons.apache.org/proper/commons-rng) |
154-
| Apache Commons Scxml | [commons-scxml](https://github.com/apache/commons-scxml) | [commons-scxml](https://commons.apache.org/proper/commons-scxml) |
155-
| Apache Commons Signing | [commons-signing](https://github.com/apache/commons-signing) | [commons-signing](https://commons.apache.org/proper/commons-signing) |
156-
| Apache Commons Skin | [commons-skin](https://github.com/apache/commons-skin) | [commons-skin](https://commons.apache.org/proper/commons-skin) |
157-
| Apache Commons Statistics | [commons-statistics](https://github.com/apache/commons-statistics) | [commons-statistics](https://commons.apache.org/proper/commons-statistics) |
158-
| Apache Commons Testing | [commons-testing](https://github.com/apache/commons-testing) | [commons-testing](https://commons.apache.org/proper/commons-testing) |
159-
| Apache Commons Text | [commons-text](https://github.com/apache/commons-text) | [commons-text](https://commons.apache.org/proper/commons-text) |
160-
| Apache Commons Validator | [commons-validator](https://github.com/apache/commons-validator) | [commons-validator](https://commons.apache.org/proper/commons-validator) |
161-
| Apache Commons VFS | [commons-vfs](https://github.com/apache/commons-vfs) | [commons-vfs](https://commons.apache.org/proper/commons-vfs) |
162-
| Apache Commons Weaver | [commons-weaver](https://github.com/apache/commons-weaver) | [commons-weaver](https://commons.apache.org/proper/commons-weaver) |
120+
Please see the [list of components](https://commons.apache.org/components.html)

RELEASE-NOTES.txt

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,82 @@
1+
Apache Commons IO
2+
Version 2.15.0
3+
Release Notes
4+
5+
INTRODUCTION:
6+
7+
Commons IO is a package of Java utility classes like java.io.
8+
Classes in this package are considered to be so standard and of such high
9+
reuse as to justify existence in java.io.
10+
11+
The Apache Commons IO library contains utility classes, stream implementations, file filters,
12+
file comparators, endian transformation classes, and much more.
13+
14+
Java 8 is required.
15+
16+
Changes in this version include:
17+
18+
New features:
19+
o Add org.apache.commons.io.channels.FileChannels. Thanks to Gary Gregory.
20+
o Add RandomAccessFiles#contentEquals(RandomAccessFile, RandomAccessFile). Thanks to Gary Gregory.
21+
o Add RandomAccessFiles#reset(RandomAccessFile). Thanks to Gary Gregory.
22+
o Add PathUtilsContentEqualsBenchmark. Thanks to Gary Gregory.
23+
o Add org.apache.commons.io.StreamIterator. Thanks to Gary Gregory.
24+
o Add MessageDigestInputStream and deprecate MessageDigestCalculatingInputStream. Thanks to Gary Gregory.
25+
26+
Fixed Bugs:
27+
o IO-810: XmlStreamReader encoding match RE is too strict. Thanks to Laurence Gonsalves.
28+
o IO-810: Javadoc in FileUtils does not reflect code for thrown exceptions. Thanks to Gregor Dschung, Gary Gregory.
29+
o IO-812: Javadoc should mention closing Streams based on file resources. Thanks to Adam Rauch, Gary Gregory.
30+
o IO-811: In tests, Files.walk() direct and indirect callers fail to close the returned Stream. Thanks to Adam Rauch, Gary Gregory.
31+
o IO-811: FileUtils.listFiles(File, String[], boolean) fails to close its internal Stream. Thanks to Adam Rauch, Gary Gregory.
32+
o IO-811: FileUtils.iterateFiles(File, String[], boolean) fails to close its internal Stream. Thanks to Adam Rauch, Gary Gregory.
33+
o IO-811: StreamIterator fails to close its internal Stream. Thanks to Adam Rauch, Gary Gregory.
34+
o IO-814: Don't throw UncheckedIOException #491. Thanks to Elliotte Rusty Harold, Gary Gregory.
35+
o IO-414: Don't write a BOM on every (or any) line #492. Thanks to Elliotte Rusty Harold, Gary Gregory.
36+
o IO-814: RandomAccessFileMode.create(Path) provides a better NullPointerException message. Thanks to Gary Gregory.
37+
o Improve performance of PathUtils.fileContentEquals(Path, Path, LinkOption[], OpenOption[]) by about 60%, see PathUtilsContentEqualsBenchmark. Thanks to Gary Gregory.
38+
o Improve performance of PathUtils.fileContentEquals(Path, Path) by about 60%, see PathUtilsContentEqualsBenchmark. Thanks to Gary Gregory.
39+
o Improve performance of FileUtils.contentEquals(File, File) by about 60%, see PathUtilsContentEqualsBenchmark. Thanks to Gary Gregory.
40+
o Remove unused test code #494. Thanks to Elliotte Rusty Harold.
41+
o [Javadoc] IOUtils#contentEquals does not throw NullPointerException #496. Thanks to sebbASF.
42+
o Fix CodeQL warnings in UnsynchronizedBufferedInputStream: Implicit narrowing conversion in compound assignment. Thanks to Gary Gregory.
43+
o MessageDigestCalculatingInputStream.MessageDigestMaintainingObserver.MessageDigestMaintainingObserver(MessageDigest) now throws a NullPointerException
44+
if the MessageDigest is null. Thanks to Gary Gregory.
45+
o MessageDigestCalculatingInputStream.MessageDigestCalculatingInputStream(InputStream, MessageDigest) now throws a NullPointerException
46+
if the MessageDigest is null. Thanks to Gary Gregory.
47+
o IO-816: UnsynchronizedBufferedInputStream.read(byte[], int, int) does not use buffer. Thanks to Andreas Loth, Gary Gregory.
48+
49+
Changes:
50+
o Bump org.apache.commons:commons-parent from 62 to 64. Thanks to Gary Gregory.
51+
52+
Compatibility with 2.6:
53+
Binary compatible: Yes.
54+
Source compatible: Yes.
55+
Semantic compatible: Yes.
56+
57+
Commons IO 2.9.0 requires Java 8.
58+
Commons IO 2.8.0 requires Java 8.
59+
Commons IO 2.7 requires Java 8.
60+
Commons IO 2.6 requires Java 7.
61+
Commons IO 2.5 requires Java 6.
62+
Commons IO 2.4 requires Java 6.
63+
Commons IO 2.3 requires Java 6.
64+
Commons IO 2.2 requires Java 5.
65+
Commons IO 1.4 requires Java 1.3.
66+
67+
Historical list of changes: https://commons.apache.org/proper/commons-io/changes-report.html
68+
69+
For complete information on Apache Commons IO, including instructions on how to submit bug reports,
70+
patches, or suggestions for improvement, see the Apache Commons IO website:
71+
72+
https://commons.apache.org/proper/commons-io/
73+
74+
Download page: https://commons.apache.org/proper/commons-io/download_io.cgi
75+
76+
Have fun!
77+
-Apache Commons Team
78+
79+
==============================================================================
180

281
Apache Commons IO
382
Version 2.14.0

pom.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,7 @@ file comparators, endian transformation classes, and much more.
316316
<commons.rc.version>RC1</commons.rc.version>
317317
<commons.bc.version>2.14.0</commons.bc.version>
318318
<commons.release.version>2.15.0</commons.release.version>
319+
<commons.release.next>2.15.1</commons.release.next>
319320
<commons.release.desc>(requires Java 8)</commons.release.desc>
320321
<commons.jira.id>IO</commons.jira.id>
321322
<commons.jira.pid>12310477</commons.jira.pid>

src/site/xdoc/download_io.xml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -113,32 +113,32 @@ limitations under the License.
113113
</p>
114114
</subsection>
115115
</section>
116-
<section name="Apache Commons IO 2.14.0 (requires Java 8)">
116+
<section name="Apache Commons IO 2.15.0 (requires Java 8)">
117117
<subsection name="Binaries">
118118
<table>
119119
<tr>
120-
<td><a href="[preferred]/commons/io/binaries/commons-io-2.14.0-bin.tar.gz">commons-io-2.14.0-bin.tar.gz</a></td>
121-
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.14.0-bin.tar.gz.sha512">sha512</a></td>
122-
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.14.0-bin.tar.gz.asc">pgp</a></td>
120+
<td><a href="[preferred]/commons/io/binaries/commons-io-2.15.0-bin.tar.gz">commons-io-2.15.0-bin.tar.gz</a></td>
121+
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.15.0-bin.tar.gz.sha512">sha512</a></td>
122+
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.15.0-bin.tar.gz.asc">pgp</a></td>
123123
</tr>
124124
<tr>
125-
<td><a href="[preferred]/commons/io/binaries/commons-io-2.14.0-bin.zip">commons-io-2.14.0-bin.zip</a></td>
126-
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.14.0-bin.zip.sha512">sha512</a></td>
127-
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.14.0-bin.zip.asc">pgp</a></td>
125+
<td><a href="[preferred]/commons/io/binaries/commons-io-2.15.0-bin.zip">commons-io-2.15.0-bin.zip</a></td>
126+
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.15.0-bin.zip.sha512">sha512</a></td>
127+
<td><a href="https://downloads.apache.org/commons/io/binaries/commons-io-2.15.0-bin.zip.asc">pgp</a></td>
128128
</tr>
129129
</table>
130130
</subsection>
131131
<subsection name="Source">
132132
<table>
133133
<tr>
134-
<td><a href="[preferred]/commons/io/source/commons-io-2.14.0-src.tar.gz">commons-io-2.14.0-src.tar.gz</a></td>
135-
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.14.0-src.tar.gz.sha512">sha512</a></td>
136-
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.14.0-src.tar.gz.asc">pgp</a></td>
134+
<td><a href="[preferred]/commons/io/source/commons-io-2.15.0-src.tar.gz">commons-io-2.15.0-src.tar.gz</a></td>
135+
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.15.0-src.tar.gz.sha512">sha512</a></td>
136+
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.15.0-src.tar.gz.asc">pgp</a></td>
137137
</tr>
138138
<tr>
139-
<td><a href="[preferred]/commons/io/source/commons-io-2.14.0-src.zip">commons-io-2.14.0-src.zip</a></td>
140-
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.14.0-src.zip.sha512">sha512</a></td>
141-
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.14.0-src.zip.asc">pgp</a></td>
139+
<td><a href="[preferred]/commons/io/source/commons-io-2.15.0-src.zip">commons-io-2.15.0-src.zip</a></td>
140+
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.15.0-src.zip.sha512">sha512</a></td>
141+
<td><a href="https://downloads.apache.org/commons/io/source/commons-io-2.15.0-src.zip.asc">pgp</a></td>
142142
</tr>
143143
</table>
144144
</subsection>

0 commit comments

Comments
 (0)