diff --git a/.files b/.files
index 538c7b6..4b4b069 100644
Binary files a/.files and b/.files differ
diff --git a/.rev b/.rev
index 5ed96c6..64dbdc3 100644
--- a/.rev
+++ b/.rev
@@ -162,4 +162,12 @@
source/target 8 == build with jdk 21
1120353
+
+ 3167bd46d69e07ae2f188a458bbd32a9
+ 2.15.1
+
+ anag+factory
+ 2.5.1
+ 1147616
+
diff --git a/apache-commons-io-build.xml b/apache-commons-io-build.xml
index 0990021..4b2cf5e 100644
--- a/apache-commons-io-build.xml
+++ b/apache-commons-io-build.xml
@@ -10,7 +10,7 @@
-
+
-
+
diff --git a/apache-commons-io.changes b/apache-commons-io.changes
index 59f9b53..a128188 100644
--- a/apache-commons-io.changes
+++ b/apache-commons-io.changes
@@ -1,4 +1,152 @@
-------------------------------------------------------------------
+Mon Feb 19 14:58:13 UTC 2024 - Fridrich Strba
+
+- Upgrade to 2.15.1
+ * Fixed Bugs:
+ + Fix wrong issue id in change log
+ + Add test for FileChannels.contentEquals()
+ + Fix FileChannels.contentEquals()
+ + Fix some Javadoc issues in LineIterator and IOUtils
+ + Simplify FileAlterationObserver internal processing
+ + Avoid NullPointerException in RegexFileFilter
+ .RegexFileFilter(Pattern)
+ + Avoid NullPointerException in RegexFileFilter
+ .accept(Path, BasicFileAttributes)
+ + Fix SpotBugs error: Class org.apache.commons.io.filefilter
+ .RegexFileFilter defines non-transient non-serializable
+ instance field pathToString [org.apache.commons.io.filefilter
+ .RegexFileFilter] In RegexFileFilter.java SE_BAD_FIELD
+ + Fix SpotBugs error: Class org.apache.commons.io.filefilter
+ .DelegateFileFilter defines non-transient non-serializable
+ instance field fileFilter [org.apache.commons.io.filefilter
+ .DelegateFileFilter] In DelegateFileFilter.java SE_BAD_FIELD
+ + Fix SpotBugs error: Class org.apache.commons.io.filefilter
+ .DelegateFileFilter defines non-transient non-serializable
+ instance field fileNameFilter [org.apache.commons.io
+ .filefilter.DelegateFileFilter] In DelegateFileFilter.java
+ SE_BAD_FIELD
+ + Fix SpotBugs error: org.apache.commons.io.function.IOStream$1
+ .next() cannot throw NoSuchElementException [org.apache
+ .commons.io.function.IOStream$1] At IOStream.java:[line 98]
+ IT_NO_SUCH_ELEMENT
+ + Fix SpotBugs error: org.apache.commons.io.monitor
+ .FileAlterationMonitor.getObservers() may expose internal
+ representation by returning FileAlterationMonitor.observers
+ [org.apache.commons.io.monitor.FileAlterationMonitor] At
+ FileAlterationMonitor.java:[line 124] EI_EXPOSE_REP
+ + Fix SpotBugs error: Class org.apache.commons.io.monitor
+ .FileAlterationObserver defines non-transient non-serializable
+ instance field fileFilter [org.apache.commons.io.monitor
+ .FileAlterationObserver] In FileAlterationObserver.java
+ SE_BAD_FIELD
+ + Fix SpotBugs error: Class org.apache.commons.io.monitor
+ .FileAlterationObserver defines non-transient non-serializable
+ instance field listeners [org.apache.commons.io.monitor
+ .FileAlterationObserver] In FileAlterationObserver.java
+ SE_BAD_FIELD
+ + Fix SpotBugs error: org.apache.commons.io.FileCleaningTracker
+ .getDeleteFailures() may expose internal representation by
+ returning FileCleaningTracker.deleteFailures [org.apache
+ .commons.io.FileCleaningTracker] At
+ FileCleaningTracker.java:[line 218] EI_EXPOSE_REP
+ + Fix SpotBugs error: org.apache.commons.io.IOExceptionList
+ .getCauseList() may expose internal representation by
+ returning IOExceptionList.causeList [org.apache.commons.io
+ .IOExceptionList] At IOExceptionList.java:[line 118]
+ EI_EXPOSE_REP
+ + Fix SpotBugs error: org.apache.commons.io.IOExceptionList
+ .getCauseList(Class) may expose internal representation by
+ returning IOExceptionList.causeList [org.apache.commons.io
+ .IOExceptionList] At IOExceptionList.java:[line 129]
+ EI_EXPOSE_REP
+ + Fix SpotBugs error: org.apache.commons.io.file
+ .AccumulatorPathVisitor.getDirList() may expose internal
+ representation by returning AccumulatorPathVisitor.dirList
+ [org.apache.commons.io.file.AccumulatorPathVisitor] At
+ AccumulatorPathVisitor.java:[line 179] EI_EXPOSE_REP
+ + Fix SpotBugs error: org.apache.commons.io.file
+ .AccumulatorPathVisitor.getFileList() may expose internal
+ representation by returning AccumulatorPathVisitor.fileList
+ [org.apache.commons.io.file.AccumulatorPathVisitor] At
+ AccumulatorPathVisitor.java:[line 188] EI_EXPOSE_REP
+ + Fix SpotBugs error: org.apache.commons.io.input
+ .ObservableInputStream.getObservers() may expose internal
+ representation by returning ObservableInputStream.observers
+ [org.apache.commons.io.input.ObservableInputStream] At
+ ObservableInputStream.java:[line 187] EI_EXPOSE_REP
+ + Fix SpotBugs error: Exception thrown in class org.apache
+ .commons.io.input.UnsynchronizedByteArrayInputStream at new
+ org.apache.commons.io.input
+ .UnsynchronizedByteArrayInputStream(byte[], int) will leave
+ the constructor. The object under construction remains
+ partially initialized and may be vulnerable to Finalizer
+ attacks. [org.apache.commons.io.input
+ .UnsynchronizedByteArrayInputStream, org.apache.commons.io
+ .input.UnsynchronizedByteArrayInputStream] At
+ UnsynchronizedByteArrayInputStream.java:[line 202]
+ CT_CONSTRUCTOR_THROW
+ + Fix SpotBugs error: Exception thrown in class org.apache
+ .commons.io.input.UnsynchronizedByteArrayInputStream at new
+ org.apache.commons.io.input
+ .UnsynchronizedByteArrayInputStream(byte[], int, int) will
+ leave the constructor. The object under construction remains
+ partially initialized and may be vulnerable to Finalizer
+ attacks. [org.apache.commons.io.input
+ .UnsynchronizedByteArrayInputStream, org.apache.commons.io
+ .input.UnsynchronizedByteArrayInputStream] At
+ UnsynchronizedByteArrayInputStream.java:[line 223]
+ CT_CONSTRUCTOR_THROW
+- Upgrade to 2.15.0
+ * New features:
+ + Add org.apache.commons.io.channels.FileChannels
+ + Add RandomAccessFiles#contentEquals(RandomAccessFile,
+ RandomAccessFile)
+ + Add RandomAccessFiles#reset(RandomAccessFile)
+ + Add PathUtilsContentEqualsBenchmark
+ + Add org.apache.commons.io.StreamIterator
+ + Add MessageDigestInputStream and deprecate
+ MessageDigestCalculatingInputStream
+ * Fixed Bugs:
+ + IO-815: XmlStreamReader encoding match RE is too strict
+ + IO-810: Javadoc in FileUtils does not reflect code for thrown
+ exceptions
+ + IO-812: Javadoc should mention closing Streams based on file
+ resources
+ + IO-811: In tests, Files.walk() direct and indirect callers
+ fail to close the returned Stream
+ + IO-811: FileUtils.listFiles(File, String[], boolean) fails to
+ close its internal Stream
+ + IO-811: FileUtils.iterateFiles(File, String[], boolean) fails
+ to close its internal Stream
+ + IO-811: StreamIterator fails to close its internal Stream
+ + IO-814: Don't throw UncheckedIOException
+ + IO-414: Don't write a BOM on every (or any) line
+ + IO-814: RandomAccessFileMode.create(Path) provides a better
+ NullPointerException message
+ + Improve performance of PathUtils.fileContentEquals(Path, Path,
+ LinkOption[], OpenOption[]) by about 60%, see
+ PathUtilsContentEqualsBenchmark
+ + Improve performance of PathUtils.fileContentEquals(Path, Path)
+ by about 60%, see PathUtilsContentEqualsBenchmark
+ + Improve performance of FileUtils.contentEquals(File, File) by
+ about 60%, see PathUtilsContentEqualsBenchmark
+ + Remove unused test code
+ + [Javadoc] IOUtils#contentEquals does not throw
+ NullPointerException
+ + Fix CodeQL warnings in UnsynchronizedBufferedInputStream:
+ Implicit narrowing conversion in compound assignment
+ + MessageDigestCalculatingInputStream
+ .MessageDigestMaintainingObserver
+ .MessageDigestMaintainingObserver(MessageDigest) now throws a
+ NullPointerException if the MessageDigest is null
+ + MessageDigestCalculatingInputStream
+ .MessageDigestCalculatingInputStream(InputStream,
+ MessageDigest) now throws a NullPointerException if the
+ MessageDigest is null
+ + IO-816: UnsynchronizedBufferedInputStream.read(byte[], int,
+ int) does not use buffer
+
+-------------------------------------------------------------------
Wed Oct 25 16:53:57 UTC 2023 - Fridrich Strba
- Build with source and target levels 8
diff --git a/apache-commons-io.spec b/apache-commons-io.spec
index a818eee..52f98cd 100644
--- a/apache-commons-io.spec
+++ b/apache-commons-io.spec
@@ -1,7 +1,7 @@
#
-# spec file
+# spec file for package apache-commons-io
#
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%define base_name io
%define short_name commons-%{base_name}
Name: apache-%{short_name}
-Version: 2.14.0
+Version: 2.15.1
Release: 0
Summary: Utilities to assist with developing IO functionality
License: Apache-2.0
@@ -66,7 +66,7 @@ install -p -m 0644 target/%{short_name}-%{version}.jar \
ln -sf %{short_name}.jar %{buildroot}%{_javadir}/%{name}.jar
# pom
install -d -m 755 %{buildroot}%{_mavenpomdir}
-%mvn_install_pom pom.xml %{buildroot}%{_mavenpomdir}/%{short_name}.pom
+%{mvn_install_pom} pom.xml %{buildroot}%{_mavenpomdir}/%{short_name}.pom
%add_maven_depmap %{short_name}.pom %{short_name}.jar -a "org.apache.commons:commons-io"
# javadoc
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
diff --git a/commons-io-2.14.0-src.tar.gz b/commons-io-2.14.0-src.tar.gz
deleted file mode 120000
index 36fee07..0000000
--- a/commons-io-2.14.0-src.tar.gz
+++ /dev/null
@@ -1 +0,0 @@
-/ipfs/bafybeibgnite2oad5mxeba44yvgekjaua7eno3ar6oyijrizk6enmwqdgy
\ No newline at end of file
diff --git a/commons-io-2.14.0-src.tar.gz.asc b/commons-io-2.14.0-src.tar.gz.asc
deleted file mode 100644
index b72e47d..0000000
--- a/commons-io-2.14.0-src.tar.gz.asc
+++ /dev/null
@@ -1,11 +0,0 @@
------BEGIN PGP SIGNATURE-----
-
-iQEzBAABCgAdFiEELbTx7w+nYezE6pNchv3H4qESYssFAmURZkQACgkQhv3H4qES
-YssmAAf+Opr906UCvufO2/ncd3Q2RuJDC24WoUlK8t18yNLTXcG1ZhxtqHn0ms/l
-D59OwQQaerBr2f/Y4dB1WLTg/XIrgtbmjImKk0iOXwVirb5etdXdnLUXf3oRvJG+
-C98BB26kY4QPYmRzQMFdf6AVRMZvva51c+u7zrKDOC0/VlxYPY8UlYQfCJ6Uyxqu
-TMUwQ1/cfSr65DIQui/X/RM09tGcyItb2wScZlGSq7FqtYNUj6GYAEZqhPeG74pq
-5xC19viyCGnTLO8LRaqmzmqidMPcYc95GqO9BiQDcI393qZJsq9GSxMwvIPcVJNp
-l6oNdUcPRxIf0yFJm47dmFtEeM4KXg==
-=+Thz
------END PGP SIGNATURE-----
diff --git a/commons-io-2.15.1-src.tar.gz b/commons-io-2.15.1-src.tar.gz
new file mode 120000
index 0000000..2fd7313
--- /dev/null
+++ b/commons-io-2.15.1-src.tar.gz
@@ -0,0 +1 @@
+/ipfs/bafybeib5iij7geo7lhqolqm3coanyk4xvkrs3wohfil5grzmlzpsh6t3qq
\ No newline at end of file
diff --git a/commons-io-2.15.1-src.tar.gz.asc b/commons-io-2.15.1-src.tar.gz.asc
new file mode 100644
index 0000000..d5f4489
--- /dev/null
+++ b/commons-io-2.15.1-src.tar.gz.asc
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQEzBAABCgAdFiEELbTx7w+nYezE6pNchv3H4qESYssFAmVgzyQACgkQhv3H4qES
+YsurQQf+LS4VRitxNgUt7nFxUSHD46hHy3MAkBYNIu6eTXHTKJ/NqIwVxq2f6iZI
+hq6AKwg5GiOge/2ujqtU3wcKduKPcEC431my0JiGHOrI0F7AGvU4+WIBYQz1Flv3
+ZjPLk8kXd/WblB8lAByE0/c4nQC1iwV+w/nh0e78KaV9FhsNu0qV9BF+xWiDwFwN
+sr5W+PeXLqmFy07kvQCaqkbX57bRV4oByttv5hJaLVdkAwksKEUMoij7TM2t54yP
+6SFQwt3GIu/MuU669fWPvj7D6FdfpU38QChIuj/50L0cAUermMJ3EqS/MatHdf7D
+lprG1l6RoMMOA/ByoZ4UvtRTrXUzpg==
+=/4eI
+-----END PGP SIGNATURE-----