1<?xml version="1.0"?> 2<!-- 3Licensed to the Apache Software Foundation (ASF) under one or more 4contributor license agreements. See the NOTICE file distributed with 5this work for additional information regarding copyright ownership. 6The ASF licenses this file to You under the Apache License, Version 2.0 7(the "License"); you may not use this file except in compliance with 8the License. You may obtain a copy of the License at 9 10 http://www.apache.org/licenses/LICENSE-2.0 11 12Unless required by applicable law or agreed to in writing, software 13distributed under the License is distributed on an "AS IS" BASIS, 14WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15See the License for the specific language governing permissions and 16limitations under the License. 17--> 18<document> 19 <properties> 20 <title>Upgrade from 2.3 to 2.4</title> 21 <author email="[email protected]">Commons Documentation Team</author> 22 </properties> 23<body> 24 25<section name="Upgrade"> 26<p> 27These are the release notes and advice for upgrading Commons-IO from 28version 2.3 to version 2.4 29<source> 30Commons IO is a package of Java utility classes like java.io. 31Classes in this package are considered to be so standard and of such high 32reuse as to justify existence in java.io. 33 34The Commons IO library contains utility classes, stream implementations, file filters, 35file comparators, endian transformation classes, and much more. 36 37============================================================================== 38Apache Commons IO Version 2.4-SNAPSHOT 39============================================================================== 40 41Changes in this version include: 42 43New features: 44o IO-269: Tailer locks file from deletion/rename on Windows. Thanks to sebb. 45o IO-333: Export OSGi packages at version 1.x in addition to 2.x. Thanks to fmeschbe. 46o IO-320: Add XmlStreamReader support for UTF-32. Thanks to ggregory. 47o IO-331: BOMInputStream wrongly detects UTF-32LE_BOM files as UTF-16LE_BOM files in method getBOM(). Thanks to ggregory. 48o IO-327: Add byteCountToDisplaySize(BigInteger). Thanks to ggregory. 49o IO-326: Add new FileUtils.sizeOf[Directory] APIs to return BigInteger. Thanks to ggregory. 50o IO-325: Add IOUtils.toByteArray methods to work with URL and URI. Thanks to raviprak. 51o IO-324: Add missing Charset sister APIs to method that take a String charset name. Thanks to raviprak. 52 53Fixed Bugs: 54o IO-279: Tailer erroneously considers file as new. Thanks to Sergio Bossa, Chris Baron. 55o IO-335: Tailer#readLines - incorrect CR handling. 56o IO-334: FileUtils.toURLs throws NPE for null parameter; document the behavior. 57o IO-332: Improve tailer's reading performance. Thanks to liangly. 58o IO-279: Improve Tailer performance with buffered reads (see IO-332). 59o IO-329: FileUtils.writeLines uses unbuffered IO. Thanks to tivv. 60o IO-319: FileUtils.sizeOfDirectory follows symbolic links. Thanks to raviprak. 61 62Compatibility with 2.3: 63Binary compatible: Yes. 64Source compatible: Yes. 65Semantic compatible: Yes. 66 67Compatibility with 2.2 and 1.4: 68Binary compatible: Yes. 69Source compatible: No, see the rare case in https://issues.apache.org/jira/browse/IO-318. 70Semantic compatible: No, see the rare case in https://issues.apache.org/jira/browse/IO-318. 71 72Commons IO 2.4 requires JDK 1.6 or later. 73Commons IO 2.3 requires JDK 1.6 or later. 74Commons IO 2.2 requires JDK 1.5 or later. 75Commons IO 1.4 requires JDK 1.3 or later. 76</source> 77</p> 78</section> 79 80</body> 81</document> 82