Add release notes for 3.6 release
Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/046ccf10 Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/046ccf10 Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/046ccf10 Branch: refs/heads/release Commit: 046ccf10bdfc6425afb120b37c0dfb23646a3471 Parents: f0f1cc6 Author: Benedikt Ritter <brit...@apache.org> Authored: Mon Apr 17 14:05:42 2017 +0200 Committer: Benedikt Ritter <brit...@apache.org> Committed: Mon Apr 17 14:13:55 2017 +0200 ---------------------------------------------------------------------- RELEASE-NOTES.txt | 125 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 121 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-lang/blob/046ccf10/RELEASE-NOTES.txt ---------------------------------------------------------------------- diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt index 141203a..381ad17 100644 --- a/RELEASE-NOTES.txt +++ b/RELEASE-NOTES.txt @@ -1,15 +1,16 @@ Apache Commons Lang - Version 3.5 + Version 3.6 Release Notes INTRODUCTION: -This document contains the release notes for the 3.5 version of +This document contains the release notes for the 3.6 version of Apache Commons Lang as well as a history all changes in the Commons Lang 3.x release line. Commons Lang is a set of utility functions and reusable -components that should be of use in any Java environment. Commons Lang 3.5 at -least requires Java 6.0. +components that should be of use in any Java environment. Commons Lang 3.6 at +least requires Java 7. Note that this has changed from Commons Lang 3.5, which +only required Java 1.6. For the advice on upgrading from 2.x to 3.x, see the following page: @@ -20,6 +21,122 @@ HIGHLIGHTS Some of the highlights in this release include: +o The class org.apache.commons.lang3.concurrent.Memoizer is an implementation + of the Memoizer pattern as shown in + Goetz, Brian et al. (2006) - Java Concurrency in Practice, p. 108. +o The package org.apache.commons.lang3.concurrent.annotation has been added. + It provides annotations which help developers document the concurrency + properties of their code. +o The class org.apache.commons.lang3.ArchUtils has been added. ArchUtils is + a utility class for the "os.arch" system property. + +DEPRECATIONS +============ + +The Apache Commons Community has recently set up the Commons Text component +as a home for algorithms working on strings. For this reason most of the string +focused functionality in Commons Lang has been deprecated and moved to +Commons Text. This includes: + +o Most of the classes in the org.apache.commons.lang3.text package +o org.apache.commons.lang3.StringEscapeUtils +o org.apache.commons.lang3.StringUtils.getJaroWinklerDistance and + org.apache.commons.lang3.StringUtils.getLevenshteinDistance + +For more information see the Commons Text website: + + http://commons.apache.org/text + +BUILDING ON JAVA 9 +================== + +The build problems present in the 3.5 release have been resolved. Building +Commons Lang 3.6 should work out of the box with the latest Java 9 EA build. +Please report any Java 9 related issues at: + + https://issues.apache.org/jira/browse/LANG + +NEW FEATURES +============ + +o LANG-1299: Add method for converting string to an array of code points. +o LANG-660: Add methods to insert arrays into arrays at an index. +o LANG-1034: Add support for recursive comparison to + EqualsBuilder#reflectionEquals. Thanks to Yathos UG. +o LANG-1067: Add a reflection-based variant of DiffBuilder. +o LANG-740: Implementation of a Memomizer. Thanks to James Sawle. +o LANG-1258: Add ArrayUtils#toStringArray method. + Thanks to IG, Grzegorz Rożniecki. +o LANG-1160: StringUtils#abbreviate should support 'custom ellipses' parameter. +o LANG-1293: Add StringUtils#isAllEmpty and #isAllBlank methods. + Thanks to Pierre Templier, Martin Tarjanyi. +o LANG-1291: Provide annotations to document thread safety. +o LANG-1313: Add ArchUtils - An utility class for the "os.arch" system property. + Thanks to Tomschi. + +FIXED BUGS +========== + +o LANG-1312: LocaleUtils#toLocale does not support language followed by UN M.49 + numeric-3 area code followed by variant. +o LANG-1300: Clarify or improve behaviour of int-based indexOf methods in + StringUtils. Thanks to Mark Dacek. +o LANG-1286: RandomStringUtils random method can overflow and return characters + outside of specified range. +o LANG-1292: WordUtils.wrap throws StringIndexOutOfBoundsException. +o LANG-1287: RandomStringUtils#random can enter infinite loop if end parameter + is to small. Thanks to Ivan Morozov. +o LANG-1285: NullPointerException in FastDateParser$TimeZoneStrategy. + Thanks to Francesco Chicchiriccò. +o LANG-1281: Javadoc of StringUtils.ordinalIndexOf is contradictory. + Thanks to Andreas Lundblad. +o LANG-1188: StringUtils#join(T...): warning: [unchecked] Possible heap + pollution from parameterized vararg type T. +o LANG-1144: Multiple calls of + org.apache.commons.lang3.concurrent.LazyInitializer.initialize() + are possible. Thanks to Waldemar Maier, Gary Gregory. +o LANG-1276: StrBuilder#replaceAll ArrayIndexOutOfBoundsException. + Thanks to Andy Klimczak. +o LANG-1278: BooleanUtils javadoc issues. Thanks to Duke Yin. +o LANG-1070: ArrayUtils#add confusing example in javadoc. + Thanks to Paul Pogonyshev. +o LANG-1271: StringUtils#isAnyEmpty and #isAnyBlank should return false for an + empty array. Thanks to Pierre Templier. +o LANG-1155: Add StringUtils#unwrap. Thanks to Saif Asif, Thiago Andrade. +o LANG-1311: TypeUtils.toString() doesn't handle primitive and Object arrays + correctly. Thanks to Aaron Digulla. +o LANG-1312: LocaleUtils#toLocale does not support language followed by UN M.49 + numeric-3 area code. +o LANG-1265: Build failures when building with Java 9 EA. +o LANG-1314: javadoc creation broken with Java 8. Thanks to Allon Murienik. +o LANG-1310: MethodUtils.invokeMethod throws ArrayStoreException if using + varargs arguments and smaller types than the method defines. + Thanks to Don Jeba. + +CHANGES +======= + +o LANG-1290: Increase test coverage of org.apache.commons.lang3.ArrayUtils. + Thanks to Andrii Abramov. +o LANG-1274: StrSubstitutor should state its thread safety. +o LANG-1277: StringUtils#getLevenshteinDistance reduce memory consumption. + Thanks to yufcuy. +o LANG-1279: Update Java requirement from Java 6 to 7. +o LANG-1143: StringUtils should use toXxxxCase(int) rather than + toXxxxCase(char). Thanks to sebb. +o LANG-1297: Add SystemUtils.getHostName() API. +o LANG-1301: Moving apache-rat-plugin configuration into pluginManagement. + Thanks to Karl Heinz Marbaise. +o LANG-1316: Deprecate classes/methods moved to commons-text. + + Release Notes for version 3.5 + + +HIGHLIGHTS +========== + +Some of the highlights in this release include: + o Added Java 9 detection to org.apache.commons.lang3.SystemUtils. o Support for shifting and swapping elements in org.apache.commons.lang3.ArrayUtils.