Gus Kenion 2025-01-24 15:22:52 +00:00 committed by Git OBS Bridge
commit bfd64f898e
12 changed files with 11248 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

145
apache-commons-io-build.xml Normal file
View File

@ -0,0 +1,145 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="commons-io" default="package" basedir=".">
<!-- ====================================================================== -->
<!-- Build environment properties -->
<!-- ====================================================================== -->
<property file="maven-build.properties"/>
<property name="project.groupId" value="commons-io"/>
<property name="project.artifactId" value="commons-io"/>
<property name="project.version" value="2.18.0"/>
<property name="project.name" value="Apache Commons IO"/>
<property name="project.description" value="The Apache Commons IO library
contains utility classes, stream implementations, file filters,
file comparators, endian transformation classes, and much more."/>
<property name="project.organization.name" value="The Apache Software Foundation"/>
<property name="bundle.symbolicName" value="org.apache.commons.io"/>
<property name="bundle.version" value="${project.version}"/>
<property name="compiler.release" value="8"/>
<property name="compiler.source" value="1.${compiler.release}"/>
<property name="compiler.target" value="${compiler.source}"/>
<property name="build.finalName" value="${project.artifactId}-${project.version}"/>
<property name="build.dir" value="target"/>
<property name="build.outputDir" value="${build.dir}/classes"/>
<property name="build.srcDir" value="src/main/java"/>
<property name="build.resourceDir.0" value="src/main/resources"/>
<property name="build.resourceDir.1" value="."/>
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
<!-- ====================================================================== -->
<!-- Defining classpaths -->
<!-- ====================================================================== -->
<path id="build.classpath"/>
<path id="build.test.classpath"/>
<!-- ====================================================================== -->
<!-- Cleaning up target -->
<!-- ====================================================================== -->
<target name="clean" description="Clean the output directory">
<delete dir="${build.dir}"/>
</target>
<!-- ====================================================================== -->
<!-- Compilation target -->
<!-- ====================================================================== -->
<target name="compile" description="Compile the code">
<mkdir dir="${build.outputDir}"/>
<javac destdir="${build.outputDir}"
encoding="iso-8859-1"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
release="${compiler.release}"
target="${compiler.target}"
verbose="false"
fork="false"
source="${compiler.source}">
<src>
<pathelement location="${build.srcDir}"/>
</src>
<classpath refid="build.classpath"/>
</javac>
<mkdir dir="${build.outputDir}/META-INF"/>
<copy todir="${build.outputDir}/META-INF">
<fileset dir="${build.resourceDir.1}">
<include name="NOTICE.txt"/>
<include name="LICENSE.txt"/>
</fileset>
</copy>
</target>
<!-- ====================================================================== -->
<!-- Javadoc target -->
<!-- ====================================================================== -->
<target name="javadoc" description="Generates the Javadoc of the application">
<javadoc sourcepath="${build.srcDir}"
packagenames="*"
destdir="${reporting.outputDirectory}/apidocs"
access="protected"
verbose="false"
encoding="iso-8859-1"
version="true"
use="true"
author="true"
splitindex="false"
nodeprecated="false"
nodeprecatedlist="false"
notree="false"
noindex="false"
nohelp="false"
nonavbar="false"
serialwarn="false"
source="${compiler.source}"
linksource="true"
breakiterator="false">
</javadoc>
</target>
<!-- ====================================================================== -->
<!-- Package target -->
<!-- ====================================================================== -->
<target name="package" depends="compile" description="Package the application">
<jar jarfile="${build.dir}/${build.finalName}.jar"
compress="true"
index="false"
basedir="${build.outputDir}"
excludes="**/package.html">
<manifest>
<attribute name="Automatic-Module-Name" value="${bundle.symbolicName}"/>
<attribute name="Bundle-Description" value="${project.description}"/>
<attribute name="Bundle-DocURL" value="http://commons.apache.org/proper/commons-io/"/>
<attribute name="Bundle-License" value="https://www.apache.org/licenses/LICENSE-2.0.txt"/>
<attribute name="Bundle-ManifestVersion" value="2"/>
<attribute name="Bundle-Name" value="${project.name}"/>
<attribute name="Bundle-SymbolicName" value="${bundle.symbolicName}"/>
<attribute name="Bundle-Vendor" value="${project.organization.name}"/>
<attribute name="Bundle-Version" value="${bundle.version}"/>
<attribute name="Export-Package" value="org.apache.commons.io;version=&quot;1.4.9999&quot;,org.apache.commons.io.comparator;version=&quot;1.4.9999&quot;,org.apache.commons.io.filefilter;version=&quot;1.4.9999&quot;,org.apache.commons.io.input;version=&quot;1.4.9999&quot;,org.apache.commons.io.output;version=&quot;1.4.9999&quot;,org.apache.commons.io.monitor;version=&quot;${project.version}&quot;,org.apache.commons.io.serialization;version=&quot;${project.version}&quot;,org.apache.commons.io;version=&quot;${project.version}&quot;,org.apache.commons.io.comparator;version=&quot;${project.version}&quot;,org.apache.commons.io.filefilter;version=&quot;${project.version}&quot;,org.apache.commons.io.input;version=&quot;${project.version}&quot;,org.apache.commons.io.output;version=&quot;${project.version}&quot;"/>
<attribute name="Include-Resource" value="META-INF/NOTICE.txt=NOTICE.txt,META-INF/LICENSE.txt=LICENSE.txt"/>
<attribute name="JavaPackages-ArtifactId" value="${project.artifactId}"/>
<attribute name="JavaPackages-GroupId" value="${project.groupId}"/>
<attribute name="JavaPackages-Version" value="${project.version}"/>
<attribute name="Require-Capability" value="osgi.ee;filter:=&quot;(&amp;(osgi.ee=JavaSE)(version=${compiler.target}))&quot;"/>
</manifest>
</jar>
</target>
<!-- ====================================================================== -->
<!-- A dummy target for the package named after the type it creates -->
<!-- ====================================================================== -->
<target name="jar" depends="package" description="Builds the jar for the application"/>
</project>

609
apache-commons-io.changes Normal file
View File

@ -0,0 +1,609 @@
-------------------------------------------------------------------
Fri Jan 24 15:08:26 UTC 2025 - Gus Kenion <gus.kenion@suse.com>
- Upgrade to 2.18.0
* New features
+ Add @FunctionalInterface to ClassNameMatcher.
+ Add ValidatingObjectInputStream.Builder and
ValidatingObjectInputStream.builder().
+ Add a "Safe Deserialization" section to the User Guide for
the site.
+ Add IORandomAccessFile.
+ Add RandomAccessFileMode.io(String).
+ Add FileAlterationObserver.Builder() and deprecate most
constructors.
+ Add IOUtils.readLines(CharSequence).
+ Add ValidatingObjectInputStream.ObjectStreamClassPredicate to
allow configuration reuse.
+ Add RandomAccessFileMode.accept(Path,
IOConsumer<RandomAccessFile>).
+ Add RandomAccessFileMode.apply(Path,
IOFunction<RandomAccessFile>, T).
+ Add IOIntConsumer.
+ Add ProxyInputStream.AbstractBuilder. Supports setting a
consumer for ProxyInputStream.afterRead(int).
+ Add support to AutoCloseInputStream for setting a consumer
for ProxyInputStream.afterRead(int).
+ Add support to BOMInputStream for setting a consumer for
ProxyInputStream.afterRead(int).
+ Add support to BoundedInputStream for setting a consumer for
ProxyInputStream.afterRead(int).
+ Add support to BoundedInputStream for setting a consumer for
BoundedInputStream.onMaxLength(long, long).
+ Add support to ChecksumInputStream for setting a consumer for
ProxyInputStream.afterRead(int).
+ Add support to ThrottledInputStream for setting a consumer
for ProxyInputStream.afterRead(int).
+ Add support to ObservableInputStream for setting a consumer
for ProxyInputStream.afterRead(int).
+ Add support to MessageDigestCalculatingInputStream for
setting a consumer for ProxyInputStream.afterRead(int).
+ Add support to MessageDigestInputStream for setting a
consumer for ProxyInputStream.afterRead(int).
* Fixed Bugs
+ Clean ups in unit tests.
+ Fix some Javadoc issues.
+ RandomAccessFileMode.toString() is more helpful for debugging
when it inherits from Enum.
+ Fix implicit narrowing conversion in compound assignment in
UnsynchronizedBufferedReader.skip(long).
+ IO-860: Missing reserved file names in FileSystem.WINDOWS
(superscript digits for COM and LPT).
+ IO-856: FileUtils.listFiles(final File, String[], boolean)
can throw NoSuchFileException #697, #699.
+ IO-859: FileUtils.forceDelete on non-existent file on Windows
throws IOException rather than FileNotFoundException.
+ Use Unicode escapes for superscript characters. #701.
+ IO-863: Recent incompatible change to FileUtils.listFiles re
extensions, see also IO-856.
+ IO-857: Javadoc: Update details for PathUtils "clean"
behavior.
* Changes
+ Bump org.apache.commons:commons-parent from 74 to 78 #670,
#676, #679, #688.
+ Bump commons.bytebuddy.version from 1.15.1 to 1.15.10 #672,
#673, #685, #686, #694, #696, #698.
+ Update AbstractStreamBuilder getters from protected to
public.
-------------------------------------------------------------------
Fri Oct 4 19:23:58 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to 2.17.0
* New features:
+ Add IOIterator.adapt(Iterable)
+ Add getInputStream() for 'https' and 'http' in URIOrigin
#630. Fixes IO-831
+ Add IOSupplier.getUnchecked()
+ Add CloseShieldInputStream.systemIn(InputStream)
+ Add NullInputStream.init()
+ Add AbstractInputStream and refactor duplicate code
+ Add UnsynchronizedReader
+ Add UnsynchronizedBufferedReader
* Fixes:
+ FileUtilsWaitForTest does not test anything useful.
Fixes IO-858.
+ Add missing unit tests
+ FileUtils.lastModifiedFileTime(File) calls
Objects.requireNonNull() on the wrong object
+ PathUtils.deleteOnExit(Path) calls Objects.requireNonNull()
on the wrong object
+ Deprecate LineIterator.nextLine() in favor of next()
+ Fix PMD UnnecessaryFullyQualifiedName
+ Add test for CircularByteBuffer clear() #620
+ PathUtils.isPosix(Path, LinkOption...) should return false on
null input
+ AutoCloseInputStream(InputStream) uses
ClosedInputStream.INSTANCE when its input is null
+ Avoid NullPointerException in ProxyInputStream.available()
when the underlying input stream is null
+ Avoid NullPointerException in ProxyInputStream.markSupported()
when the underlying input stream is null
+ Avoid NullPointerException in ProxyInputStream.mark(int) when
the underlying input stream is null
+ BufferedFileChannelInputStream.available() returns 0 before
any reads
+ BufferedFileChannelInputStream.available() should return 0
instead of -1 at the end of the stream
+ BufferedFileChannelInputStream.available() should return 0
when the stream is closed instead of throwing an exception
+ CharSequenceInputStream.available() should return 0 after the
stream is closed
+ BoundedInputStream.available() should return 0 when the
stream is closed
+ CircularInputStream.available() should return 0 when the
stream is closed
+ InfiniteCircularInputStream.available() should return 0 when
the stream is closed
+ ChecksumInputStream(InputStream, Checksum, long, long) should
fail-fast on null Checksum input
+ Deprecate NullInputStream.INSTANCE in favor of constructors
+ NullInputStream.available() should return 0 after the stream
is closed
+ MemoryMappedFileInputStream.available() should return 0 after
the stream is closed
+ RandomAccessFileInputStream.available() should return 0 after
the stream is closed
+ ReaderInputStream.available() should return 0 after the
stream is closed
+ AutoCloseInputStream does not call handleIOException() on
close() when the proxied stream throws an IOException
+ BoundedInputStream does not call handleIOException() on
close() when the proxied stream throws an IOException
+ NullInputStream.read(*) should throw IOException when it is
closed
+ NullInputStream.read(byte[]) should return 0 when the input
byte array in length 0
+ NullInputStream.read(byte[], int, int) should return 0 when
the input byte array in length 0 or requested length is 0
+ MarkShieldInputStream.read(*) should throw IOException when
it is closed
+ Replace deprecated constant FileFileFilter.FILE in Javadoc
#657
+ Pick up exec-maven-plugin version from parent POM
* Updates:
+ Bump tests commons.bytebuddy.version from 1.14.13 to 1.15.1
#615, #621, #631, #635, #642, #658, #663, #665
+ Bump tests commons-codec:commons-codec from 1.16.1 to 1.17.1
#644
+ Bump org.codehaus.mojo:exec-maven-plugin from 3.2.0 to 3.4.1
#632, #652, #659
+ Bump org.apache.commons:commons-parent from 69 to 74 #628,
#637, #649, #661, #664
+ Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.17.0
#645, #653, #666
-------------------------------------------------------------------
Mon Apr 29 13:12:59 UTC 2024 - Gus Kenion <gus.kenion@suse.com>
- Upgrade to 2.16.1
* Fixes:
+ Reimplement FileSystemUtils using NIO.
+ FileSystemUtils no longer throws IllegalStateException. Fixes
IO-851.
+ Avoid possible NullPointerException in
FileUtils.listAccumulate(File, IOFileFilter, IOFileFilter,
FileVisitOption...).
+ BoundedInputStream.reset() not updating count. Fixes IO-853.
+ ThresholdingOutputStream: a negative threshold should behave
like a zero threshold and trigger the event on the first
write #609. Fixes IO-854.
* Updates:
+ Bump commons.bytebuddy.version from 1.14.12 to 1.14.13 #605.
+ Bump org.apache.commons:commons-parent from 67 to 69 #608.
- Update apache-commons-io-build.xml for new version
- Includes changes from 2.16.0
* Fixes:
+ Fix and re-enable testSkip_RequiredCharsets #518.
+ SymbolicLineFileFilter documentation fixes. Fixes IO-824.
+ CharSequenceInputStream.reset() only works once #520. Fixes
IO-795.
+ Finish TODO on CharSequenceInputStream #540. Fixes IO-795.
+ Add byte array size validation for methods in EndianUtils
#521. Fixes IO-825.
+ Add missing test case CircularByteBufferTest. Fixes IO-825.
+ Make CharSequenceInputStream.available() more correct in the
face of multibyte encodings #525. Fixes IO-781.
+ Remove unreachable code in AbstractIOFileFilterTest #526.
Fixes IO-781.
+ Rationalize and unify checking for existence of files and
directories #529. Fixes IO-808.
+ Avoid NullPointerException in IOCase.checkEquals(String,
String) on null input.
+ Avoid NullPointerException in
CanExecuteFileFilter.accept(File) on null input.
+ Avoid NullPointerException in
CanExecuteFileFilter.accept(Path, BasicFileAttributes) on
null input.
+ Avoid NullPointerException in CanReadFileFilter.accept(File)
on null input.
+ Avoid NullPointerException in CanReadFileFilter.accept(Path,
BasicFileAttributes) on null input.
+ Avoid NullPointerException in CanWriteFileFilter.accept(File)
on null input.
+ Avoid NullPointerException in CanWriteFileFilter.accept(Path,
BasicFileAttributes) on null input.
+ Avoid NullPointerException in
DirectoryFileFilter.accept(File) on null input.
+ Avoid NullPointerException in
DirectoryFileFilter.accept(Path, BasicFileAttributes) on null
input.
+ Avoid NullPointerException in EmptyFileFilter.accept(File) on
null input.
+ Avoid NullPointerException in EmptyFileFilter.accept(Path,
BasicFileAttributes) on null input.
+ Avoid NullPointerException in FileFileFilter.accept(File) on
null input.
+ Avoid NullPointerException in FileFileFilter.accept(Path,
BasicFileAttributes) on null input.
+ Avoid NullPointerException in HiddenFileFilter.accept(File)
on null input.
+ Avoid NullPointerException in HiddenFileFilter.accept(Path,
BasicFileAttributes) on null input.
+ Avoid NullPointerException in IOCase.checkIndexOf(String,
int, String) on null input.
+ Avoid NullPointerException in
IOCase.checkRegionMatches(String, int, String) on null input.
+ BoundedInputStream.getCount() should not count EOF.
+ Modernize temporary file creation and deletion in
DeferredFileOutputStreamTest #535.
+ Add PathMatcher to IOFileFilter class Javadoc #536.
+ Fix CharSequenceInputStream coding exception handling #537.
Fixes IO-781.
+ Deprecate int CountingInputStream#getCount() in favor of long
CountingInputStream#getByteCount(). Fixes IO-781.
+ Deprecate CountingInputStream.resetCount() in favor of
resetByteCount(). Fixes IO-828.
+ Deprecate CountingInputStream.getMaxLength() in favor of
getMaxCount()). Fixes IO-828.
+ NullInputStream breaks InputStream's read method contract.
Fixes IO-818.
+ Javadoc shouldn't reference 1.x behavior #539.
+ Don't decode and reencode characters in a potentially
different charset in
AbstractOrigin.CharSequenceOrigin.getReader(Charset). Fixes
IO-829.
+ Let subclasses of CountingInputStream.afterRead(int) throw
IOException.
+ Characterization test for broken symlinks when copying
directories #547. Fixes IO-807.
+ ClosedInputStream.read(byte[], int, int) does not always
return -1.
+ ClosedOutputStream.write(byte[], int, int) does not always
throw IOException.
+ XmlStreamReader can't parse an XML document with a multi-line
prolog #550.
+ XmlStreamReader can't parse XML an document with an external
parsed entity prolog.
+ Update FileNameUtils Javadoc #554. Fixes IO-836.
+ Copy symlinks, not the files the symlinks point to #558.
Fixes IO-807.
+ Pickup apache-rat-plugin version from parent POM.
+ Add test for copying a symlink
FileUtilsTest#testCopyFile_symLink() #564.
+ Make copyFile copy symbolic links by value rather than
reference #565.
+ Deprecate CopyUtils 0-argument constructor.
+ Deprecate EndianUtils 0-argument constructor. Fixes IO-843.
+ Deprecate FileSystemUtils 0-argument constructor.
+ Deprecate FilenameUtils 0-argument constructor.
+ Deprecate RandomAccessFiles 0-argument constructor.
+ Clarify and correct EndianUtils and SwappedDataInputStream
API doc #566.
+ Add characterization test for copying a symlinked directory
#570.
+ RandomAccessFileInputStream.builder().get() now throws ISE
instead of NPE.
+ Test links to targets outside the source directory #571.
Fixes IO-845.
+ Focus Javadoc on current version rather than past versions
#573, #574.
+ "Self-suppression not permitted" while using BrokenOutput and
BrokenInput streams with try-with-resources. Fixes IO-469.
+ Handle zero and negative thresholds #587. Fixes IO-405.
+ Deprecate CountingInputStream in favor of BoundedInputStream.
+ PathUtils.setPosixPermissions(...) only sets permissions if
needed.
+ PathUtils.setReadOnly(...) only sets permissions if needed.
+ PathUtils.deleteFile(..., DeleteOption...) only sets
permissions if needed.
+ CleaningPathVisitor only sets permissions if needed.
+ DeletingPathVisitor only sets permissions if needed.
* New features:
+ Add and use PathUtils.getFileName(Path, Function<Path, R>).
+ Add and use PathUtils.getFileNameString().
+ Make public Erase.rethrow(Throwable).
+ Add BrokenInputStream.BrokenInputStream(Throwable). Fixes
IO-826.
+ Add BrokenReader.BrokenReader(Throwable). Fixes IO-826.
+ Add BrokenOutputStream.BrokenOutputStream(Throwable). Fixes
IO-826.
+ Add BrokenWriter.BrokenWriter(Throwable). Fixes IO-826.
+ Add BoundedInputStream.getRemaining().
+ Add FileTimes.toNtfsTime(long).
+ Add FileTimes.fromUnixTime(long).
+ Add FileTimes.isUnixTime(FileTime).
+ Add FileTimes.isUnixTime(long).
+ Add FileTimes.toUnixTime(FileTime).
+ Add BrokenInputStream.Builder.
+ Add PathUtils.getExtension(Path).
+ Add PathUtils.getBaseName(Path).
+ Add ThrottledInputStream.
+ Add IORunnable.noop().
+ Add ChecksumInputStream and test #548.
+ Add AbstractStreamBuilder.getReader().
+ Add Maven property project.build.outputTimestamp for build
reproducibility.
+ Add ProxyInputStream.unwrap().
+ Add a running count and builder to BoundedInputStream.
* Updates:
+ Bump commons.bytebuddy.version from 1.14.10 to 1.14.12 #534,
#592.
+ Bump org.apache.commons:commons-parent from 65 to 67.
+ Bump commons-codec:commons-codec from 1.16.0 to 1.16.1 #583.
+ Bump org.codehaus.mojo:exec-maven-plugin from 3.1.1 to 3.2.0
#593.
-------------------------------------------------------------------
Mon Feb 19 14:58:13 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- 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 <fstrba@suse.com>
- Build with source and target levels 8
-------------------------------------------------------------------
Wed Oct 18 12:52:58 UTC 2023 - David Anes <david.anes@suse.com>
- Update to 2.14.0:
* Lots of new features, fixes and updates.
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.14.0
* Fixes bsc#1231298, CVE-2024-47554: untrusted input to XmlStreamReader
can lead to uncontrolled resource consumption
-------------------------------------------------------------------
Tue Apr 19 15:34:30 UTC 2022 - David Anes <david.anes@suse.com>
- Update to 2.11.0
* Lots of added functions, fixes and updates.
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.11.0
- Update to 2.10.0
* Lots of added functions, fixes and updates.
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.10.0
-------------------------------------------------------------------
Thu Jun 3 16:51:10 UTC 2021 - Pedro Monreal <pmonreal@suse.com>
- Update to 2.9.0
* Lots of added functions, fixes and updates.
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.9.0
-------------------------------------------------------------------
Tue Oct 27 11:49:20 UTC 2020 - Pedro Monreal <pmonreal@suse.com>
- Update to 2.8.0
* Lots of added functions, fixes and updates.
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.8.0
-------------------------------------------------------------------
Wed Jun 3 11:12:22 UTC 2020 - Pedro Monreal Gonzalez <pmonrealgonzalez@suse.com>
- Update to upstream version 2.7 (bsc#1184755, CVE-2021-29425)
* https://commons.apache.org/proper/commons-io/changes-report.html#a2.7
* Lots of bugfixes, updates and enhancements
* Java 8 or later is required
-------------------------------------------------------------------
Wed Mar 27 10:17:25 UTC 2019 - Fridrich Strba <fstrba@suse.com>
- Remove pom parent, since we don't use it when not building with
maven
-------------------------------------------------------------------
Tue Feb 26 17:34:25 UTC 2019 - Fridrich Strba <fstrba@suse.com>
- Update to upstream version 2.6
* many bugfixes, features and enhancenments, like
Automatic-Module-Name entry in manifest
* requires jdk7 or later
* see RELEASE-NOTES.txt for details
- Generated a build.xml to be able to build with ant
- Build with tests is now optional
- Removed patch:
* commons-io-version-property.patch
+ not needed anymore in this version
-------------------------------------------------------------------
Tue May 15 10:41:03 UTC 2018 - fstrba@suse.com
- Build with source and target 8 to prepare for a possible removal
of 1.6 compatibility
- Run fdupes on documentation
-------------------------------------------------------------------
Thu Sep 14 11:39:40 UTC 2017 - fstrba@suse.com
- Fix build with jdk9 by specifying source and target level 1.6
-------------------------------------------------------------------
Sun May 21 07:52:44 UTC 2017 - tchvatal@suse.com
- Remove unused depedencies
-------------------------------------------------------------------
Fri May 19 09:52:13 UTC 2017 - pcervinka@suse.com
- New build dependency: javapackages-local
-------------------------------------------------------------------
Wed Mar 18 09:45:59 UTC 2015 - tchvatal@suse.com
- Fix build with new javapackages-tools
-------------------------------------------------------------------
Mon Jul 7 14:53:05 UTC 2014 - tchvatal@suse.com
- Use junit not junit4
-------------------------------------------------------------------
Mon Sep 9 11:05:28 UTC 2013 - tchvatal@suse.com
- Move from jpackage-utils to javapackage-tools
-------------------------------------------------------------------
Wed Mar 20 12:45:16 UTC 2013 - mmeister@suse.com
- Added url as source.
Please see http://en.opensuse.org/SourceUrls
-------------------------------------------------------------------
Thu Oct 25 08:21:33 UTC 2012 - mvyskocil@suse.com
- update to the latest upstream version 2.4 (needed by fop 1.1)
* many bugfixes, features and enhancenments, like
* XmlStreamReader support for UTF-32
* requires jdk6 or later
* see RELEASE-NOTES.txt for details
- rename to apache-commons-io to stay compatible with upstream and fedora
- add commons-io-version-property.patch to fix the version in build.xml
-------------------------------------------------------------------
Mon Aug 25 10:26:55 CEST 2008 - mvyskocil@suse.cz
- target=1.5
- removed a build gcj support
- removed a javadoc %post/postun
- fixed a wrong end of line encoding
-------------------------------------------------------------------
Thu Mar 13 11:37:36 CET 2008 - mvyskocil@suse.cz
- Initial package created with version 1.3.2 (JPackage 1.7)

10345
apache-commons-io.keyring Normal file

File diff suppressed because it is too large Load Diff

83
apache-commons-io.spec Normal file
View File

@ -0,0 +1,83 @@
#
# spec file for package apache-commons-io
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define base_name io
%define short_name commons-%{base_name}
Name: apache-%{short_name}
Version: 2.18.0
Release: 0
Summary: Utilities to assist with developing IO functionality
License: Apache-2.0
Group: Development/Libraries/Java
URL: https://commons.apache.org/%{base_name}
Source0: https://archive.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz
Source1: https://archive.apache.org/dist/commons/%{base_name}/source/%{short_name}-%{version}-src.tar.gz.asc
Source2: %{name}-build.xml
Source100: https://downloads.apache.org/commons/KEYS#/%{name}.keyring
BuildRequires: ant >= 1.6
BuildRequires: fdupes
BuildRequires: java-devel >= 1.8
BuildRequires: javapackages-local >= 6
Provides: %{short_name} = %{version}-%{release}
Provides: jakarta-%{short_name} = %{version}-%{release}
Obsoletes: jakarta-%{short_name} < %{version}-%{release}
BuildArch: noarch
%description
Commons-IO contains utility classes, stream implementations,
file filters, and endian classes. It is a library of utilities
to assist with developing IO functionality.
%package javadoc
Summary: API documentation for %{name}
Group: Documentation/HTML
%description javadoc
This package provides %{summary}.
%prep
%setup -q -n %{short_name}-%{version}-src
cp %{SOURCE2} build.xml
%build
ant jar javadoc
%install
# jars
install -d -m 0755 %{buildroot}%{_javadir}
install -p -m 0644 target/%{short_name}-%{version}.jar \
%{buildroot}%{_javadir}/%{short_name}.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
%add_maven_depmap %{short_name}.pom %{short_name}.jar -a "org.apache.commons:commons-io"
# javadoc
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
%fdupes -s %{buildroot}%{_javadocdir}
%files -f .mfiles
%license LICENSE.txt NOTICE.txt
%doc RELEASE-NOTES.txt
%{_javadir}/%{name}.jar
%files javadoc
%doc %{_javadocdir}/%{name}
%changelog

BIN
commons-io-2.16.1-src.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEELbTx7w+nYezE6pNchv3H4qESYssFAmYPUwsACgkQhv3H4qES
Ysv5oQf/YZinFfV1MVn3FYenDNLq49p88JWf596c+oCHRTKxvj94F6hW+Ol9p2P/
lSbRGtyNE+kHZYXIk0U8/AtMjDpKwcKJrLdKg4jcK30QvFmidLgad45jDoyDcvsK
rIsReOVPAou253eIJILgKLiOvMPtwC9/0tfYmApX11Xp0OyJCO9MqI8aFkXwMQzN
xLwJ0ZthmM5oA524UR8rs0E03e/HWmeWMDwwDlnztjifqKG6ap8oe8MicDvY4FVR
p75IxT85rg0jv9MTkb1VPE4WA+WRc7PWxUVuinfTxXCTlkUumQmMqxxOE6nVPPSd
C+Qb4bNTVQgA9n6qCahFia292rjCSQ==
=z2kg
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d7c1772c6eb5a884f3a813702fbaabaac6581980bfae1984f2b4a51026e2227
size 652908

View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEELbTx7w+nYezE6pNchv3H4qESYssFAmbm/bkACgkQhv3H4qES
YssuLgf/RX7rznHl4Wdk3xT2mhKcxsAtm5y80GfAHtk1iqU7lDzhMxiN5jPQlyz1
AJCYeNqTwn6734cmEzNyvgIUOX3ogyscxBI22PPI+I3VSgw2k2gXOPu/3X06WoRU
3EM9ADaRzh5kME0T/hujKl9rnSbq4Oz6b1FeedS9Odi5wR4SvujhjcBEoHZP2fkj
0Ky3Yt7MMm+St3C+yXdU8ffes/hhiG6xbMC1LaYFNUSOz1Fg42EJh4DXUk5HIPgG
dz8sCsr/3f3Uj68AjTdiN7y8BDkDAlxN5v7mu2bIw+MEWIDMfma1QR/wZjMj0mlK
M/ZNSDC9KF5098mR0PcCIeTJMUJoJg==
=DEko
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c4652dd7ebce9f5e0d3cdd89ad199ab101d490680d37b696f98fccd5a0cf2933
size 670984

View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEELbTx7w+nYezE6pNchv3H4qESYssFAmc4ucQACgkQhv3H4qES
YsukGggAiXozeW54LgOGltf0kzgCmFCU0nbAgpaWh3VEl0Xwi+i33HkDVk6chC91
XwA3gNsrGJcRX2ka6TlYm1kjGBaoyhRGOECrUadzWWR1vRpFke7PQuNp+fVAuZ2Y
js1w4ow7/mbBodujDfh2fLsv/kmoRTQlWcN2S9rfbKU5okq1qB0JDqnQjnRQVfsF
+UEr1kQ+BoHtPvxBg9pgS6N4xrgvntpBMKLHXPuCJDH7VcZbxxbnT7HBmgkPll19
qkpTEtc77QDvPhD4SSpnpPK6bnlTLOjEG4SQejoB8IJIXYQ9Z+VejfAiVrXXSGvn
MF2o4rAv45iXIroYwSftXLzR3txULQ==
=0ngH
-----END PGP SIGNATURE-----