xref: /aosp_15_r20/external/apache-commons-io/src/site/xdoc/upgradeto2_2.xml (revision 0c4d7b72e49a04598d65c566f44504b95342d75a)
1*0c4d7b72SSadaf Ebrahimi<?xml version="1.0"?>
2*0c4d7b72SSadaf Ebrahimi<!--
3*0c4d7b72SSadaf EbrahimiLicensed to the Apache Software Foundation (ASF) under one or more
4*0c4d7b72SSadaf Ebrahimicontributor license agreements.  See the NOTICE file distributed with
5*0c4d7b72SSadaf Ebrahimithis work for additional information regarding copyright ownership.
6*0c4d7b72SSadaf EbrahimiThe ASF licenses this file to You under the Apache License, Version 2.0
7*0c4d7b72SSadaf Ebrahimi(the "License"); you may not use this file except in compliance with
8*0c4d7b72SSadaf Ebrahimithe License.  You may obtain a copy of the License at
9*0c4d7b72SSadaf Ebrahimi
10*0c4d7b72SSadaf Ebrahimi     http://www.apache.org/licenses/LICENSE-2.0
11*0c4d7b72SSadaf Ebrahimi
12*0c4d7b72SSadaf EbrahimiUnless required by applicable law or agreed to in writing, software
13*0c4d7b72SSadaf Ebrahimidistributed under the License is distributed on an "AS IS" BASIS,
14*0c4d7b72SSadaf EbrahimiWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15*0c4d7b72SSadaf EbrahimiSee the License for the specific language governing permissions and
16*0c4d7b72SSadaf Ebrahimilimitations under the License.
17*0c4d7b72SSadaf Ebrahimi-->
18*0c4d7b72SSadaf Ebrahimi<document>
19*0c4d7b72SSadaf Ebrahimi <properties>
20*0c4d7b72SSadaf Ebrahimi  <title>Upgrade from 2.1 to 2.2</title>
21*0c4d7b72SSadaf Ebrahimi  <author email="[email protected]">Commons Documentation Team</author>
22*0c4d7b72SSadaf Ebrahimi </properties>
23*0c4d7b72SSadaf Ebrahimi<body>
24*0c4d7b72SSadaf Ebrahimi
25*0c4d7b72SSadaf Ebrahimi<section name="Upgrade">
26*0c4d7b72SSadaf Ebrahimi<p>
27*0c4d7b72SSadaf EbrahimiThese are the release notes and advice for upgrading Commons-IO from
28*0c4d7b72SSadaf Ebrahimiversion 2.1 to version 2.2
29*0c4d7b72SSadaf Ebrahimi<source>
30*0c4d7b72SSadaf EbrahimiCommons IO is a package of Java utility classes like java.io.
31*0c4d7b72SSadaf EbrahimiClasses in this package are considered to be so standard and of such high
32*0c4d7b72SSadaf Ebrahimireuse as to justify existence in java.io.
33*0c4d7b72SSadaf Ebrahimi
34*0c4d7b72SSadaf EbrahimiCommons IO contains utility classes, stream implementations, file filters,
35*0c4d7b72SSadaf Ebrahimifile comparators, endian transformation classes, and much more.
36*0c4d7b72SSadaf Ebrahimi
37*0c4d7b72SSadaf Ebrahimi==============================================================================
38*0c4d7b72SSadaf EbrahimiCommons IO Package Version 2.2
39*0c4d7b72SSadaf Ebrahimi==============================================================================
40*0c4d7b72SSadaf Ebrahimi
41*0c4d7b72SSadaf EbrahimiChanges in this version include:
42*0c4d7b72SSadaf Ebrahimi
43*0c4d7b72SSadaf EbrahimiNew features:
44*0c4d7b72SSadaf Ebrahimio IO-305:  New copyLarge() method in IOUtils that takes additional offset, length arguments Thanks to Manoj Mokashi.
45*0c4d7b72SSadaf Ebrahimio IO-287:  Use terabyte (TB) , petabyte (PB) and exabyte (EB) in FileUtils.byteCountToDisplaySize(long size) Thanks to Ron Kuris, Gary Gregory.
46*0c4d7b72SSadaf Ebrahimio IO-173:  FileUtils.listFiles() doesn't return directories Thanks to Marcos Vinícius da Silva.
47*0c4d7b72SSadaf Ebrahimio IO-297:  CharSequenceInputStream to efficiently stream content of a CharSequence Thanks to Oleg Kalnichevski.
48*0c4d7b72SSadaf Ebrahimio IO-304:  The second constructor of Tailer class does not pass 'delay' to the third one Thanks to liangly.
49*0c4d7b72SSadaf Ebrahimio IO-303:  TeeOutputStream does not call branch.close() when main.close() throws an exception Thanks to fabian.barney.
50*0c4d7b72SSadaf Ebrahimio IO-302:  ArrayIndexOutOfBoundsException in BOMInputStream when reading a file without BOM multiple times Thanks to jsteuerwald, detinho.
51*0c4d7b72SSadaf Ebrahimio IO-301:  Add IOUtils.closeQuietly(Selector) necessary Thanks to kaykay.unique.
52*0c4d7b72SSadaf Ebrahimio IO-292:  IOUtils.closeQuietly() should take a ServerSocket as a parameter Thanks to sebb.
53*0c4d7b72SSadaf Ebrahimio IO-290:  Add read/readFully methods to IOUtils Thanks to sebb.
54*0c4d7b72SSadaf Ebrahimio IO-288:  Supply a ReversedLinesFileReader Thanks to Georg Henzler.
55*0c4d7b72SSadaf Ebrahimio IO-291:  Add new function FileUtils.directoryContains. Thanks to ggregory.
56*0c4d7b72SSadaf Ebrahimio IO-275:  FileUtils.contentEquals and IOUtils.contentEquals - Add option to ignore "line endings"
57*0c4d7b72SSadaf Ebrahimi        Added contentEqualsIgnoreEOL methods to both classes Thanks to CJ Aspromgos.
58*0c4d7b72SSadaf Ebrahimi
59*0c4d7b72SSadaf EbrahimiFixed Bugs:
60*0c4d7b72SSadaf Ebrahimio IO-300:  FileUtils.moveDirectoryToDirectory removes source directory if destination is a subdirectory
61*0c4d7b72SSadaf Ebrahimio IO-307:  ReaderInputStream#read(byte[] b, int off, int len) should check for valid parameters
62*0c4d7b72SSadaf Ebrahimio IO-306:  ReaderInputStream#read(byte[] b, int off, int len) should always return 0 for length == 0
63*0c4d7b72SSadaf Ebrahimio IO-276:  "FileUtils#deleteDirectoryOnExit(File)" does not work Thanks to nkami.
64*0c4d7b72SSadaf Ebrahimio IO-273:  BoundedInputStream.read() treats max differently from BoundedInputStream.read(byte[]...) Thanks to sebb.
65*0c4d7b72SSadaf Ebrahimio IO-298:  Various methods of class 'org.apache.commons.io.FileUtils' incorrectly suppress 'java.io.IOException' Thanks to Christian Schulte.
66*0c4d7b72SSadaf Ebrahimi
67*0c4d7b72SSadaf EbrahimiChanges:
68*0c4d7b72SSadaf Ebrahimio IO-296:  ReaderInputStream optimization: more efficient reading of small chunks of data Thanks to Oleg Kalnichevski.
69*0c4d7b72SSadaf Ebrahimi
70*0c4d7b72SSadaf EbrahimiCompatibility with 2.1 and 1.4:
71*0c4d7b72SSadaf EbrahimiBinary compatible: Yes
72*0c4d7b72SSadaf EbrahimiSource compatible: Yes
73*0c4d7b72SSadaf EbrahimiSemantic compatible: Yes. Check the bug fixes section for semantic bug fixes
74*0c4d7b72SSadaf Ebrahimi
75*0c4d7b72SSadaf EbrahimiCommons IO 2.2 requires a minimum of JDK 1.5.
76*0c4d7b72SSadaf EbrahimiCommons IO 1.4 requires a minimum of JDK 1.3.
77*0c4d7b72SSadaf Ebrahimi</source>
78*0c4d7b72SSadaf Ebrahimi</p>
79*0c4d7b72SSadaf Ebrahimi</section>
80*0c4d7b72SSadaf Ebrahimi
81*0c4d7b72SSadaf Ebrahimi</body>
82*0c4d7b72SSadaf Ebrahimi</document>
83