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