I didn’t read back over the moving a component out of the sandbox bit, so I figured I’d just go with the formality.
> On Jan 4, 2018, at 12:33 PM, Gary Gregory <garydgreg...@gmail.com> wrote: > > Hi Rob, > > I do not think we need a formal VOTE until we want to release, but why not. > Reusing COMMONSITE makes sense for now. > > Go for it. > > Gary > >> On Thu, Jan 4, 2018 at 9:51 AM, Rob Tompkins <chtom...@gmail.com> wrote: >> >> >> >>> On Jan 4, 2018, at 11:45 AM, Gary Gregory <garydgreg...@gmail.com> >> wrote: >>> >>> On Thu, Jan 4, 2018 at 9:43 AM, Rob Tompkins <chtom...@gmail.com >> <mailto:chtom...@gmail.com>> wrote: >>> >>>> So with comments, I’m thinking I’ll submit a component vote. Any >>>> opposition? >>>> >>> >>> Do you already have a git repo, JIRA project and all that? >> >> Oh not at all….I’m going to put it up for a vote before creating any >> repos. Before I start all that. I was thinking that we’d use COMMONSSITE as >> the jira for it because that’s what we use for the [build-plugin]….thoughts? >> >> -Rob >> >>> >>> Gary >>> >>>> >>>>> On Jan 4, 2018, at 11:28 AM, Gary Gregory <garydgreg...@gmail.com> >>>> wrote: >>>>> >>>>> That looks good. Thank you Rob! >>>>> >>>>> Gary >>>>> >>>>>> On Thu, Jan 4, 2018 at 5:47 AM, Rob Tompkins <chtom...@gmail.com> >>>> wrote: >>>>>> >>>>>> @Gary - Below is the result from my release plugin with [lang3]. Give >>>> it a >>>>>> looking over and let me know what you think. >>>>>> >>>>>> -Rob >>>>>> >>>>>>> On Jan 4, 2018, at 7:45 AM, chtom...@apache.org wrote: >>>>>>> >>>>>>> Author: chtompki >>>>>>> Date: Thu Jan 4 12:45:36 2018 >>>>>>> New Revision: 24009 >>>>>>> >>>>>>> Log: >>>>>>> Staging release: commons-lang3, version: 3.8-SNAPSHOT >>>>>>> >>>>>>> Added: >>>>>>> dev/commons/lang/RELEASE-NOTES.txt >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.tar.gz >>>>>> (with props) >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.tar.gz.asc >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.tar.gz.md5 >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >> bin.tar.gz.sha1 >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip >> (with >>>>>> props) >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.asc >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.md5 >>>>>>> dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.sha1 >>>>>>> dev/commons/lang/site.zip (with props) >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.tar.gz >>>>>> (with props) >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.tar.gz.asc >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.tar.gz.md5 >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.tar.gz.sha1 >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip (with >>>>>> props) >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.asc >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.md5 >>>>>>> dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.sha1 >>>>>>> >>>>>>> Added: dev/commons/lang/RELEASE-NOTES.txt >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/RELEASE-NOTES.txt (added) >>>>>>> +++ dev/commons/lang/RELEASE-NOTES.txt Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1,1176 @@ >>>>>>> + >>>>>>> +Licensed to the Apache Software Foundation (ASF) under one or more >>>>>>> +contributor license agreements. See the NOTICE file distributed >> with >>>>>>> +this work for additional information regarding copyright ownership. >>>>>>> +The ASF licenses this file to You under the Apache License, Version >>>> 2.0 >>>>>>> +(the "License"); you may not use this file except in compliance with >>>>>>> +the License. You may obtain a copy of the License at >>>>>>> + >>>>>>> +http://www.apache.org/licenses/LICENSE-2.0 >>>>>>> + >>>>>>> +Unless required by applicable law or agreed to in writing, software >>>>>>> +distributed under the License is distributed on an "AS IS" BASIS, >>>>>>> +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >>>> implied. >>>>>>> +See the License for the specific language governing permissions and >>>>>>> +limitations under the License. >>>>>>> + >>>>>>> + >>>>>>> + Apache Commons Lang >>>>>>> + Version 3.7 >>>>>>> + Release Notes >>>>>>> + >>>>>>> + >>>>>>> +INTRODUCTION: >>>>>>> + >>>>>>> +This document contains the release notes for the 3.7 version of >> Apache >>>>>> Commons Lang. >>>>>>> +Commons Lang is a set of utility functions and reusable components >>>> that >>>>>> should be of use in any >>>>>>> +Java environment. >>>>>>> + >>>>>>> +Lang 3.0 and onwards now targets Java 5.0, making use of features >> that >>>>>> arrived with Java 5.0 such as generics, >>>>>>> +variable arguments, autoboxing, concurrency and formatted output. >>>>>>> + >>>>>>> +For the advice on upgrading from 2.x to 3.x, see the following page: >>>>>>> + >>>>>>> + http://commons.apache.org/lang/article3_0.html >>>>>>> + >>>>>>> +Apache Commons Lang, a package of Java utility classes for the >>>>>>> +classes that are in java.lang's hierarchy, or are considered to be >> so >>>>>>> +standard as to justify existence in java.lang. >>>>>>> + >>>>>>> +New features and bug fixes. Requires Java 7, supports Java 8, 9, 10. >>>>>>> + >>>>>>> +Changes in this version include: >>>>>>> + >>>>>>> +New features: >>>>>>> +o LANG-1355: TimeZone.getTimeZone() in FastDateParser causes >> resource >>>>>> contention (PR #296.) Thanks to Chas Honton. >>>>>>> +o LANG-1360: Add methods to ObjectUtils to get various forms of >> class >>>>>> names in a null-safe manner Thanks to Gary Gregory. >>>>>>> + >>>>>>> +Fixed Bugs: >>>>>>> +o LANG-1362: Fix tests DateUtilsTest for Java 9 with en_GB locale >>>>>> Thanks to Stephen Colebourne. >>>>>>> +o LANG-1365: Fix NullPointerException in isJavaVersionAtLeast on >> Java >>>>>> 10, add SystemUtils.IS_JAVA_10, add JavaVersion.JAVA_10 Thanks to Gary >>>>>> Gregory. >>>>>>> +o LANG-1348: StackOverflowError on TypeUtils.toString(...) for a >>>>>> generic return type of Enum.valueOf Thanks to mbusso. >>>>>>> +o LANG-1350: ConstructorUtils.invokeConstructor(Class, Object...) >>>>>> regression Thanks to Brett Kail. >>>>>>> +o LANG-1349: EqualsBuilder#isRegistered: swappedPair construction >> bug >>>>>> Thanks to Naman Nigam. >>>>>>> +o LANG-1357: org.apache.commons.lang3.time.FastDateParser should >> use >>>>>> toUpperCase(Locale) Thanks to BruceKuiLiu. >>>>>>> + >>>>>>> +Changes: >>>>>>> +o LANG-1358: Improve StringUtils#replace throughput Thanks to >> Stephane >>>>>> Landelle. >>>>>>> +o LANG-1346: Remove deprecation from RandomStringUtils >>>>>>> +o LANG-1361: ExceptionUtils.getThrowableList() is using deprecated >>>>>> ExceptionUtils.getCause() Thanks to Ana. >>>>>>> + >>>>>>> + >>>>>>> +Historical list of changes: http://commons.apache.org/ >>>>>> proper/commons-lang/changes-report.html >>>>>>> + >>>>>>> +For complete information on Apache Commons Lang, including >>>> instructions >>>>>> on how to submit bug reports, >>>>>>> +patches, or suggestions for improvement, see the Apache Apache >> Commons >>>>>> Lang website: >>>>>>> + >>>>>>> +http://commons.apache.org/proper/commons-lang/ >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Apache Commons Lang >>>>>>> + Version 3.6 >>>>>>> + Release Notes >>>>>>> + >>>>>>> + >>>>>>> +INTRODUCTION: >>>>>>> + >>>>>>> +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.6 at >>>>>>> +least requires Java 7.0. 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: >>>>>>> + >>>>>>> + http://commons.apache.org/lang/article3_0.html >>>>>>> + >>>>>>> +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 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 All classes in the org.apache.commons.lang3.text and the >>>>>>> + org.apache.commons.lang3.text.translate packages >>>>>>> +o org.apache.commons.lang3.StringEscapeUtils >>>>>>> +o org.apache.commons.lang3.RandomStringUtils >>>>>>> +o The methods 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 >>>>>>> + >>>>>>> +The class org.apache.commons.lang3.CharEncoding has been deprecated >>>> in >>>>>> favor of >>>>>>> +java.nio.charset.StandardCharsets. >>>>>>> + >>>>>>> +The following methods have been deprecated in >>>>>>> +org.apache.commons.lang3.ArrayUtils in favor of the corresponding >>>>>> insert >>>>>>> +methods. Note that the handling for null inputs differs between add >>>> and >>>>>> insert. >>>>>>> + >>>>>>> +o add(boolean[], int, boolean) -> insert(int, boolean[], boolean...) >>>>>>> +o add(byte[], int, boolean) -> insert(int, byte[], byte...) >>>>>>> +o add(char[], int, boolean) -> insert(int, char[], char...) >>>>>>> +o add(double[], int, boolean) -> insert(int, double[], double...) >>>>>>> +o add(float[], int, boolean) -> insert(int, float[], float...) >>>>>>> +o add(int[], int, boolean) -> insert(int, int[], int...) >>>>>>> +o add(long[], int, boolean) -> insert(int, long[], long...) >>>>>>> +o add(short[], int, boolean) -> insert(int, short[], short...) >>>>>>> +o add(T[], int, boolean) -> insert(int, T[], T...) >>>>>>> + >>>>>>> + >>>>>>> +COMPATIBILITY WITH JAVA 9 >>>>>>> +================== >>>>>>> + >>>>>>> +The MANIFEST.MF now contains an additional entry: >>>>>>> + >>>>>>> + Automatic-Module-Name: org.apache.commons.lang3 >>>>>>> + >>>>>>> +This should make it possible to use Commons Lang 3.6 as a module in >>>> the >>>>>> Java 9 >>>>>>> +module system. For more information see the corresponding issue and >>>> the >>>>>>> +referenced mailing list discussions: >>>>>>> + >>>>>>> + https://issues.apache.org/jira/browse/LANG-1338 >>>>>>> + >>>>>>> +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-1336: Add NUL Byte To CharUtils. Thanks to Beluga Behr. >>>>>>> +o LANG-1304: Add method in StringUtils to determine if string >> contains >>>>>> both >>>>>>> + mixed cased characters. Thanks to Andy Klimczak. >>>>>>> +o LANG-1325: Increase test coverage of ToStringBuilder class to >> 100%. >>>>>>> + Thanks to Arshad Basha. >>>>>>> +o LANG-1307: Add a method in StringUtils to extract only digits out >> of >>>>>> input >>>>>>> + string. Thanks to Arshad Basha. >>>>>>> +o LANG-1256: Add JMH maven dependencies. Thanks to C0rWin. >>>>>>> +o LANG-1167: Add null filter to ReflectionToStringBuilder. >>>>>>> + Thanks to Mark Dacek. >>>>>>> +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-1313: Add ArchUtils - An utility class for the "os.arch" >> system >>>>>> property. >>>>>>> + Thanks to Tomschi. >>>>>>> +o LANG-1272: Add shuffle methods to ArrayUtils. >>>>>>> +o LANG-1317: Add MethodUtils#findAnnotation and extend >>>>>>> + MethodUtils#getMethodsWithAnnotation for non-public, >>>>>> super-class >>>>>>> + and interface methods. Thanks to Yasser Zamani. >>>>>>> +o LANG-1331: Add ImmutablePair.nullPair(). >>>>>>> +o LANG-1332: Add ImmutableTriple.nullTriple(). >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +========== >>>>>>> + >>>>>>> +o LANG-1337: Fix test failures in IBM JDK 8 for ToStringBuilderTest. >>>>>>> +o LANG-1319: MultilineRecursiveToStringStyle StackOverflowError >> when >>>>>> object is >>>>>>> + an array. >>>>>>> +o LANG-1320: 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-1338: Add Automatic-Module-Name MANIFEST entry for Java 9 >>>>>>> + compatibility. >>>>>>> +o LANG-1334: Deprecate CharEncoding in favour of >>>>>>> + java.nio.charset.StandardCharsets. >>>>>>> +o LANG-1110: Implement HashSetvBitSetTest using JMH. >>>>>>> + Thanks to Bruno P. Kinoshita. >>>>>>> +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. >>>>>>> +o New methods for generating random strings from different character >>>>>> classes >>>>>>> + including alphabetic, alpha-numeric and ASCII added to >>>>>>> + org.apache.commons.lang3.RandomStringUtils. >>>>>>> +o Numerous extensions to org.apache.commons.lang3.StringUtils >>>> including >>>>>>> + null safe compare variants, more remove and replace variants, >>>>>> rotation and >>>>>>> + truncation. >>>>>>> +o Added org.apache.commons.lang3.ThreadUtils - a utility class to >>>> work >>>>>> with >>>>>>> + instances of java.lang.Thread and java.lang.ThreadGroup. >>>>>>> +o Added annotations @EqualsExclude, @HashCodeExclude and >>>>>> @ToStringEclude to >>>>>>> + mark fields which should be ignored by the reflective builders >> in >>>>>> the >>>>>>> + org.apache.commons.lang3.builder package. >>>>>>> +o Support for various modify and retrieve value use cases added to >> the >>>>>> classes >>>>>>> + in org.apache.commons.lang3.mutable. >>>>>>> + >>>>>>> +COMPATIBILITY >>>>>>> +============= >>>>>>> + >>>>>>> +Apache Commons Lang 3.5 is binary compatible with the 3.4 release. >>>> Users >>>>>>> +should not experience any problems when upgrading from 3.4 to 3.5. >>>>>>> + >>>>>>> +There has been an addition to the org.apache.commons.lang3.time. >>>>>> DatePrinter >>>>>>> +interface: >>>>>>> + >>>>>>> +o Added method 'public boolean parse(java.lang.String, >>>>>> java.text.ParsePosition, >>>>>>> + java.util.Calendar)' >>>>>>> +o Added method 'public java.lang.Appendable format(long, >>>>>> java.lang.Appendable)' >>>>>>> +o Added method 'public java.lang.Appendable format(java.util.Date, >>>>>>> + java.lang.Appendable)' >>>>>>> +o Added method 'public java.lang.Appendable >> format(java.util.Calendar, >>>>>>> + java.lang.Appendable)' >>>>>>> + >>>>>>> +For this reason 3.5 is not strictly source compatible to 3.4. Since >>>> the >>>>>>> +DatePrinter interface is not meant to be implemented by clients, >> this >>>>>>> +change it not considered to cause any problems. >>>>>>> + >>>>>>> +JAVA 9 SUPPORT >>>>>>> +============== >>>>>>> + >>>>>>> +Java 9 introduces a new version-string scheme. Details of this new >>>>>> scheme are >>>>>>> +documented in JEP-223 (http://openjdk.java.net/jeps/223). In order >> to >>>>>> support >>>>>>> +JEP-223 two classes had to be changed: >>>>>>> + >>>>>>> +o org.apache.commons.lang3.JavaVersion >>>>>>> + deprecated enum constant JAVA_1_9 >>>>>>> + introduced enum constant JAVA_9 >>>>>>> + >>>>>>> +o org.apache.commons.lang3.SystemUtils >>>>>>> + deprecated constant IS_JAVA_1_9 >>>>>>> + introduced constant IS_JAVA_9 >>>>>>> + >>>>>>> +For more information see LANG-1197 >>>>>>> +(https://issues.apache.org/jira/browse/LANG-1197). All other APIs >> are >>>>>> expected >>>>>>> +to work with Java 9. >>>>>>> + >>>>>>> +BUILDING ON JAVA 9 >>>>>>> +================== >>>>>>> + >>>>>>> +Java 8 introduced the Unicode Consortium's Common Locale Data >>>>>> Repository as >>>>>>> +alternative source for locale data. Java 9 will use the CLDR >> provider >>>> as >>>>>>> +default provider for locale data (see http://openjdk.java.net/jeps/ >>>> 252). >>>>>> This >>>>>>> +causes an number of locale-sensitive test in Commons Lang to fail. >> In >>>>>> order >>>>>>> +to build Commons Lang 3.5 on Java 9, the locale provider has to be >> set >>>>>> to >>>>>>> +'JRE': >>>>>>> + >>>>>>> + mvn -Djava.locale.providers=JRE clean install >>>>>>> + >>>>>>> +We are currently investigating ways to support building on Java 9 >>>>>> without >>>>>>> +further configuration. For more information see: >>>>>>> +https://issues.apache.org/jira/browse/LANG-1265 >>>>>>> + >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-1275: Added a tryAcquire() method to TimedSemaphore. >>>>>>> +o LANG-1255: Add DateUtils.toCalendar(Date, TimeZone). Thanks to >>>>>> Kaiyuan Wang. >>>>>>> +o LANG-1023: Add WordUtils.wrap overload with customizable breakable >>>>>> character. >>>>>>> + Thanks to Marko Bekhta. >>>>>>> +o LANG-787: Add method removeIgnoreCase(String, String) to >>>>>> StringUtils. Thanks >>>>>>> + to Gokul Nanthakumar C. >>>>>>> +o LANG-1224: Extend RandomStringUtils with methods that generate >>>> strings >>>>>>> + between a min and max length. Thanks to Caleb Cushing. >>>>>>> +o LANG-1257: Add APIs StringUtils.wrapIfMissing(String, >> char|String). >>>>>> Thanks to >>>>>>> + Gary Gregory. >>>>>>> +o LANG-1253: Add RandomUtils#nextBoolean() method. Thanks to adilek. >>>>>>> +o LANG-1085: Add a circuit breaker implementation. Thanks to Oliver >>>>>> Heger and >>>>>>> + Bruno P. Kinoshita. >>>>>>> +o LANG-1013: Add StringUtils.truncate(). Thanks to Thiago Andrade. >>>>>>> +o LANG-1195: Enhance MethodUtils to allow invocation of private >>>>>> methods. Thanks >>>>>>> + to Derek C. Ashmore. >>>>>>> +o LANG-1189: Add getAndIncrement/getAndDecrement/getAndAdd/ >>>>>> incrementAndGet/ >>>>>>> + decrementAndGet/addAndGet in Mutable* classes. Thanks >> to >>>>>>> + Haiyang Li and Matthew Bartenschlag. >>>>>>> +o LANG-1225: Add RandomStringUtils#randomGraph and #randomPrint >> which >>>>>> match >>>>>>> + corresponding regular expression class. Thanks to Caleb >>>>>> Cushing. >>>>>>> +o LANG-1223: Add StopWatch#getTime(TimeUnit). Thanks to Nick Manley. >>>>>>> +o LANG-781: Add methods to ObjectUtils class to check for null >>>>>> elements in the >>>>>>> + array. Thanks to Krzysztof Wolny. >>>>>>> +o LANG-1228: Prefer Throwable.getCause() in >> ExceptionUtils.getCause(). >>>>>>> + Thanks to Brad Hess. >>>>>>> +o LANG-1233: DiffBuilder add method to allow appending from a >>>>>> DiffResult. >>>>>>> + Thanks to Nick Manley. >>>>>>> +o LANG-1168: Add SystemUtils.IS_OS_WINDOWS_10 property. >>>>>>> + Thanks to Pascal Schumacher. >>>>>>> +o LANG-1115: Add support for varargs in ConstructorUtils, >> MemberUtils, >>>>>> and >>>>>>> + MethodUtils. Thanks to Jim Lloyd and Joe Ferner. >>>>>>> +o LANG-1134: Add methods to check numbers against NaN and inifinite >> to >>>>>>> + Validate. Thanks to Alan Smithee. >>>>>>> +o LANG-1220: Add tests for missed branches in DateUtils. >>>>>>> + Thanks to Casey Scarborough. >>>>>>> +o LANG-1146: z/OS identification in SystemUtils. >>>>>>> + Thanks to Gabor Liptak. >>>>>>> +o LANG-1192: FastDateFormat support of the week-year component >>>>>> (uppercase 'Y'). >>>>>>> + Thanks to Dominik Stadler. >>>>>>> +o LANG-1169: Add StringUtils methods to compare a string to multiple >>>>>> strings. >>>>>>> + Thanks to Rafal Glowinski, Robert Parr and Arman >> Sharif. >>>>>>> +o LANG-1185: Add remove by regular expression methods in >> StringUtils. >>>>>>> +o LANG-1139: Add replace by regular expression methods in >> StringUtils. >>>>>>> +o LANG-1171: Add compare methods in StringUtils. >>>>>>> +o LANG-1174: Add sugar to RandomUtils. Thanks to Punkratz312. >>>>>>> +o LANG-1154: FastDateFormat APIs that use a StringBuilder. Thanks to >>>>>>> + Gary Gregory. >>>>>>> +o LANG-1149: Ability to throw checked exceptions without declaring >>>>>> them. Thanks >>>>>>> + to Gregory Zak. >>>>>>> +o LANG-1153: Implement ParsePosition api for FastDateParser. >>>>>>> +o LANG-1137: Add check for duplicate event listener in >>>>>> EventListenerSupport. >>>>>>> + Thanks to Matthew Aguirre. >>>>>>> +o LANG-1135: Add method containsAllWords to WordUtils. Thanks to >>>>>>> + Eduardo Martins. >>>>>>> +o LANG-1132: ReflectionToStringBuilder doesn't throw >>>>>> IllegalArgumentException >>>>>>> + when the constructor's object param is null. Thanks to >>>>>> Jack Tan. >>>>>>> +o LANG-701: StringUtils join with var args. Thanks to James Sawle. >>>>>>> +o LANG-1105: Add ThreadUtils - A utility class which provides helper >>>>>> methods >>>>>>> + related to java.lang.Thread Issue: LANG-1105. Thanks >> to >>>>>>> + Hendrik Saly. >>>>>>> +o LANG-1031: Add annotations to exclude fields from >>>>>> ReflectionEqualsBuilder, >>>>>>> + ReflectionToStringBuilder and >> ReflectionHashCodeBuilder. >>>>>> Thanks >>>>>>> + to Felipe Adorno. >>>>>>> +o LANG-1127: Use JUnit rules to set and reset the default Locale and >>>>>> TimeZone. >>>>>>> +o LANG-1119: Add rotate(string, int) method to StringUtils. Thanks >> to >>>>>>> + Loic Guibert. >>>>>>> +o LANG-1099: Add swap and shift operations for arrays to ArrayUtils. >>>>>> Thanks to >>>>>>> + Adrian Ber. >>>>>>> +o LANG-1050: Change nullToEmpty methods to generics. Thanks to James >>>>>> Sawle. >>>>>>> +o LANG-1074: Add a method to ArrayUtils for removing all occurrences >>>> of >>>>>> a given >>>>>>> + element Issue: LANG-1074. Thanks to Haiyang Li. >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +============ >>>>>>> + >>>>>>> +o LANG-1261: ArrayUtils.contains returns false for instances of >>>>>> subtypes. >>>>>>> +o LANG-1252: Rename NumberUtils.isNumber, isCreatable to better >>>> reflect >>>>>>> + createNumber. Also, accommodated for "+" symbol as >> prefix >>>>>> in >>>>>>> + isCreatable and isNumber. Thanks to Rob Tompkins. >>>>>>> +o LANG-1230: Remove unnecessary synchronization from registry lookup >>>> in >>>>>>> + EqualsBuilder and HashCodeBuilder. Thanks to Philippe >>>>>> Marschall. >>>>>>> +o LANG-1214: Handle "void" in ClassUtils.getClass(). Thanks to Henry >>>>>> Tung. >>>>>>> +o LANG-1250: SerializationUtils#deserialize has unnecessary code >> and a >>>>>> comment >>>>>>> + for that. Thanks to Glease Wang. >>>>>>> +o LANG-1190: TypeUtils.isAssignable throws NullPointerException when >>>>>> fromType >>>>>>> + has type variables and toType generic superclass >>>> specifies >>>>>> type >>>>>>> + variable. Thanks to Pascal Schumacher. >>>>>>> +o LANG-1226: StringUtils#normalizeSpace does not trim the string >>>>>> anymore. >>>>>>> + Thanks to Pascal Schumacher. >>>>>>> +o LANG-1251: SerializationUtils.ClassLoaderAwareObjectInputStream >>>>>> should use >>>>>>> + static initializer to initialize primitiveTypes map. >>>>>> Thanks to >>>>>>> + Takuya Ueshin. >>>>>>> +o LANG-1248: FastDatePrinter Memory allocation regression. Thanks to >>>>>>> + Benoit Wiart. >>>>>>> +o LANG-1018: Fix precision loss on NumberUtils.createNumber( >> String). >>>>>> Thanks to >>>>>>> + Nick Manley. >>>>>>> +o LANG-1199: Fix implementation of StringUtils. >>>> getJaroWinklerDistance(). >>>>>> Thanks >>>>>>> + to M. Steiger. >>>>>>> +o LANG-1244: Fix dead links in StringUtils.getLevenshteinDistance() >>>>>> javadoc. >>>>>>> + Thanks to jjbankert. >>>>>>> +o LANG-1242: "\u2284":"?" mapping missing from >>>>>>> + EntityArrays#HTML40_EXTENDED_ESCAPE. Thanks to Neal >>>>>> Stewart. >>>>>>> +o LANG-901: StringUtils#startsWithAny/endsWithAny is case >> sensitive >>>> - >>>>>>> + documented as case insensitive. Thanks to Matthew >>>>>> Bartenschlag. >>>>>>> +o LANG-1232: DiffBuilder: Add null check on fieldName when appending >>>>>> Object or >>>>>>> + Object[]. Thanks to Nick Manley. >>>>>>> +o LANG-1178: ArrayUtils.removeAll(Object array, int... indices) >> should >>>>>> do the >>>>>>> + clone, not its callers. Thanks to Henri Yandell. >>>>>>> +o LANG-1120: StringUtils.stripAccents should remove accents from "Å >> " >>>>>> and "Å‚". >>>>>>> + Thanks to kaching88. >>>>>>> +o LANG-1205: NumberUtils.createNumber() behaves inconsistently with >>>>>>> + NumberUtils.isNumber(). Thanks to pbrose. >>>>>>> +o LANG-1222: Fix for incorrect comment on >>>> StringUtils.containsIgnoreCase >>>>>>> + method. Thanks to Adam J. >>>>>>> +o LANG-1221: Fix typo on appendIfMissing javadoc. Thanks to Pierre >>>>>> Templier. >>>>>>> +o LANG-1202: parseDateStrictly does't pass specified locale. Thanks >> to >>>>>>> + Markus Jelsma. >>>>>>> +o LANG-1219: FastDateFormat doesn't respect summer daylight in some >>>>>> localized >>>>>>> + strings. Thanks to Jarek. >>>>>>> +o LANG-1175: Remove Ant-based build. >>>>>>> +o LANG-1194: Limit max heap memory for consistent Travis CI build. >>>>>>> +o LANG-1186: Fix NullPointerException in FastDateParser$ >>>>>> TimeZoneStrategy. >>>>>>> + Thanks to NickManley. >>>>>>> +o LANG-1193: ordinalIndexOf("abc", "ab", 1) gives incorrect answer >> of >>>> -1 >>>>>>> + (correct answer should be 0); revert fix for LANG-1077. >>>>>> Thanks to >>>>>>> + Qin Li. >>>>>>> +o LANG-1002: Several predefined ISO FastDateFormats in >> DateFormatUtils >>>>>> are >>>>>>> + incorrect. Thanks to Michael Osipov. >>>>>>> +o LANG-1152: StringIndexOutOfBoundsException or field over-write >> for >>>>>> large year >>>>>>> + fields in FastDateParser. Thanks to Pas Filip. >>>>>>> +o LANG-1141: StrLookup.systemPropertiesLookup() no longer reacts on >>>>>> changes on >>>>>>> + system properties. >>>>>>> +o LANG-1147: EnumUtils *BitVector issue with more than 32 values >> Enum. >>>>>> Thanks >>>>>>> + to Loic Guibert. >>>>>>> +o LANG-1059: Capitalize javadoc is incorrect. Thanks to Colin Casey. >>>>>>> +o LANG-1122: Inconsistent behavior of swap for malformed inputs. >>>> Thanks >>>>>> to >>>>>>> + Adrian Ber. >>>>>>> +o LANG-1130: Fix critical issues reported by SonarQube. >>>>>>> +o LANG-1131: StrBuilder.equals(StrBuilder) doesn't check for null >>>>>> inputs. >>>>>>> +o LANG-1128: JsonToStringStyle doesn't handle chars and objects >>>>>> correctly. >>>>>>> + Thanks to Jack Tan. >>>>>>> +o LANG-1126: DateFormatUtilsTest.testSMTP depends on the default >>>> Locale. >>>>>>> +o LANG-1123: Unit test FastDatePrinterTimeZonesTest needs a timezone >>>>>> set. >>>>>>> + Thanks to Christian P. Momon. >>>>>>> +o LANG-916: DateFormatUtils.format does not correctly change >> Calendar >>>>>>> + TimeZone in certain situations. Thanks to Christian P. >>>>>> Momon. >>>>>>> +o LANG-1116: DateUtilsTest.testLang530 fails for some timezones. >>>> Thanks >>>>>> to >>>>>>> + Aaron Sheldon. >>>>>>> +o LANG-1114: TypeUtils.ParameterizedType#equals doesn't work with >>>>>> wildcard >>>>>>> + types. Thanks to Andy Coates. >>>>>>> +o LANG-1118: StringUtils.repeat('z', -1) throws >>>>>> NegativeArraySizeException. >>>>>>> + Thanks to Loic Guibert. >>>>>>> +o LANG-1111: Fix FindBugs warnings in DurationFormatUtils. >>>>>>> +o LANG-1162: StringUtils#equals fails with Index OOBE on non-Strings >>>>>> with >>>>>>> + identical leading prefix.. >>>>>>> +o LANG-1163: There are no tests for CharSequenceUtils. >> regionMatches. >>>>>>> +o LANG-1200: Fix JavaDoc of StringUtils.ordinalIndexOf. Thanks to >>>>>> BarkZhang. >>>>>>> +o LANG-1191: Incorrect Javadoc >>>>>>> + StringUtils.containsAny(CharSequence, >> CharSequence...). >>>>>> Thanks to >>>>>>> + qed, Brent Worden and Gary Gregory. >>>>>>> + >>>>>>> +CHANGES >>>>>>> +========= >>>>>>> +o LANG-1197: Prepare Java 9 detection. >>>>>>> +o LANG-1262: CompareToBuilder.append(Object, Object, Comparator) >>>>>> method is too >>>>>>> + big to be inlined. Thanks to Ruslan Cheremin. >>>>>>> +o LANG-1259: JavaDoc for ArrayUtils.isNotEmpty() is slightly >>>>>> misleading. Thanks >>>>>>> + to Dominik Stadler. >>>>>>> +o LANG-1247: FastDatePrinter generates extra Date objects. Thanks to >>>>>>> + Benoit Wiart. >>>>>>> +o LANG-1229: HashCodeBuilder.append(Object,Object) is too big to be >>>>>> inlined, >>>>>>> + which prevents whole builder to be scalarized. Thanks >> to >>>>>>> + Ruslan Cheremin. >>>>>>> +o LANG-1243: Simplify ArrayUtils removeElements by using new >>>>>> decrementAndGet() >>>>>>> + method. >>>>>>> +o LANG-1240: Optimize BitField constructor implementation. Thanks to >>>>>> zhanhb. >>>>>>> +o LANG-1206: Improve CharSetUtils.squeeze() performance. Thanks to >>>>>>> + Mohammed Alfallaj. >>>>>>> +o LANG-1176: Improve ArrayUtils removeElements time complexity to >>>> O(n). >>>>>> Thanks >>>>>>> + to Jeffery Yuan. >>>>>>> +o LANG-1234: getLevenshteinDistance with a threshold: optimize >>>>>> implementation >>>>>>> + if the strings lengths differ more than the threshold. >>>>>> Thanks to >>>>>>> + Jonatan Jönsson. >>>>>>> +o LANG-1151: Performance improvements for NumberUtils.isParsable. >>>>>> Thanks to >>>>>>> + Juan Pablo Santos RodrÃguez. >>>>>>> +o LANG-1218: EqualsBuilder.append(Object,Object) is too big to be >>>>>> inlined, >>>>>>> + which prevents whole builder to be scalarized. Thanks >> to >>>>>>> + Ruslan Cheremin. >>>>>>> +o LANG-1210: StringUtils#startsWithAny has error in Javadoc. Thanks >> to >>>>>>> + Matthias Niehoff. >>>>>>> +o LANG-1208: StrSubstitutor can preserve escapes. Thanks to Samuel >>>> Karp. >>>>>>> +o LANG-1182: Clarify JavaDoc of StringUtils.containsAny(). Thanks to >>>>>>> + Larry West and Pascal Schumacher. >>>>>>> +o LANG-1183: Making replacePattern/removePattern methods null safe >> in >>>>>>> + StringUtils. >>>>>>> +o LANG-1057: Replace StringBuilder with String concatenation for >>>> better >>>>>>> + optimization. Thanks to Otávio Santana. >>>>>>> +o LANG-1075: Deprecate SystemUtils.FILE_SEPARATOR and >>>>>>> + SystemUtils.PATH_SEPARATOR. >>>>>>> +o LANG-979: TypeUtils.parameterizeWithOwner - wrong format >>>> descriptor >>>>>> for >>>>>>> + "invalid number of type parameters". Thanks to Bruno P. >>>>>> Kinoshita. >>>>>>> +o LANG-1112: MultilineRecursiveToStringStyle largely unusable due >> to >>>>>> being >>>>>>> + package-private. >>>>>>> +o LANG-1058: StringUtils.uncapitalize performance improvement. >> Thanks >>>> to >>>>>>> + Leo Wang. >>>>>>> +o LANG-1069: CharSet.getInstance documentation does not clearly >>>> explain >>>>>> how >>>>>>> + to include negation character in set. Thanks to Arno >>>>>> Noordover. >>>>>>> +o LANG-1107: Fix parsing edge cases in FastDateParser. >>>>>>> +o LANG-1273: Added new property IS_OS_MAC_OSX_EL_CAPITAN in >>>>>> SystemUtils. Thanks >>>>>>> + to Jake Wang. >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.4 >>>>>>> + >>>>>>> + >>>>>>> +COMPATIBILITY >>>>>>> +============= >>>>>>> + >>>>>>> +Commons Lang 3.4 is fully binary compatible to the last release and >>>> can >>>>>>> +therefore be used as a drop in replacement for 3.3.2. Note that the >>>>>> value of >>>>>>> +org.apache.commons.lang3.time.DurationFormatUtils.ISO_ >>>>>> EXTENDED_FORMAT_PATTERN >>>>>>> +has changed, which may affect clients using the constant. >> Furthermore >>>>>> the >>>>>>> +constant is used internally in >>>>>>> +o DurationFormatUtils.formatDurationISO(long) >>>>>>> +o DurationFormatUtils.formatPeriodISO(long, long) >>>>>>> + >>>>>>> +For more information see https://issues.apache.org/ >>>>>> jira/browse/LANG-1000. >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-821: Support OS X versions in SystemUtils. Thanks to Timo >>>>>> Kockert. >>>>>>> +o LANG-1103: Add SystemUtils.IS_JAVA_1_9 >>>>>>> +o LANG-1093: Add ClassUtils.getAbbreviatedName(). Thanks to Fabian >>>>>> Lange. >>>>>>> +o LANG-1082: Add option to disable the "objectsTriviallyEqual" test >> in >>>>>>> + DiffBuilder. Thanks to Jonathan Baker. >>>>>>> +o LANG-1015: Add JsonToStringStyle implementation to ToStringStyle. >>>>>> Thanks to >>>>>>> + Thiago Andrade. >>>>>>> +o LANG-1080: Add NoClassNameToStringStyle implementation of >>>>>> ToStringStyle. >>>>>>> + Thanks to Innokenty Shuvalov. >>>>>>> +o LANG-883: Add StringUtils.containsAny(CharSequence, >>>>>> CharSequence...) method. >>>>>>> + Thanks to Daniel Stewart. >>>>>>> +o LANG-1052: Multiline recursive to string style. Thanks to Jan >>>>>> Matèrne. >>>>>>> +o LANG-536: Add isSorted() to ArrayUtils. Thanks to James Sawle. >>>>>>> +o LANG-1033: Add StringUtils.countMatches(CharSequence, char) >>>>>>> +o LANG-1021: Provide methods to retrieve all fields/methods >> annotated >>>>>> with a >>>>>>> + specific type. Thanks to Alexander Müller. >>>>>>> +o LANG-1016: NumberUtils#isParsable method(s). Thanks to >>>>>>> + Juan Pablo Santos RodrÃguez. >>>>>>> +o LANG-999: Add fuzzy String matching logic to StringUtils. Thanks >> to >>>>>>> + Ben Ripkens. >>>>>>> +o LANG-994: Add zero copy read method to StrBuilder. Thanks to >>>>>>> + Mikhail Mazursky. >>>>>>> +o LANG-993: Add zero copy write method to StrBuilder. Thanks to >>>>>>> + Mikhail Mazursky. >>>>>>> +o LANG-1044: Add method MethodUtils.invokeExactMethod(Object, >> String) >>>>>>> +o LANG-1045: Add method MethodUtils.invokeMethod(Object, String) >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +============ >>>>>>> + >>>>>>> +o LANG-794: SystemUtils.IS_OS_WINDOWS_2008, VISTA are incorrect. >>>>>> Thanks to >>>>>>> + Timo Kockert. >>>>>>> +o LANG-1104: Parse test fails for TimeZone America/Sao_Paulo >>>>>>> +o LANG-948: Exception while using ExtendedMessageFormat and >> escaping >>>>>> braces. >>>>>>> + Thanks to Andrey Khobnya. >>>>>>> +o LANG-1092: Wrong formating of time zones with daylight saving time >>>> in >>>>>>> + FastDatePrinter >>>>>>> +o LANG-1090: FastDateParser does not set error indication in >>>>>> ParsePosition >>>>>>> +o LANG-1089: FastDateParser does not handle excess hours as per >>>>>>> + SimpleDateFormat >>>>>>> +o LANG-1061: FastDateParser error - timezones not handled correctly. >>>>>> Thanks to >>>>>>> + dmeneses. >>>>>>> +o LANG-1087: NumberUtils#createNumber() returns positive BigDecimal >>>> when >>>>>>> + negative Float is expected. Thanks to Renat Zhilkibaev. >>>>>>> +o LANG-1081: DiffBuilder.append(String, Object left, Object right) >>>> does >>>>>> not do >>>>>>> + a left.equals(right) check. Thanks to Jonathan Baker. >>>>>>> +o LANG-1055: StrSubstitutor.replaceSystemProperties does not work >>>>>> consistently. >>>>>>> + Thanks to Jonathan Baker. >>>>>>> +o LANG-1083: Add (T) casts to get unit tests to pass in old JDK. >>>> Thanks >>>>>> to >>>>>>> + Jonathan Baker. >>>>>>> +o LANG-1073: Read wrong component type of array in add in >> ArrayUtils. >>>>>>> + Thanks to haiyang li. >>>>>>> +o LANG-1077: StringUtils.ordinalIndexOf("aaaaaa", "aa", 2) != 3 in >>>>>> StringUtils. >>>>>>> + Thanks to haiyang li. >>>>>>> +o LANG-1072: Duplicated "0x" check in createBigInteger in >> NumberUtils. >>>>>> Thanks >>>>>>> + to haiyang li. >>>>>>> +o LANG-1064: StringUtils.abbreviate description doesn't agree with >> the >>>>>>> + examples. Thanks to B.J. Herbison. >>>>>>> +o LANG-1041: Fix MethodUtilsTest so it does not depend on JDK method >>>>>> ordering. >>>>>>> + Thanks to Alexandre Bartel. >>>>>>> +o LANG-1000: ParseException when trying to parse UTC dates with Z as >>>>>> zone >>>>>>> + designator using DateFormatUtils.ISO_DATETIME_ >>>>>> TIME_ZONE_FORMAT >>>>>>> +o LANG-1035: Javadoc for EqualsBuilder.reflectionEquals() is >> unclear >>>>>>> +o LANG-1001: ISO 8601 misspelled throughout the Javadocs. Thanks to >>>>>>> + Michael Osipov. >>>>>>> +o LANG-1088: FastDateParser should be case insensitive >>>>>>> +o LANG-995: Fix bug with stripping spaces on last line in >>>>>> WordUtils.wrap(). >>>>>>> + Thanks to Andrey Khobnya. >>>>>>> + >>>>>>> +CHANGES >>>>>>> +========= >>>>>>> + >>>>>>> +o LANG-1102: Make logic for comparing OS versions in SystemUtils >>>> smarter >>>>>>> +o LANG-1091: Shutdown thread pools in test cases. Thanks to Fabian >>>>>> Lange. >>>>>>> +o LANG-1101: FastDateParser and FastDatePrinter support 'X' format >>>>>>> +o LANG-1100: Avoid memory allocation when using date formating to >>>>>> StringBuffer. >>>>>>> + Thanks to mbracher. >>>>>>> +o LANG-935: Possible performance improvement on string escape >>>>>> functions. >>>>>>> + Thanks to Fabian Lange, Thomas Neidhart. >>>>>>> +o LANG-1098: Avoid String allocation in StrBuilder.append( >>>> CharSequence). >>>>>> Thanks >>>>>>> + to Mikhail Mazurskiy, Fabian Lange. >>>>>>> +o LANG-1098: Update maven-checkstyle-plugin to 2.14. Thanks to >> Micha? >>>>>> Kordas. >>>>>>> +o LANG-1097: Update org.easymock:easymock to 3.3.1. Thanks to Micha? >>>>>> Kordas. >>>>>>> +o LANG-1096: Update maven-pmd-plugin to 3.4. Thanks to Micha? >> Kordas. >>>>>>> +o LANG-1095: Update maven-antrun-plugin to 1.8. Thanks to Micha? >>>> Kordas. >>>>>>> +o LANG-877: Performance improvements for StringEscapeUtils. Thanks >> to >>>>>>> + Fabian Lange. >>>>>>> +o LANG-1071: Fix wrong examples in JavaDoc of >>>>>>> + StringUtils.replaceEachRepeatedly(...), >>>>>>> + StringUtils.replaceEach(...) Thanks to Arno Noordover. >>>>>>> +o LANG-827: CompareToBuilder's doc doesn't specify precedence of >>>>>> fields it >>>>>>> + uses in performing comparisons >>>>>>> +o LANG-1020: Improve performance of normalize space. Thanks to Libor >>>>>> Ondrusek. >>>>>>> +o LANG-1027: org.apache.commons.lang3.SystemUtils# >>>> isJavaVersionAtLeast >>>>>> should >>>>>>> + return true by default >>>>>>> +o LANG-1026: Bring static method references in StringUtils to >>>>>> consistent style. >>>>>>> + Thanks to Alex Yursha. >>>>>>> +o LANG-1017: Use non-ASCII digits in Javadoc examples for >>>>>>> + StringUtils.isNumeric. Thanks to Christoph Schneegans. >>>>>>> +o LANG-1008: Change min/max methods in NumberUtils/IEEE754rUtils >> from >>>>>> array >>>>>>> + input parameters to varargs. Thanks to Thiago Andrade. >>>>>>> +o LANG-1006: Add wrap (with String or char) to StringUtils. Thanks >> to >>>>>>> + Thiago Andrade. >>>>>>> +o LANG-1005: Extend DurationFormatUtils#formatDurationISO default >>>>>> pattern to >>>>>>> + match #formatDurationHMS. Thanks to Michael Osipov. >>>>>>> +o LANG-1007: Fixing NumberUtils JAVADoc comments for max methods. >>>>>> Thanks to >>>>>>> + Thiago Andrade. >>>>>>> +o LANG-731: Better Javadoc for BitField class >>>>>>> +o LANG-1004: DurationFormatUtils#formatDurationHMS implementation >>>> does >>>>>> not >>>>>>> + correspond to Javadoc and vice versa. Thanks to Michael >>>>>> Osipov. >>>>>>> +o LANG-1003: DurationFormatUtils are not able to handle negative >>>>>>> + durations/periods >>>>>>> +o LANG-998: Javadoc is not clear on preferred pattern to >> instantiate >>>>>>> + FastDateParser / FastDatePrinter >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.3.2 >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-989: Add org.apache.commons.lang3.SystemUtils.IS_JAVA_1_8 >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +============ >>>>>>> + >>>>>>> +o LANG-992: NumberUtils#isNumber() returns false for "0.0", >> "0.4790", >>>>>> et al >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.3.1 >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +============ >>>>>>> + >>>>>>> +o LANG-987: DateUtils.getFragmentInDays(Date, Calendar.MONTH) >>>> returns >>>>>> wrong >>>>>>> + days >>>>>>> +o LANG-983: DurationFormatUtils does not describe format string >> fully >>>>>>> +o LANG-981: DurationFormatUtils#lexx does not detect unmatched >> quote >>>>>> char >>>>>>> +o LANG-984: DurationFormatUtils does not handle large durations >>>>>> correctly >>>>>>> +o LANG-982: DurationFormatUtils.formatDuration(61999, "s.SSSS") - >> ms >>>>>> field >>>>>>> + size should be 4 digits >>>>>>> +o LANG-978: Failing tests with Java 8 b128 >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.3 >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-955: Add methods for removing all invalid characters >> according >>>>>> to >>>>>>> + XML 1.0 and XML 1.1 in an input string to >>>>>> StringEscapeUtils. >>>>>>> + Thanks to Adam Hooper. >>>>>>> +o LANG-970: Add APIs MutableBoolean setTrue() and setFalse() >>>>>>> +o LANG-962: Add SerializationUtils.roundtrip(T extends >> Serializable) >>>> to >>>>>>> + serialize then deserialize >>>>>>> +o LANG-637: There should be a DifferenceBuilder with a >>>>>>> + ReflectionDifferenceBuilder implementation >>>>>>> +o LANG-944: Add the Jaro-Winkler string distance algorithm to >>>>>> StringUtils. >>>>>>> + Thanks to Rekha Joshi. >>>>>>> +o LANG-417: New class ClassPathUtils with methods for turning FQN >>>> into >>>>>>> + resource path >>>>>>> +o LANG-834: Validate: add inclusiveBetween and exclusiveBetween >>>>>> overloads >>>>>>> + for primitive types >>>>>>> +o LANG-900: New RandomUtils class. Thanks to Duncan Jones. >>>>>>> +o LANG-966: Add IBM OS/400 detection >>>>>>> + >>>>>>> +FIXED BUGS >>>>>>> +============ >>>>>>> + >>>>>>> +o LANG-621: ReflectionToStringBuilder.toString does not debug 3rd >>>>>> party object >>>>>>> + fields within 3rd party object. Thanks to Philip >> Hodges, >>>>>>> + Thomas Neidhart. >>>>>>> +o LANG-977: NumericEntityEscaper incorrectly encodes supplementary >>>>>> characters. >>>>>>> + Thanks to Chris Karcher. >>>>>>> +o LANG-973: Make some private fields final >>>>>>> +o LANG-971: NumberUtils#isNumber(String) fails to reject invalid >>>> Octal >>>>>> numbers >>>>>>> +o LANG-972: NumberUtils#isNumber does not allow for hex 0XABCD >>>>>>> +o LANG-969: StringUtils.toEncodedString(byte[], Charset) >> needlessly >>>>>> throws >>>>>>> + UnsupportedEncodingException. Thanks to Matt Bishop. >>>>>>> +o LANG-946: ConstantInitializerTest fails when building with IBM >> JDK >>>> 7 >>>>>>> +o LANG-954: uncaught PatternSyntaxException in FastDateFormat on >>>>>> Android. >>>>>>> + Thanks to Michael Keppler. >>>>>>> +o LANG-936: StringUtils.getLevenshteinDistance with too big of a >>>>>> threshold >>>>>>> + returns wrong result. Thanks to Yaniv Kunda, Eli >> Lindsey. >>>>>>> +o LANG-943: Test DurationFormatUtilsTest.testEdgeDuration fails in >>>>>>> + JDK 1.6, 1.7 and 1.8, BRST time zone >>>>>>> +o LANG-613: ConstructorUtils.getAccessibleConstructor() Does Not >>>>>> Check the >>>>>>> + Accessibility of Enclosing Classes >>>>>>> +o LANG-951: Fragments are wrong by 1 day when using fragment YEAR >> or >>>>>> MONTH. >>>>>>> + Thanks to Sebastian Götz. >>>>>>> +o LANG-950: FastDateParser does not handle two digit year parsing >>>> like >>>>>>> + SimpleDateFormat >>>>>>> +o LANG-949: FastDateParserTest.testParses does not test >>>> FastDateParser >>>>>>> +o LANG-915: Wrong locale handling in LocaleUtils.toLocale(). >>>>>>> + Thanks to Sergio Fernández. >>>>>>> + >>>>>>> +CHANGES >>>>>>> +========= >>>>>>> + >>>>>>> +o LANG-961: org.apache.commons.lang3.reflect.FieldUtils. >>>>>> removeFinalModifier(Field) >>>>>>> + does not clean up after itself >>>>>>> +o LANG-958: FastDateParser javadoc incorrectly states that >>>>>> SimpleDateFormat >>>>>>> + is used internally >>>>>>> +o LANG-956: Improve JavaDoc of WordUtils.wrap methods >>>>>>> +o LANG-939: Move Documentation from user guide to package-info >> files >>>>>>> +o LANG-953: Convert package.html files to package-info.java files >>>>>>> +o LANG-940: Fix deprecation warnings >>>>>>> +o LANG-819: EnumUtils.generateBitVector needs a "? extends" >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.2.1 >>>>>>> + >>>>>>> +BUG FIXES >>>>>>> +=========== >>>>>>> + >>>>>>> +o LANG-937: Fix missing Hamcrest dependency in Ant Build >>>>>>> +o LANG-941: Test failure in LocaleUtilsTest when building with JDK >> 8 >>>>>>> +o LANG-942: Test failure in FastDateParserTest and >>>>>> FastDateFormat_ParserTest >>>>>>> + when building with JDK8. Thanks to Bruno P. Kinoshita, >>>>>>> + Henri Yandell. >>>>>>> +o LANG-938: Build fails with test failures when building with JDK 8 >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.2 >>>>>>> + >>>>>>> +COMPATIBILITY WITH 3.1 >>>>>>> +======================== >>>>>>> + >>>>>>> +This release introduces backwards incompatible changes in >>>>>>> +org.apache.commons.lang3.time.FastDateFormat: >>>>>>> +o Method 'protected java.util.List parsePattern()' has been removed >>>>>>> +o Method 'protected java.lang.String parseToken(java.lang.String, >>>>>> int[])' has >>>>>>> + been removed >>>>>>> +o Method 'protected org.apache.commons.lang3.time. >>>>>> FastDateFormat$NumberRule >>>>>>> + selectNumberRule(int, int)' has been removed >>>>>>> + >>>>>>> +These changes were the result of [LANG-462]. It is assumed that this >>>>>> change >>>>>>> +will not break clients as Charles Honton pointed out on 25/Jan/12: >>>>>>> +" >>>>>>> + 1. Methods "FastDateFormat$NumberRule selectNumberRule(int, int)" >> and >>>>>>> + "List<Rule> parsePattern()" couldn't have been overridden >> because >>>>>>> + NumberRule and Rule were private to FastDateFormat. >>>>>>> + 2. Due to the factory pattern used, it's unlikely other two methods >>>>>> would have >>>>>>> + been overridden. >>>>>>> + 3. The four methods are highly implementation specific. I consider >>>> it a >>>>>>> + mistake that the methods were exposed. >>>>>>> +" >>>>>>> +For more information see https://issues.apache.org/ >>>> jira/browse/LANG-462 >>>>>> . >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-934: Add removeFinalModifier to FieldUtils >>>>>>> +o LANG-863: Method returns number of inheritance hops between >> parent >>>>>> and >>>>>>> + subclass. Thanks to Daneel S. Yaitskov. >>>>>>> +o LANG-774: Added isStarted, isSuspended and isStopped to >> StopWatch. >>>>>>> + Thanks to Erhan Bagdemir. >>>>>>> +o LANG-848: Added StringUtils.isBlank/isEmpty CharSequence... >>>> methods. >>>>>>> + Thanks to Alexander Muthmann. >>>>>>> +o LANG-926: Added ArrayUtils.reverse(array, from, to) methods. >>>>>>> +o LANG-795: StringUtils.toString(byte[], String) deprecated in >> favour >>>>>> of a new >>>>>>> + StringUtils.toString(byte[], CharSet). Thanks to Aaron >>>>>> Digulla. >>>>>>> +o LANG-893: StrSubstitutor now supports default values for >> variables. >>>>>>> + Thanks to Woonsan Ko. >>>>>>> +o LANG-913: Adding .gitignore to commons-lang. Thanks to Allon >>>>>> Mureinik. >>>>>>> +o LANG-837: Add ObjectUtils.toIdentityString methods that support >>>>>>> + StringBuilder, StrBuilder, and Appendable. >>>>>>> +o LANG-886: Added CharSetUtils.containsAny(String, String). >>>>>>> +o LANG-797: Added escape/unescapeJson to StringEscapeUtils. >>>>>>> +o LANG-875: Added appendIfMissing and prependIfMissing methods to >>>>>> StringUtils. >>>>>>> +o LANG-870: Add StringUtils.LF and StringUtils.CR values. >>>>>>> +o LANG-873: Add FieldUtils getAllFields() to return all the fields >>>>>> defined in >>>>>>> + the given class and super classes. >>>>>>> +o LANG-835: StrBuilder should support StringBuilder as an input >>>>>> parameter. >>>>>>> +o LANG-857: StringIndexOutOfBoundsException in >>>> CharSequenceTranslator. >>>>>>> +o LANG-856: Code refactoring in NumberUtils. >>>>>>> +o LANG-855: NumberUtils#createBigInteger does not allow for hex and >>>>>> octal >>>>>>> + numbers. >>>>>>> +o LANG-854: NumberUtils#createNumber - does not allow for hex >> numbers >>>>>> to be >>>>>>> + larger than Long. >>>>>>> +o LANG-853: StringUtils join APIs for primitives. >>>>>>> +o LANG-841: Add StringUtils API to call String.replaceAll in DOTALL >>>>>> a.k.a. >>>>>>> + single-line mode. >>>>>>> +o LANG-825: Create StrBuilder APIs similar to >>>>>>> + String.format(String, Object...). >>>>>>> +o LANG-675: Add Triple class (ternary version of Pair). >>>>>>> +o LANG-462: FastDateFormat supports parse methods. >>>>>>> + >>>>>>> +BUG FIXES >>>>>>> +=========== >>>>>>> + >>>>>>> +o LANG-932: Spelling fixes. Thanks to Ville Skyttä. >>>>>>> +o LANG-929: OctalUnescaper tried to parse all of \279. >>>>>>> +o LANG-928: OctalUnescaper had bugs when parsing octals starting >> with >>>>>> a zero. >>>>>>> +o LANG-905: EqualsBuilder returned true when comparing arrays, even >>>>>> when the >>>>>>> + elements are different. >>>>>>> +o LANG-917: Fixed exception when combining custom and choice format >>>> in >>>>>>> + ExtendedMessageFormat. Thanks to Arne Burmeister. >>>>>>> +o LANG-902: RandomStringUtils.random javadoc was incorrectly >>>> promising >>>>>> letters >>>>>>> + and numbers would, as opposed to may, appear Issue:. >>>>>> Thanks to >>>>>>> + Andrzej Winnicki. >>>>>>> +o LANG-921: BooleanUtils.xor(boolean...) produces wrong results. >>>>>>> +o LANG-896: BooleanUtils.toBoolean(String str) javadoc is not >>>> updated. >>>>>> Thanks >>>>>>> + to Mark Bryan Yu. >>>>>>> +o LANG-879: LocaleUtils test fails with new Locale >>>>>> "ja_JP_JP_#u-ca-japanese" >>>>>>> + of JDK7. >>>>>>> +o LANG-836: StrSubstitutor does not support StringBuilder or >>>>>> CharSequence. >>>>>>> + Thanks to Arnaud Brunet. >>>>>>> +o LANG-693: Method createNumber from NumberUtils doesn't work for >>>>>> floating >>>>>>> + point numbers other than Float Issue: LANG-693. Thanks >>>> to >>>>>>> + Calvin Echols. >>>>>>> +o LANG-887: FastDateFormat does not use the locale specific cache >>>>>> correctly. >>>>>>> +o LANG-754: ClassUtils.getShortName(String) will now only do a >>>>>> reverse lookup >>>>>>> + for array types. >>>>>>> +o LANG-881: NumberUtils.createNumber() Javadoc says it does not >> work >>>>>> for octal >>>>>>> + numbers. >>>>>>> +o LANG-865: LocaleUtils.toLocale does not parse strings starting >> with >>>>>> an >>>>>>> + underscore. >>>>>>> +o LANG-858: StringEscapeUtils.escapeJava() and escapeEcmaScript() >> do >>>>>> not >>>>>>> + output the escaped surrogate pairs that are Java >>>> parsable. >>>>>>> +o LANG-849: FastDateFormat and FastDatePrinter generates Date >> objects >>>>>>> + wastefully. >>>>>>> +o LANG-845: Spelling fixes. >>>>>>> +o LANG-844: Fix examples contained in javadoc of StringUtils.center >>>>>> methods. >>>>>>> +o LANG-832: FastDateParser does not handle unterminated quotes >>>>>> correctly. >>>>>>> +o LANG-831: FastDateParser does not handle white-space properly. >>>>>>> +o LANG-830: FastDateParser could use \Q \E to quote regexes. >>>>>>> +o LANG-828: FastDateParser does not handle non-Gregorian calendars >>>>>> properly. >>>>>>> +o LANG-826: FastDateParser does not handle non-ASCII digits >>>> correctly. >>>>>>> +o LANG-822: NumberUtils#createNumber - bad behaviour for leading >>>> "--". >>>>>>> +o LANG-818: FastDateFormat's "z" pattern does not respect timezone >> of >>>>>> Calendar >>>>>>> + instances passed to format(). >>>>>>> +o LANG-817: Add org.apache.commons.lang3. >>>> SystemUtils.IS_OS_WINDOWS_8. >>>>>>> +o LANG-813: StringUtils.equalsIgnoreCase doesn't check string >>>> reference >>>>>>> + equality. >>>>>>> +o LANG-810: StringUtils.join() endIndex, bugged for loop. >>>>>>> +o LANG-807: RandomStringUtils throws confusing IAE when end <= >> start. >>>>>>> +o LANG-805: RandomStringUtils.random(count, 0, 0, false, false, >>>>>> universe, >>>>>>> + random) always throws java.lang. >>>>>> ArrayIndexOutOfBoundsException. >>>>>>> +o LANG-802: LocaleUtils - unnecessary recursive call in SyncAvoid >>>>>> class. >>>>>>> +o LANG-800: Javadoc bug in DateUtils#ceiling for Calendar and >> Object >>>>>> versions. >>>>>>> +o LANG-788: SerializationUtils throws ClassNotFoundException when >>>>>> cloning >>>>>>> + primitive classes. >>>>>>> +o LANG-786: StringUtils equals() relies on undefined behavior. >>>>>>> +o LANG-783: Documentation bug: StringUtils.split. >>>>>>> +o LANG-777: jar contains velocity template of release notes. >>>>>>> +o LANG-776: TypeUtilsTest contains incorrect type assignability >>>>>> assertion. >>>>>>> +o LANG-775: TypeUtils.getTypeArguments() misses type arguments for >>>>>>> + partially-assigned classes. >>>>>>> +o LANG-773: ImmutablePair doc contains nonsense text. >>>>>>> +o LANG-772: ClassUtils.PACKAGE_SEPARATOR Javadoc contains garbage >>>> text. >>>>>>> +o LANG-765: EventListenerSupport.ProxyInvocationHandler no longer >>>>>> defines >>>>>>> + serialVersionUID. >>>>>>> +o LANG-764: StrBuilder is now serializable. >>>>>>> +o LANG-761: Fix Javadoc Ant warnings. >>>>>>> +o LANG-747: NumberUtils does not handle Long Hex numbers. >>>>>>> +o LANG-743: Javadoc bug in static inner class DateIterator. >>>>>>> + >>>>>>> +CHANGES >>>>>>> +========= >>>>>>> + >>>>>>> +o LANG-931: Misleading Javadoc comment in StrBuilderReader class. >>>>>> Thanks >>>>>>> + to Christoph Schneegans. >>>>>>> +o LANG-910: StringUtils.normalizeSpace now handles non-breaking >>>> spaces >>>>>>> + (Unicode 00A0). Thanks to Timur Yarosh. >>>>>>> +o LANG-804: Redundant check for zero in HashCodeBuilder ctor. >> Thanks >>>> to >>>>>>> + Allon Mureinik. >>>>>>> +o LANG-884: Simplify FastDateFormat; eliminate boxing. >>>>>>> +o LANG-882: LookupTranslator now works with implementations of >>>>>> CharSequence >>>>>>> + other than String. >>>>>>> +o LANG-846: Provide CharSequenceUtils.regionMatches with a proper >>>>>> green >>>>>>> + implementation instead of inefficiently converting to >>>>>> Strings. >>>>>>> +o LANG-839: ArrayUtils removeElements methods use unnecessary >>>> HashSet. >>>>>>> +o LANG-838: ArrayUtils removeElements methods clone temporary index >>>>>> arrays >>>>>>> + unnecessarily. >>>>>>> +o LANG-799: DateUtils#parseDate uses default locale; add Locale >>>>>> support. >>>>>>> +o LANG-798: Use generics in SerializationUtils. >>>>>>> + >>>>>>> +CHANGES WITHOUT TICKET >>>>>>> +======================== >>>>>>> + >>>>>>> +o Fixed URLs in javadoc to point to new oracle.com pages >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.1 >>>>>>> + >>>>>>> +NEW FEATURES >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-801: Add Conversion utility to convert between data types on >>>>>> byte level >>>>>>> +o LANG-760: Add API StringUtils.toString(byte[] intput, String >>>>>> charsetName) >>>>>>> +o LANG-756: Add APIs ClassUtils.isPrimitiveWrapper(Class<?>) and >>>>>>> + isPrimitiveOrWrapper(Class<?>) >>>>>>> +o LANG-695: SystemUtils.IS_OS_UNIX doesn't recognize FreeBSD as a >>>> Unix >>>>>> system >>>>>>> + >>>>>>> +BUG FIXES >>>>>>> +=========== >>>>>>> + >>>>>>> +o LANG-749: Incorrect Bundle-SymbolicName in Manifest >>>>>>> +o LANG-746: NumberUtils does not handle upper-case hex: 0X and -0X >>>>>>> +o LANG-744: StringUtils throws java.security. >> AccessControlException >>>>>> on Google >>>>>>> + App Engine >>>>>>> +o LANG-741: Ant build has wrong component.name >>>>>>> +o LANG-698: Document that the Mutable numbers don't work as >> expected >>>>>> with >>>>>>> + String.format >>>>>>> + >>>>>>> +CHANGES >>>>>>> +========= >>>>>>> + >>>>>>> +o LANG-758: Add an example with whitespace in >>>>>> StringUtils.defaultIfEmpty >>>>>>> +o LANG-752: Fix createLong() so it behaves like createInteger() >>>>>>> +o LANG-751: Include the actual type in the Validate.isInstance and >>>>>>> + isAssignableFrom exception messages >>>>>>> +o LANG-748: Deprecating chomp(String, String) >>>>>>> +o LANG-736: CharUtils static final array CHAR_STRING is not needed >> to >>>>>> compute >>>>>>> + CHAR_STRING_ARRAY >>>>>>> + >>>>>>> +=========================================================== >>>>>> ================== >>>>>>> + >>>>>>> + Release Notes for version 3.0 >>>>>>> + >>>>>>> +ADDITIONS >>>>>>> +=========== >>>>>>> + >>>>>>> +o LANG-276: MutableBigDecimal and MutableBigInteger. >>>>>>> +o LANG-285: Wish : method unaccent. >>>>>>> +o LANG-358: ObjectUtils.coalesce. >>>>>>> +o LANG-386: LeftOf/RightOfNumber in Range convenience methods >>>>>> necessary. >>>>>>> +o LANG-435: Add ClassUtils.isAssignable() variants with autoboxing. >>>>>>> +o LANG-444: StringUtils.emptyToNull. >>>>>>> +o LANG-482: Enhance StrSubstitutor to support nested >> ${var-${subvr}} >>>>>> expansion >>>>>>> +o LANG-482: StrSubstitutor now supports substitution in variable >>>> names. >>>>>>> +o LANG-496: A generic implementation of the Lazy initialization >>>>>> pattern. >>>>>>> +o LANG-497: Addition of ContextedException and >>>>>> ContextedRuntimeException. >>>>>>> +o LANG-498: Add StringEscapeUtils.escapeText() methods. >>>>>>> +o LANG-499: Add support for the handling of ExecutionExceptions. >>>>>>> +o LANG-501: Add support for background initialization. >>>>>>> +o LANG-529: Add a concurrent package. >>>>>>> +o LANG-533: Validate: support for validating blank strings. >>>>>>> +o LANG-537: Add ArrayUtils.toArray to create generic arrays. >>>>>>> +o LANG-545: Add ability to create a Future for a constant. >>>>>>> +o LANG-546: Add methods to Validate to check whether the index is >>>>>> valid for >>>>>>> + the array/list/string. >>>>>>> +o LANG-553: Add TypeUtils class to provide utility code for working >>>>>> with generic >>>>>>> + types. >>>>>>> +o LANG-559: Added isAssignableFrom and isInstanceOf validation >>>> methods. >>>>>>> +o LANG-559: Added validState validation method. >>>>>>> +o LANG-560: New TimedSemaphore class. >>>>>>> +o LANG-582: Provide an implementation of the ThreadFactory >> interface. >>>>>>> +o LANG-588: Create a basic Pair<L, R> class. >>>>>>> +o LANG-594: DateUtils equal & compare functions up to most >>>> significant >>>>>> field. >>>>>>> +o LANG-601: Add Builder Interface / Update Builders to Implement >> It. >>>>>>> +o LANG-609: Support lazy initialization using atomic variables >>>>>>> +o LANG-610: Extend exception handling in ConcurrentUtils to runtime >>>>>> exceptions. >>>>>>> +o LANG-614: StringUtils.endsWithAny method >>>>>>> +o LANG-640: Add normalizeSpace to StringUtils >>>>>>> +o LANG-644: Provide documentation about the new concurrent package >>>>>>> +o LANG-649: BooleanUtils.toBooleanObject to support single >> character >>>>>> input >>>>>>> +o LANG-651: Add AnnotationUtils >>>>>>> +o LANG-653: Provide a very basic ConcurrentInitializer >> implementation >>>>>>> +o LANG-655: Add StringUtils.defaultIfBlank() >>>>>>> +o LANG-667: Add a Null-safe compare() method to ObjectUtils >>>>>>> +o LANG-676: Documented potential NPE if auto-boxing occurs for some >>>>>> BooleanUtils >>>>>>> + methods >>>>>>> +o LANG-678: Add support for ConcurrentMap.putIfAbsent() >>>>>>> +o LANG-692: Add hashCodeMulti varargs method >>>>>>> +o LANG-697: Add FormattableUtils class >>>>>>> +o LANG-684: Levenshtein Distance Within a Given Threshold >>>>>>> + >>>>>>> +REMOVALS >>>>>>> +========== >>>>>>> + >>>>>>> +o LANG-438: Remove @deprecateds. >>>>>>> +o LANG-492: Remove code handled now by the JDK. >>>>>>> +o LANG-493: Remove code that does not hold enough value to remain. >>>>>>> +o LANG-590: Remove JDK 1.2/1.3 bug handling in >>>>>>> + StringUtils.indexOf(String, String, int). >>>>>>> +o LANG-673: WordUtils.abbreviate() removed >>>>>>> +o LANG-691: Removed DateUtils.UTC_TIME_ZONE >>>>>>> + >>>>>>> +IMPROVEMENTS >>>>>>> +============== >>>>>>> + >>>>>>> +o LANG-290: EnumUtils for JDK 5.0. >>>>>>> +o LANG-336: Finally start using generics. >>>>>>> +o LANG-355: StrBuilder should implement CharSequence and >> Appendable. >>>>>>> +o LANG-396: Investigate for vararg usages. >>>>>>> +o LANG-424: Improve Javadoc for StringUtils class. >>>>>>> +o LANG-458: Refactor Validate.java to eliminate code redundancy. >>>>>>> +o LANG-479: Document where in SVN trunk is. >>>>>>> +o LANG-504: bring ArrayUtils.isEmpty to the generics world. >>>>>>> +o LANG-505: Rewrite StringEscapeUtils. >>>>>>> +o LANG-507: StringEscapeUtils.unescapeJava should support \u+ >>>> notation. >>>>>>> +o LANG-510: Convert StringUtils API to take CharSequence. >>>>>>> +o LANG-513: Better EnumUtils. >>>>>>> +o LANG-528: Mutable classes should implement an appropriately typed >>>>>> Mutable >>>>>>> + interface. >>>>>>> +o LANG-539: Compile commons.lang for CDC 1.1/Foundation 1.1. >>>>>>> +o LANG-540: Make NumericEntityEscaper immutable. >>>>>>> +o LANG-541: Replace StringBuffer with StringBuilder. >>>>>>> +o LANG-548: Use Iterable on API instead of Collection. >>>>>>> +o LANG-551: Replace Range classes with generic version. >>>>>>> +o LANG-562: Change Maven groupId. >>>>>>> +o LANG-563: Change Java package name. >>>>>>> +o LANG-570: Do the test cases really still require main() and >> suite() >>>>>> methods? >>>>>>> +o LANG-579: Add new Validate methods. >>>>>>> +o LANG-599: ClassUtils.getClass(): Allow Dots as Inner Class >>>>>> Separators. >>>>>>> +o LANG-605: DefaultExceptionContext overwrites values in recursive >>>>>> situations. >>>>>>> +o LANG-668: Change ObjectUtils min() & max() functions to use >> varargs >>>>>> rather >>>>>>> + than just two parameters >>>>>>> +o LANG-681: Push down WordUtils to "text" sub-package. >>>>>>> +o LANG-711: Add includeantruntime=false to javac targets to quell >>>>>> warnings in >>>>>>> + ant 1.8.1 and better (and modest performance gain). >>>>>>> +o LANG-713: Increase test coverage of FieldUtils read methods and >>>> tweak >>>>>>> + javadoc. >>>>>>> +o LANG-718: build.xml Java 1.5+ updates. >>>>>>> + >>>>>>> +BUG FIXES >>>>>>> +=========== >>>>>>> + >>>>>>> +o LANG-11: Depend on JDK 1.5+. >>>>>>> +o LANG-302: StrBuilder does not implement clone(). >>>>>>> +o LANG-339: StringEscapeUtils.escapeHtml() escapes multibyte >>>>>> characters like >>>>>>> + Chinese, Japanese, etc. >>>>>>> +o LANG-369: ExceptionUtils not thread-safe. >>>>>>> +o LANG-418: Javadoc incorrect for StringUtils.endsWithIgnoreCase. >>>>>>> +o LANG-428: StringUtils.isAlpha, isAlphanumeric and isNumeric now >>>>>> return false >>>>>>> + for "" >>>>>>> +o LANG-439: StringEscapeUtils.escapeHTML() does not escape chars >>>>>> (0x00-0x20). >>>>>>> +o LANG-448: Lower Ascii Characters don't get encoded by >>>> Entities.java. >>>>>>> +o LANG-468: JDK 1.5 build/runtime failure on LANG-393 >>>> (EqualsBuilder). >>>>>>> +o LANG-474: Fixes for thread safety. >>>>>>> +o LANG-478: StopWatch does not resist to system time changes. >>>>>>> +o LANG-480: StringEscapeUtils.escapeHtml incorrectly converts >> unicode >>>>>>> + characters above U+00FFFF into 2 characters. >>>>>>> +o LANG-481: Possible race-conditions in hashCode of the range >>>> classes. >>>>>>> +o LANG-564: Improve StrLookup API documentation. >>>>>>> +o LANG-568: @SuppressWarnings("unchecked") is used too generally. >>>>>>> +o LANG-571: ArrayUtils.add(T[: array, T element) can create >>>> unexpected >>>>>>> + ClassCastException. >>>>>>> +o LANG-585: exception.DefaultExceptionContext. >>>>>> getFormattedExceptionMessage >>>>>>> + catches Throwable. >>>>>>> +o LANG-596: StrSubstitutor should also handle the default >> properties >>>>>> of a >>>>>>> + java.util.Properties class >>>>>>> +o LANG-600: Javadoc is incorrect for public static int >>>>>>> + lastIndexOf(String str, String searchStr). >>>>>>> +o LANG-602: ContextedRuntimeException no longer an 'unchecked' >>>>>> exception. >>>>>>> +o LANG-606: EqualsBuilder causes StackOverflowException. >>>>>>> +o LANG-608: Some StringUtils methods should take an int character >>>>>> instead of >>>>>>> + char to use String API features. >>>>>>> +o LANG-617: StringEscapeUtils.escapeXML() can't process UTF-16 >>>>>> supplementary >>>>>>> + characters >>>>>>> +o LANG-624: SystemUtils.getJavaVersionAsFloat throws >>>>>>> + StringIndexOutOfBoundsException on Android >>>> runtime/Dalvik >>>>>> VM >>>>>>> +o LANG-629: Charset may not be threadsafe, because the HashSet is >> not >>>>>> synch. >>>>>>> +o LANG-638: NumberUtils createNumber throws a >>>>>> StringIndexOutOfBoundsException >>>>>>> + when argument containing "e" and "E" is passed in >>>>>>> +o LANG-643: Javadoc StringUtils.left() claims to throw on negative >>>>>> len, but >>>>>>> + doesn't >>>>>>> +o LANG-645: FastDateFormat.format() outputs incorrect week of year >>>>>> because >>>>>>> + locale isn't respected >>>>>>> +o LANG-646: StringEscapeUtils.unescapeJava doesn't handle octal >>>>>> escapes and >>>>>>> + Unicode with extra u >>>>>>> +o LANG-656: Example StringUtils.indexOfAnyBut("zzabyycdxx", '') = >> 0 >>>>>> incorrect >>>>>>> +o LANG-658: Some Entitys like Ö are not matched properly >> against >>>>>> its >>>>>>> + ISO8859-1 representation >>>>>>> +o LANG-659: EntityArrays typo: {"\u2122", "−"}, // minus >> sign, >>>>>> U+2212 >>>>>>> + ISOtech >>>>>>> +o LANG-66: StringEscaper.escapeXml() escapes characters > 0x7f. >>>>>>> +o LANG-662: org.apache.commons.lang3.math.Fraction does not reduce >>>>>>> + (Integer.MIN_VALUE, 2^k) >>>>>>> +o LANG-663: org.apache.commons.lang3.math.Fraction does not always >>>>>> succeed in >>>>>>> + multiplyBy and divideBy >>>>>>> +o LANG-664: NumberUtils.isNumber(String) is not right when the >> String >>>>>> is >>>>>>> + "1.1L" >>>>>>> +o LANG-672: Doc bug in DateUtils#ceiling >>>>>>> +o LANG-677: DateUtils.isSameLocalTime compares using 12 hour clock >>>> and >>>>>> not >>>>>>> + 24 hour >>>>>>> +o LANG-685: EqualsBuilder synchronizes on HashCodeBuilder. >>>>>>> +o LANG-703: StringUtils.join throws NPE when toString returns null >>>> for >>>>>> one of >>>>>>> + objects in collection >>>>>>> +o LANG-710: StringIndexOutOfBoundsException when calling >>>>>> unescapeHtml4("") >>>>>>> +o LANG-714: StringUtils doc/comment spelling fixes. >>>>>>> +o LANG-715: CharSetUtils.squeeze() speedup. >>>>>>> +o LANG-716: swapCase and *capitalize speedups. >>>>>>> + >>>>>>> + >>>>>>> +Historical list of changes: http://commons.apache.org/ >>>>>> lang/changes-report.html >>>>>>> + >>>>>>> +For complete information on Commons Lang, including instructions on >>>> how >>>>>> to >>>>>>> +submit bug reports, patches, or suggestions for improvement, see the >>>>>>> +Apache Commons Lang website: >>>>>>> + >>>>>>> +http://commons.apache.org/lang/ >>>>>>> + >>>>>>> +Have fun! >>>>>>> +-Apache Commons Lang team >>>>>>> + >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >> bin.tar.gz >>>>>>> ============================================================ >>>>>> ================== >>>>>>> Binary file - no diff available. >>>>>>> >>>>>>> Propchange: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>>>> bin.tar.gz >>>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>>> svn:mime-type = application/octet-stream >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>>>> bin.tar.gz.asc >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.asc >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.asc >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1,16 @@ >>>>>>> +-----BEGIN PGP SIGNATURE----- >>>>>>> + >>>>>>> +iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlpOIdMACgkQP6rSzV7L >>>>>>> +sxQvGg/+Mgp0sahCwviT0m59s6wjDjBFAdwt2txEv1jxDu/FoSbx/Q2P4gi/R5Jt >>>>>>> +sAMLmrpd2+wMkzXqGW0uEiKQmZQo9QrsR0MI4vMmzBLyTlPHrD3CyNfW4Vt8TyK7 >>>>>>> +RyN3aVJWs9pa6ty5iKx9qT0g6k869OpIUFGQUZ/wOQqNFZKMGoHly3VGmfUVhVK0 >>>>>>> +0CcIiLPsZ1HywoWgCZJpN3tX+J9Aas1LQtDxGcKVfVtJTvc67jLFAVpMhIAAzj64 >>>>>>> +HmjcuT4L4/2R5cGD8OyQPsv+eMncISaK9WAh0PTP1TQu4v964sebUi2qFIrsMFYd >>>>>>> +RYsKR11vj28PEXqKw8o9QSW4SvkfkEVzYjQkUcVOc3Gb0pBRyxPdz/FQFII1rrbI >>>>>>> +icis/kURFNBpCCG2J3gNupqUDBPNC2/XkNM98rSgpkqNGQ8qf8w36QMZHL1L6LO/ >>>>>>> +kVRAy/eVfVuFfsGvhhtJVqZgTA/dH0K3rj0yrgv3tloEr0bM7TC5Wo4jHIFksCQf >>>>>>> +GlBlIXCUIJMkr2PRC1egG5Sq9VUtdfaLAJgIPbq+znY4P1GDodqn5u5RxtyZViWs >>>>>>> +s53THLLdYOAPWNERez+amkec9NjYYNEN7OmvF80I26iN6I/g1eDT9XiouA1k4kmW >>>>>>> +8t5vVKpeeGqiRsWIL8SuMLxGCrsysN7ZaAxbVxz+Cbvk/muiG84= >>>>>>> +=tjQB >>>>>>> +-----END PGP SIGNATURE----- >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>>>> bin.tar.gz.md5 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.md5 >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.md5 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +fe7776aab25e229c9a5805c3ba82d219 >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>>>> bin.tar.gz.sha1 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.sha1 >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.tar.gz.sha1 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +da39a3ee5e6b4b0d3255bfef95601890afd80709 >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip >>>>>>> ============================================================ >>>>>> ================== >>>>>>> Binary file - no diff available. >>>>>>> >>>>>>> Propchange: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.zip >>>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>>> svn:mime-type = application/octet-stream >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.zip.asc >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.asc >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.asc >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1,16 @@ >>>>>>> +-----BEGIN PGP SIGNATURE----- >>>>>>> + >>>>>>> +iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlpOIdMACgkQP6rSzV7L >>>>>>> +sxTdfA/+LQRB1YrNitC1x8DOUYWKoDdoOamJain4dNxuUdcWfbNmoabHfSemCXjm >>>>>>> +D+uaqZZ8f3EaqzcTXmhv5cCOqBnQNHlLVEA0WKN6EaZ6TLTuFWAVeHtLbO6Gk03I >>>>>>> +5oGAXP5dj9m6ABRyuaUJequoFhL+6xUEDM8Hd+uIHp6a0OEsKCHXAwBwsJHPKgUS >>>>>>> +7AO3sruFt98lXCv5h/Pgi0wgCGD+WQfvzJBSxeKc1pR6+BnmVaMcKki+TtOfIQE3 >>>>>>> +ACvjEkijPgiNe3mBcrvKSWHMlySGenFFu2uV4qNVNdE/0XwofLSFHTGXZabf/4p8 >>>>>>> +dfacqnb8cs86/6BmG1vpFc2fL8fCnrF3vitu3GgQhfIBbXYuhyDLjbBDrIE0O3d/ >>>>>>> +xoaoIruAbfPvhF8x5F8Sd69o3LLUcWrW5h3jBKFQpUWI2SwwqxqPK9xnlKaJuDlL >>>>>>> +z9tA5b+2s1pgt44agclBJolUX+o+NzZSE5aS0SlV9b3t4ja/sbEXVSsT7VSA9CMb >>>>>>> +Nv32iAxYsCyHdvQHEp8VVFIuuPJWwrRVEg4LsSkOqpM01PyM//HHeW6v2lq7Apmp >>>>>>> +s31foJGakwQVvHdlC4DxJS1Jfiu/bbCmNl6590WbGwLp7SR26JgC44joWvv5N7D8 >>>>>>> +vabchYyY124vRuWGgLfqYJVmVjKJNv96otx46yr49OLFO66loGo= >>>>>>> +=6Bjb >>>>>>> +-----END PGP SIGNATURE----- >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.zip.md5 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.md5 >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT-bin.zip.md5 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +3b8ee236a7105277427d305587a6c8dd >>>>>>> >>>>>>> Added: dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >>>> bin.zip.sha1 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >> bin.zip.sha1 >>>>>> (added) >>>>>>> +++ dev/commons/lang/binaries/commons-lang3-3.8-SNAPSHOT- >> bin.zip.sha1 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +da39a3ee5e6b4b0d3255bfef95601890afd80709 >>>>>>> >>>>>>> Added: dev/commons/lang/site.zip >>>>>>> ============================================================ >>>>>> ================== >>>>>>> Binary file - no diff available. >>>>>>> >>>>>>> Propchange: dev/commons/lang/site.zip >>>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>>> svn:mime-type = application/octet-stream >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.tar.gz >>>>>>> ============================================================ >>>>>> ================== >>>>>>> Binary file - no diff available. >>>>>>> >>>>>>> Propchange: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >>>>>> src.tar.gz >>>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>>> svn:mime-type = application/octet-stream >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >>>> src.tar.gz.asc >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.asc >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.asc >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1,16 @@ >>>>>>> +-----BEGIN PGP SIGNATURE----- >>>>>>> + >>>>>>> +iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlpOIdMACgkQP6rSzV7L >>>>>>> +sxQEgQ//UW7n08aL8vSkbSjn3hV4z8SbcQ/0PV29/V5GZ74QtAEPppavJZ/W9nja >>>>>>> +NsbUz4TRp6SDh8RaS1H78mpdXSMRvim6JaGRGqDrlxi6SYoA6LpAgbfo/RuOLt+v >>>>>>> +eMnBRZKwiikNCP9xk99shnRwhKlXn07hxU0fuWdAK898w3/vFN3E4NUpWPChnK0r >>>>>>> +qo9kWDtla2gtHCxjgHQs7X0CISskqwc5/o/9wo5vkFJCoIkuBGWwidIy0/qhhHbs >>>>>>> +vC5Zn3+0Ky5JArnDqj10A2gZAldeGLe7Ghb0j0gZg6hYInMunfkMDBWSWLHC/rTA >>>>>>> +thntKReWVnkNIV2N7WL4lkvLAl8a6nMS8zeUNGs4Tcl+AO+cpZ9fZGNkIVKCruyC >>>>>>> +IgUh2qcM/KrPbOUZFx1CLq6db8UOwo7pkSwJ52SbcBEIk1S9qLcYkBtVefRr8v1B >>>>>>> +R7hRfehrAm+r0nJLwugiuTanafW9YUZzT4s88VBCHdqQbya3f2b+EH3qNzGNcXBS >>>>>>> +0yn3qqqrWdb1CbrMi5mv4OTb/g1OtISLpZx5i2UjI95KOZu1O8pF5XnLB8SlUfIG >>>>>>> +QGvIIYh+cpBpY4fkcTEnT7+57z9z9HUUsFoDcAgHpKwMIn+8mEy5/oDcr5GCVJfW >>>>>>> +hpyFy+OIVkBVeGVL5lvvfdun99s2tMQK+sadQXZHHlIp5zktdaw= >>>>>>> +=8mS4 >>>>>>> +-----END PGP SIGNATURE----- >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >>>> src.tar.gz.md5 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.md5 >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.md5 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +11b0a67eee0b856ee3629bdcfef35649 >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >>>>>> src.tar.gz.sha1 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.sha1 >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.tar.gz.sha1 >>>>>> Thu Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +da39a3ee5e6b4b0d3255bfef95601890afd80709 >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip >>>>>>> ============================================================ >>>>>> ================== >>>>>>> Binary file - no diff available. >>>>>>> >>>>>>> Propchange: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.zip >>>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>>> svn:mime-type = application/octet-stream >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.zip.asc >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.asc >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.asc >> Thu >>>>>> Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1,16 @@ >>>>>>> +-----BEGIN PGP SIGNATURE----- >>>>>>> + >>>>>>> +iQIzBAABCAAdFiEEtuc9hOpPzEcWYIclP6rSzV7LsxQFAlpOIdMACgkQP6rSzV7L >>>>>>> +sxRc7Q/5ASnS5NgvQneV8Ypb2twHWaSW2W1W/EdufcW9JadnUQz/mjWxSTCOP/EJ >>>>>>> +t2jMsDS8xv0Qvx5BuYpK/PzYh6CztMwBVVAJlLyd1GhJid7mM3ptzK5cNUmfFi4O >>>>>>> +3JZItWrBNLRT0yZyBj0WzaaTUZAZuma48EDeZ8xBgG01dE0pbJhdXW+9X9KC/WdK >>>>>>> +tPPprHl9d1zZCTpoyYzknX1hbVPB5vw/T9o3RPU7tJBjLG1Mj176sa1kjTuGwNZ0 >>>>>>> +Zup/gy7eaof59klFQ7r3HOVhHjPJJEDebmLXb4L5YVZEJZJHcnI5tAqdcu8nDlft >>>>>>> +L+OTnQuhH0ueHDqfJCxvzxY7pjShwVrawXuy983FwdaLvtzGm2tOqyYxbmPy4PwY >>>>>>> +F02d4bkBbprjGfnKCgIgQ8X29Fzp4MNJ9y8XbObtQCvp9lA4ZaRQk3Y3RBgmWL6J >>>>>>> +ifYOJ8YuBSvohPtdAtvTZHcq8jTd3krgQ4kGQ76j2dIGGgzLv8DmEXyH8aS+E8y4 >>>>>>> +bLjKDBgRVfaMx1wEJXFhXa8P7dDyYEgOgHrfgDaadaW7IsBF2dH3p8K+If2MjzVX >>>>>>> +eTWTd+TbqqjmMfHal928m6wQFTco9DrC19GvZcwbakELYg/tW6ovmjIbZnRFtVkz >>>>>>> +iQBZSr3JG1UTtsgJtzEB8TZrODXyiKoGeCqc0pgkyqZ3TpBw3i8= >>>>>>> +=5+7f >>>>>>> +-----END PGP SIGNATURE----- >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.zip.md5 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.md5 >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.md5 >> Thu >>>>>> Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +66d939d849bb560af8259d10156a58ec >>>>>>> >>>>>>> Added: dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT- >> src.zip.sha1 >>>>>>> ============================================================ >>>>>> ================== >>>>>>> --- dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.sha1 >>>>>> (added) >>>>>>> +++ dev/commons/lang/source/commons-lang3-3.8-SNAPSHOT-src.zip.sha1 >>>> Thu >>>>>> Jan 4 12:45:36 2018 >>>>>>> @@ -0,0 +1 @@ >>>>>>> +da39a3ee5e6b4b0d3255bfef95601890afd80709 >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >>>>>> For additional commands, e-mail: dev-h...@commons.apache.org >>>>>> >>>>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org <mailto: >> dev-unsubscr...@commons.apache.org> >>>> For additional commands, e-mail: dev-h...@commons.apache.org <mailto: >> dev-h...@commons.apache.org> >> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org