Apache Commons logo Commons Text

Apache Commons Text Changes

Release History

Version Date Description
1.12.0 2024-04-13 Release 1.12.0. Requires Java 8 or above.
1.11.0 2023-10-24 Release 1.11.0. Requires Java 8 or above.
1.10.0 2022-09-24 Release 1.10.0. Requires Java 8 or above.
1.9 2020-07-21 Release 1.9. Requires Java 8 or above.
1.8 2019-08-30 Release 1.8. Requires Java 8 or above.
1.7 2019-06-30 Release 1.7. Requires Java 8 or above.
1.6 2018-10-12 Release 1.6. Requires Java 8 or above.
1.5 2018-09-29 Release 1.5. Requires Java 8 or above.
1.4 2018-06-12 Release 1.4. Requires Java 8 or above.
1.3 2018-03-16 Release 1.3. Requires Java 7.
1.2 2017-12-12 Release 1.2. Requires Java 7.
1.1 2017-05-23 Release 1.1. Requires Java 7.
1.0 2017-03-04 Requires Java 7. Incompatible changes ==================== All package names changed from org.apache.commons.text.beta in 1.0-beta-1 to org.apache.commons.text in 1.0. Methods StringEscapeUtils#escapeHtml3Once and StringEscapeUtils#escapeHtml4Once have been removed; see TEXT-40
1.0-beta-1 2017-01-30 First release (beta) of Commons Text. Requires Java 7.

Release 1.12.0 – 2024-04-13

Type Changes By
Add Add StringLookupFactory.fileStringLookup(Path...) and deprecated fileStringLookup(). Thanks to Gary Gregory. ggregory
Add Add StringLookupFactory.propertiesStringLookup(Path...) and deprecated propertiesStringLookup(). Thanks to Gary Gregory. ggregory
Add Add StringLookupFactory.xmlStringLookup(Map, Path...) and deprecated xmlStringLookup() and xmlStringLookup(Map). Thanks to Gary Gregory. ggregory
Add Add StringLookupFactory.builder() for fencing Path resolution of the file, properties and XML lookups. Thanks to Gary Gregory. ggregory
Add Add DoubleFormat.Builder.get() as Builder now implements Supplier. Thanks to Gary Gregory. ggregory
Fix WordUtils.containsAllWords​() may throw PatternSyntaxException. Fixes TEXT-232. Thanks to Arnout Engelen, Gary Gregory. ggregory
Fix Fix regression for determining whitespace in WordUtils #519. Fixes TEXT-175. Thanks to David Lavati, seanfabs, Gary Gregory, Bruno P. Kinoshita. ggregory
Fix Deprecate Builder in favor of Supplier. Thanks to Gary Gregory. ggregory
Update Bump commons-lang3 from 3.13.0 to 3.14.0. Thanks to Gary Gregory. ggregory
Update Bump commons.bytebuddy.version from 1.14.9 to 1.14.13 #476, #482, #505, #521. Thanks to Dependabot. ggregory
Update Bump org.codehaus.mojo:exec-maven-plugin from 3.1.0 to 3.2.0 #474, #508. Thanks to Dependabot. ggregory
Update Bump commons-io from 2.15.0 to 2.16.1 #522, #527. Thanks to Gary Gregory. ggregory
Update Bump commons-parent from 64 to 69 #524. Thanks to Gary Gregory. ggregory
Update Bump org.assertj:assertj-core from 3.24.2 to 3.25.3. Thanks to Dependabot. ggregory

Release 1.11.0 – 2023-10-24

Type Changes By
Fix Fix StringTokenizer.getTokenList to return an independent modifiable list. Fixes TEXT-219. Thanks to Jaap Sperling. aherbert
Fix Fix Javadoc for StringEscapeUtils.escapeHtml4 #382 Thanks to James Nord. aherbert
Fix TextStringBuidler#hashCode() allocates a String on each call #387. Thanks to Pavel Belousov, Gary Gregory. ggregory
Fix Fix Bundle-SymbolicName to use the package name org.apache.commons.text. Fixes TEXT-221. Thanks to Remco Riswick. aherbert
Fix Add and use a package-private singleton for RegexTokenizer. Thanks to Gary Gregory. ggregory
Fix Add and use a package-private singleton for CosineSimilarity. Thanks to Gary Gregory. ggregory
Fix Add and use a package-private singleton for LongestCommonSubsequence. Thanks to Gary Gregory. ggregory
Fix Add and use a package-private singleton for JaroWinklerSimilarity. Thanks to Gary Gregory. ggregory
Fix Add and use a package-private singleton for JaccardSimilarity. Thanks to Gary Gregory. ggregory
Fix [StepSecurity] ci: Harden GitHub Actions #428. Thanks to step-security-bot, Gary Gregory. ggregory
Fix Improve AlphabetConverter Javadoc #429. Thanks to Dimitrios Efthymiou. ggregory
Fix Fix exception message in IntersectionResult to make set-theoretic sense #438. Thanks to Dimitrios Efthymiou. ggregory
Fix Add null-check in RandomStringGenerator#Builder#selectFrom() to avoid NullPointerException #434. Thanks to Dimitrios Efthymiou, Gary Gregory. ggregory
Fix Add null-check in RandomStringGenerator#Builder#withinRange() to avoid NullPointerException. Thanks to Dimitrios Efthymiou, Gary Gregory. ggregory
Fix Fix TextStringBuilder to over-allocate when ensuring capacity #452. Fixes TEXT-228. Thanks to Alex Herbert, Gary Gregory. ggregory
Fix Constructor for ResourceBundleStringLookup should be private instead of package-private. Thanks to Elliotte Rusty Harold, Gary Gregory. ggregory
Fix Constructor for UrlDecoderStringLookup should be private instead of package-private. Thanks to Elliotte Rusty Harold, Gary Gregory. ggregory
Fix Constructor for UrlEncoderStringLookup should be private instead of package-private. Thanks to Elliotte Rusty Harold, Gary Gregory. ggregory
Fix Javadoc of org.apache.commons.text.lookup.DefaultStringLookup.XML is incorrect. Fixes TEXT-230. Thanks to Michael Osipov, Gary Gregory. ggregory
Fix Update DoubleFormat to state it is based on Double.toString. #467. Thanks to Alex Herbert. ggregory
Add Set SecureProcessing feature in XmlStringLookup by default. Fixes TEXT-224. Thanks to PJ Fanning, Gary Gregory. ggregory
Add Add StringLookupFactory.xmlStringLookup(Map<String, Boolean>...). Fixes TEXT-224. Thanks to Gary Gregory. ggregory
Add Add @FunctionalInterface to FormatFactory. Thanks to Gary Gregory. ggregory
Add Add RandomStringGenerator.builder(). Thanks to Gary Gregory. ggregory
Add Add XmlEncoderStringLookup/XmlDecoderStringLookup #449. Fixes TEXT-229. Thanks to Michael Osipov, Elliotte Rusty Harold, Gary Gregory. ggregory
Add Add StringSubstitutor.toString(). Thanks to Gary Gregory. ggregory
Update Bump actions/cache. Thanks to Dependabot. ggregory
Update Bump actions/setup-java. Thanks to Dependabot. ggregory
Update Bump actions/checkout. Thanks to Dependabot. ggregory
Update Bump pmd from 6.49.0 to 6.52.0 #364. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump commons-rng-simple from 1.4 to 1.5 #370. Thanks to Dependabot. ggregory
Update Bump spotbugs-maven-plugin from 4.7.2.0 to 4.7.3.6 #371, #385. Thanks to Dependabot, Gary Gregory. ggregory
Update Bump spotbugs from 4.7.2 to 4.7.3 #373. Thanks to Dependabot. ggregory
Update Bump mockito-inline from 4.8.0 to 4.11.0 #380, #389, #396, #400. Thanks to Dependabot. kinow
Update Bump jmh.version from 1.35 to 1.37 #388. Thanks to Dependabot. kinow
Update Bump commons-parent from 54 to 64 #392, #401. Thanks to Gary Gregory. ggregory
Update Bump assertj-core from 3.23.1 to 3.24.2 #405, #410. Thanks to Dependabot. kinow
Update Bump maven-checkstyle-plugin from 3.2.0 to 3.2.1 #407. Thanks to Dependabot. kinow
Update Bump commons-io from 2.11.0 to 2.15.0. Thanks to Gary Gregory. ggregory
Update Bump commons-lang3 from 3.12.0 to 3.13.0. Thanks to Gary Gregory. ggregory

Release 1.10.0 – 2022-09-24

Type Changes By
Fix Fix CaseUtils when the input string contains only delimiters. Fixes TEXT-189. Thanks to Gongpu Zhu. kinow
Fix Add GraalVM test dependencies to fix test failures with Java 15. Fixes TEXT-187. kinow
Fix Incorrect values for Jaccard similarity with empty strings. Fixes TEXT-158. kinow
Fix StringSubstitutor map constructor throws NPE on 1.9 with null map. Fixes TEXT-186. Thanks to Gautam Korlam, Gary Gregory. ggregory
Fix JaroWinklerDistance returns the same values as JaroWinklerSimilarity. Fixes TEXT-191. Thanks to Bradley David Rumball. kinow
Fix Correct Javadoc in FileStringLookup. Thanks to Gary Gregory. ggregory
Fix Minor Improvements #192, #196. Thanks to Arturo Bernal. ggregory
Fix Use StringUtils.INDEX_NOT_FOUND constant. Fixes TEXT-194. Thanks to Arturo Bernal. kinow
Fix Remove redundant local variable. Fixes TEXT-199. Thanks to Arturo Bernal. kinow
Fix Replace lambda with method reference. Fixes TEXT-198. Thanks to Arturo Bernal. kinow
Fix Simplify statements. Fixes TEXT-200. Thanks to Arturo Bernal. kinow
Fix Replace statement lambda with expression lambda. Fixes TEXT-197. Thanks to Arturo Bernal. kinow
Fix Use static class inner class in tests. Fixes TEXT-204. Thanks to Arturo Bernal. kinow
Fix Simplify assertion. Fixes TEXT-201. Thanks to Arturo Bernal. kinow
Fix Extract duplicate code. Fixes TEXT-202. Thanks to Arturo Bernal. kinow
Fix Set void return method. Fixes TEXT-205. Thanks to Arturo Bernal. kinow
Fix Remove unused exception from TextStringBuilder.readFrom(CharBuffer). This preserves binary compatibility but not source compatibility. Thanks to Gary Gregory. ggregory
Fix StrBuilder.StrBuilderReader.skip(long): Throw an exception when an implicit narrowing conversion in a compound assignment would result in information loss or a numeric error such as an overflows. Thanks to CodeQL, Gary Gregory. ggregory
Fix TextStringBuilder.TextStringBuilderReader.skip(long): Throw an exception when an implicit narrowing conversion in a compound assignment would result in information loss or a numeric error such as an overflows. Thanks to CodeQL, Gary Gregory. ggregory
Fix TextStringBuilder.equals whatever the capacity is #281. Fixes TEXT-211. Thanks to sebx59. ggregory
Fix A More Efficient Implementation for Calculating Size of Longest Common Subsequence. Fixes TEXT=212. Thanks to Ali Ghanbari. kinow
Fix LookupTranslator returns count of chars consumed, not of codepoints consumed. Fixes TEXT-209. Thanks to fourAjeff. kinow
Fix Use Math.min() call instead of doing it manually. #335. Fixes TEXT-209. Thanks to Arturo Bernal. ggregory
Fix TextStringBuilder: Throw OutOfMemoryError instead of NegativeArraySizeException. Thanks to ValentijnvdBeek, Gary Gregory. ggregory
Fix TextStringBuilder: Can't grow to sizes up to Integer.MAX_VALUE. Thanks to ValentijnvdBeek, Gary Gregory. ggregory
Fix Make default string lookups configurable via system property. Remove dns, url, and script lookups from defaults. If these lookups are required for use in StringSubstitutor.createInterpolator(), they must be enabled via system property. See StringLookupFactory for details. mattjuntunen
Add Add DoubleFormat utility. Fixes TEXT-207. mattjuntunen
Add Document negative limit for WordUtils abbreviate method. Fixes TEXT-190. Thanks to Benjamin Bing. kinow
Add Speed up LevenshteinDistance with threshold by exiting early. Fixes TEXT-188. Thanks to Jakob Vesterstrøm. kinow
Add Release Notes page hasn't been updated for 1.9 release yet. Fixes TEXT-185. Thanks to Larry West, Gary Gregory. ggregory
Add Add StrBuilder.isNotEmpty(). Thanks to Gary Gregory. ggregory
Update Bump actions/setup-java from v1.4.0 to 3 #147, #156, #155, #172, #215, #314. Thanks to Dependabot. kinow
Update Bump github/codeql-action from 1 to 2 #319. Thanks to Dependabot. kinow
Update Bump checkstyle from 8.34 to 9.3, #141, #168, #182, #188, #193, #201, #208, #211, #228, #235, #245, #253, #255, #262, #270, #280, #287, #299, #315, #321. Thanks to Dependabot. ggregory
Update Bump spotbugs-maven-plugin from 4.0.0 to 4.7.2.0, #144, #150, #167, #176, #194, #210, #223, #250, #268, #273, #277, #278, #286, #293, #303, #320, #325, #338, #344, #354. Thanks to Gary Gregory, Dependabot. ggregory
Update Bump spotbugs from 4.1.3 to 4.7.2 #175, 189, #209, #218, #247, #256, #264, #275, #284, #289, #296, #306, #355. Thanks to Gary Gregory, Dependabot. ggregory
Update Bump mockito-inline from 3.4.4 to 4.8.0, #143, #148, #149, #152, #153, #154, #158, #159, #166, #177, #180, #187, #195, #197, #207, #216, #231, #236, #237, #243, #258, #259, #260, #261, #272, #285, #291, #305, #317, #330, #331, #347, #352. Thanks to Dependabot. ggregory
Update Bump junit-jupiter from 5.6.2 to 5.9.1 #163, #204, #232, #265, #269, #288, #343, #357. Thanks to Dependabot. kinow
Update Bump assertj-core from 3.16.1 to 3.23.1 #151, #157, #160, #178, #184, #199, #244, #267, #294. Thanks to Dependabot, Gary Gregory. kinow
Update Bump commons-io from 2.7 to 2.11.0 #161 #251. Thanks to Dependabot, Gary Gregory. kinow
Update Bump commons-parent from 51 to 54 #145, #358. Thanks to Dependabot, Gary Gregory. kinow
Update Bump maven-pmd-plugin from 3.13.0 to 3.19.0 #186, #263, #302, #334, #349, #353. Thanks to Dependabot. kinow
Update Bump pmd from 6.42.0 to 6.46.0. Thanks to Gary Gregory. kinow
Update Bump graalvm.version from 20.2.0 to 22.0.0.2 #185, #198, #206, #227, #252, #276, #295, #300. Thanks to Dependabot. ggregory
Update Bump commons.japicmp.version from 0.14.3 to 0.16.0. Thanks to Gary Gregory. ggregory
Update Bump commons.jacoco.version 0.8.5 to 0.8.8; fixes Java 15 build. Thanks to Gary Gregory. ggregory
Update Bump maven-checkstyle-plugin from 3.1.1 to 3.2.0 #202, #348. Thanks to Dependabot. kinow
Update Bump commons-lang3 3.11 -> 3.12.0. Thanks to Gary Gregory. ggregory
Update Bump commons.javadoc.version from 3.2.0 to 3.4.1. Thanks to Gary Gregory. ggregory
Update Bump commons.project-info.version from 3.1.0 to 3.1.2. Thanks to Gary Gregory. ggregory
Update Bump jmh.version from 1.32 to 1.35 #254, #292, #313. Thanks to Dependabot. kinow
Update Bump commons-rng-simple from 1.3 to 1.4 #266. Thanks to Dependabot. kinow
Update Bump taglist-maven-plugin from 2.4 to 3.0.0 #297. Thanks to Dependabot. kinow
Update Bump commons.pmd-impl.version from 6.44.0 to 6.49.0 #323, #336, #345, #350. Thanks to Dependabot. kinow
Update Bump exec-maven-plugin from 3.0.0 to 3.1.0 #340. Thanks to Dependabot. kinow

Release 1.9 – 2020-07-21

Type Changes By
Fix Removed non-existing parameter from Javadocs and spelled out parameters in throws. Fixes TEXT-166. Thanks to Mikko Maunu. kinow
Fix StringEscapeUtils.unescapeCsv doesn't remove quotes at begin and end of string. Fixes TEXT-149. Thanks to Yuji Konishi. kinow
Fix ScriptStringLookup does not accept ":" #126. Fixes TEXT-174. Thanks to furkilic. ggregory
Fix StringSubstitutor incorrectly removes some escape characters. Fixes TEXT-178. Thanks to Gary Gregory. ggregory
Fix Fix Javadocs #135. Fixes TEXT-181. Thanks to XenoAmess. ggregory
Fix Fix typos #137. Fixes TEXT-182. Thanks to XenoAmess. ggregory
Fix Make ConstantStringLookup.constantCache final #136. Fixes TEXT-183. Thanks to XenoAmess. ggregory
Fix Simplify if in CaseUtils #134. Fixes TEXT-184. Thanks to XenoAmess. ggregory
Update [javadoc] Fix compiler warnings in Java code example in Javadoc #124. Thanks to Johan Hammar. ggregory
Update Update from Apache Commons Lang 3.9 to 3.11. Fixes TEXT-177. Thanks to Gary Gregory. ggregory
Add Add StringMatcher.size(). Thanks to Gary Gregory. ggregory
Add Refactor TextStringBuilder.readFrom(Readable), extracting readFrom(CharBuffer) and readFrom(Reader). Thanks to Gary Gregory. ggregory
Add Add BiStringLookup and implementation BiFunctionStringLookup. Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.StringSubstitutor.StringSubstitutor(StringSubstitutor). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.TextStringBuilder(CharSequence). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.drainChar(int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.drainChars(int, int, char[]. int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.isNotEmpty(). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.isReallocated(). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.readFrom(Reader, int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.set(String). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.wrap(char[]). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.TextStringBuilder.wrap(char[], int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.io.StringSubstitutorReader. Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.lookup.StringLookupFactory.functionStringLookup(Function<String, V>). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.matcher.StringMatcher.isMatch(CharSequence, int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.matcher.StringMatcher.isMatch(CharSequence, int, int, int). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.matcher.StringMatcherFactory.andMatcher(StringMatcher...). Thanks to Gary Gregory. ggregory
Add Add org.apache.commons.text.matcher.StringMatcherFactory.stringMatcher(char...). Thanks to Gary Gregory. ggregory
Update [build] Skip clirr since we use JApiCmp. Thanks to Gary Gregory. ggregory
Update [test] junit-jupiter 5.5.1 -> 5.5.2. Thanks to Gary Gregory. ggregory
Update [test] org.assertj:assertj-core 3.13.2 -> 3.16.1. Thanks to Gary Gregory. ggregory
Update [build] com.puppycrawl.tools:checkstyle 8.23 -> 8.34. Thanks to Gary Gregory. ggregory
Update [build] Update JUnit from 5.5.2 to 5.6.2. Thanks to Gary Gregory. ggregory
Update [build] commons.jacoco.version 0.8.4 -> 0.8.5. Thanks to Gary Gregory. ggregory
Update [build] commons.javadoc.version 3.1.1 -> 3.2.0. Thanks to Gary Gregory. ggregory
Update [build] commons.japicmp.version 0.14.1 -> 0.14.3. Thanks to Gary Gregory. ggregory
Update [build] checkstyle.plugin.version 3.1.0 -> 3.1.1. Thanks to Gary Gregory. ggregory
Update [build] checkstyle.version 8.27 -> 8.33. Thanks to Gary Gregory. ggregory
Update [build] org.apache.commons:commons-parent 48 -> 51. Thanks to Gary Gregory. ggregory
Update [build] maven-pmd-plugin 3.12.0 -> 3.13.0. Thanks to Gary Gregory. ggregory
Update [build] org.mockito 3.3.3 -> 3.4.4. Thanks to Gary Gregory. ggregory

Release 1.8 – 2019-08-30

Type Changes By
Fix commons-text web page missing "RELEASE-NOTES-1.7.txt". Fixes TEXT-167. Thanks to Larry West. ggregory
Fix (doc) Fixed wrong value for Jaro-Winkler example #117. Fixes TEXT-168. Thanks to luksan47. ggregory
Add Add helper factory method org.apache.commons.text.StringSubstitutor.createInterpolator(). Fixes TEXT-169. Thanks to Gary Gregory. ggregory
Add Add String lookup for host names and IP addresses (DnsStringLookup). Fixes TEXT-170. Thanks to Gary Gregory. ggregory
Fix StringLookupFactory.addDefaultStringLookups(Map) does not convert keys to lower case. Fixes TEXT-171. Thanks to Gary Gregory. ggregory
Update Expand Javadoc for StringSubstitutor and friends. Thanks to Gary Gregory. ggregory
Update [site] checkstyle.version 8.21 -> 8.23. Thanks to Gary Gregory. ggregory

Release 1.7 – 2019-06-30

Type Changes By
Fix WordUtils.wrap must calculate offset increment from wrapOn pattern length. Fixes TEXT-111. Thanks to @CAPS50. kinow
Update Jaro Winkler Distance refers to similarity. Fixes TEXT-104. Thanks to Sascha Szott. kinow
Add Add an enum to the lookup package that lists all StringLookups. Fixes TEXT-148. ggregory
Add Add a toggle to throw an exception when a variable is unknown in StringSubstitutor. Fixes TEXT-127. Thanks to Jean-Baptiste REICH, Sebb, Don Jeba, Gary Gregory. ggregory
Add TextStringBuilder append sub-sequence not consistent with Appendable. Fixes TEXT-138. Thanks to Neal Johnson, Don Jeba. ggregory
Add Fix possible infinite loop in WordUtils.wrap for a regex pattern that would trigger on a match of 0 length. Fixes TEXT-152. Thanks to @CAPS50.
Update Make prefixSet in LookupTranslator a BitSet. Fixes TEXT-153. Thanks to amirhadadi.
Update Fix the RegexTokenizer to use a static Pattern. Fixes TEXT-156. aherbert
Update Remove rounding from JaccardDistance and JaccardSimilarity. Fixes TEXT-157. aherbert
Fix Fix the JaroWinklerSimilarity to use StringUtils.equals to test for CharSequence equality. Fixes TEXT-151. aherbert
Add Add a generic IntersectionSimilarity measure. Fixes TEXT-155. aherbert
Update Update Apache Commons Lang from 3.8.1 to 3.9. Fixes TEXT-162. ggregory
Fix ResourceBundleStringLookup.lookup(String) throws MissingResourceException instead of returning null. Fixes TEXT-165. ggregory
Update Update tests from org.assertj:assertj-core 3.12.1 to 3.12.2. ggregory
Update Update site from com.puppycrawl.tools:checkstyle 8.18 to 8.21. ggregory

Release 1.6 – 2018-10-12

Type Changes By
Update Add the resource string bundle string lookup to the default set of lookups. Fixes TEXT-144. ggregory
Update Add StringLookupFactory methods for the URL encoder and decoder string lookups. Fixes TEXT-145. ggregory
Update org.apache.commons.text.lookup.StringLookupFactory.interpolatorStringLookup() should reuse a singleton instance. Fixes TEXT-146. ggregory
Update Add a Base64 encoder string lookup. Fixes TEXT-147. ggregory

Release 1.5 – 2018-09-29

Type Changes By
Fix Improve JaccardSimilarity computational cost. Fixes TEXT-139. Thanks to Nick Wong. chtompki
Fix JSON escaping incorrect for the delete control character. Fixes TEXT-118. Thanks to Nandor Kollar. chtompki
Fix Fixes JaroWinklerDistance: Wrong results due to precision of transpositions. Fixes TEXT-130. Thanks to Jan Martin Keil. chtompki
Fix JaroWinklerDistance: Calculation deviates from definition. Fixes TEXT-131. Thanks to Jan Martin Keil. chtompki
Update Update Apache Commons Lang from 3.7 to 3.8.1. Fixes TEXT-132. ggregory
Add Add a XML file XPath string lookup. Fixes TEXT-133. ggregory
Add Add a Properties file string lookup. Fixes TEXT-134. ggregory
Add Add a script string lookup. Fixes TEXT-135. ggregory
Add Add a file string lookup. Fixes TEXT-136. ggregory
Add Add a URL string lookup. Fixes TEXT-137. ggregory
Add Add a Base64 string lookup. Fixes TEXT-140. ggregory
Add Add org.apache.commons.text.lookup.StringLookupFactory.resourceBundleStringLookup(String). Fixes TEXT-141. ggregory
Add Add URL encoder and decoder string lookups. Fixes TEXT-142. ggregory
Add Add constant string lookup like the one in Apache Commons Configuration. Fixes TEXT-143. ggregory

Release 1.4 – 2018-06-12

Type Changes By
Fix StringEscapeUtils#unescapeJson does not unescape double quotes and forward slash. Fixes TEXT-120. pschumacher
Fix Remove mention of SQL escaping from user guide. Fixes TEXT-119. pschumacher
Update Update Java requirement from version 7 to 8. Fixes TEXT-121. Thanks to pschumacher. ggregory
Update Allow full customization with new API org.apache.commons.text.lookup.StringLookupFactory.interpolatorStringLookup(Map<String, StringLookup>, StringLookup, boolean). Fixes TEXT-122. ggregory
Fix WordUtils.wrap throws StringIndexOutOfBoundsException when wrapLength is Integer.MAX_VALUE. Fixes TEXT-123. Thanks to Takanobu Asanuma. ggregory

Release 1.3 – 2018-03-16

Type Changes By
Add Add Automatic-Module-Name MANIFEST entry for Java 9 compatibility. Fixes TEXT-110. pschumacher
Fix Build failure with java 9-ea+159. Fixes TEXT-70. pschumacher
Add Add an interpolator string lookup: StringLookupFactory#interpolatorStringLookup(). Fixes TEXT-113. ggregory
Add Add a StrSubstitutor replacement based on interfaces: StringSubstitutor. Fixes TEXT-114. ggregory
Add Add a StrBuilder replacement based on the StringMatcher interface: TextStringBuilder. Fixes TEXT-115. ggregory
Add Add a StrTokenizer replacement based on the StringMatcher interface: StringTokenizer. Fixes TEXT-116. ggregory
Add Add a local host string lookup: LocalHostStringLookup. Fixes TEXT-117. ggregory
Fix StrLookup API confusing. Fixes TEXT-80. ggregory

Release 1.2 – 2017-12-12

Type Changes By
Update Upversion commons-lang to 3.7. Fixes TEXT-107. chtompki
Fix Exception thrown in ExtendedMessageFormat using quotes with custom registry. Fixes TEXT-106. Thanks to Benoit Moreau. kinow
Fix StringEscapeUtils#UnEscapeJson doesn't recognize escape signs correctly. Fixes TEXT-100. Thanks to Don Jeba. kinow
Add StrSubstitutor: Ability to turn off substitution in values. Fixes TEXT-74. Thanks to Ioannis Sermetziadis. chtompki
Add RandomStringGenerator able to pass multiple ranges to .withinRange(). Fixes TEXT-97. Thanks to Amey Jadiye. chtompki
Update Deprecate isDelimiter and use HashSets for delimiter checks. Fixes TEXT-98. Thanks to Arun Vinud S S. chtompki
Add WordUtils.initials support for UTF-16 surrogate pairs. Fixes TEXT-89. Thanks to Arun Vinud S S. chtompki
Update WordUtils should treat an empty delimiter array as no delimiters. Fixes TEXT-88. Thanks to Amey Jadiye. chtompki
Update Update RandomStringGenerator to accept a list of valid characters. Fixes TEXT-93. Thanks to Amey Jadiye. chtompki
Add Add CharacterPredicates for ASCII letters (uppercase/lowercase) and arabic numerals. Fixes TEXT-90. pschumacher
Add Added CaseUtils class with camel case conversion support. Fixes TEXT-85. Thanks to Arun Vinud S S. chtompki
Add RandomStringGenerator should be able to generate a String with a random length. Fixes TEXT-91. pschumacher
Update Update commons-lang dependency to version 3.6. Fixes TEXT-92. pschumacher
Update Document that commons-csv should be used in preference to CsvTranslators. Fixes TEXT-83. Thanks to Amey Jadiye. chtompki
Update NumericEntityUnescaper.options - fix TODO. Fixes TEXT-67. kinow
Update RandomStringGenerator claims to be immutable, but isn't. Fixes TEXT-84. djones
Add Add StrLookup.resourceBundleLookup(ResourceBundle). Fixes TEXT-102. ggregory
Fix Typo in LongestCommonSubsequence#logestCommonSubsequence. Fixes TEXT-105. Thanks to Abrasha. pschumacher

Release 1.1 – 2017-05-23

Type Changes By
Update WordUtils should use toXxxxCase(int) rather than toXxxxCase(char). Fixes TEXT-39. Thanks to Amey Jadiye. chtompki
Add WordUtils.abbreviate support. Fixes TEXT-41. Thanks to Amey Jadiye. chtompki
Add Putting WordUtils back in to the codebase. Fixes TEXT-82. Thanks to Amey Jadiye. chtompki
Add Add RandomStringGenerator. Fixes TEXT-81. Thanks to djones. pschumacher
Add RandomStringGenerator: allow users to provide source of randomness. Fixes TEXT-36. Thanks to Raymond DeCampo. pschumacher
Fix Correct round issue in Jaro Winkler implementation. Fixes TEXT-76. kinow
Fix Similar to LANG-1025, clirr fails site build. Fixes TEXT-72. chtompki

Release 1.0 – 2017-03-04

Type Changes By
Fix Investigate locale issue in ExtendedMessageFormatTest. Fixes TEXT-64. Thanks to chtompki. kinow
Fix Resolve PMD/CMD Violations. Fixes TEXT-69. chtompki
Remove Escape HTML characters only once: revert. Fixes TEXT-40. sebb
Fix Fixing the 200 checkstyle errors present in 1.0-beta-1. Fixes TEXT-65. chtompki
Fix Mutable fields should be private. Fixes TEXT-63. sebb

Release 1.0-beta-1 – 2017-01-30

Type Changes By
Fix Incorporate suggestions from RC2 into 1.0 release. Fixes TEXT-62. chtompki
Update Naming packages org.apache.commons.text.beta. Fixes TEXT-61. Thanks to Lee Adcock. chtompki
Fix Upgrading Jacoco for Java 9-ea compatibility. Fixes TEXT-60. Thanks to Lee Adcock. chtompki
Update Refactor EntityArrays to have unmodifiableMaps in leu of String[][]. Fixes TEXT-58. chtompki
Update Prepare site for 1.0 release. Fixes TEXT-53. chtompki
Add Move CvsTranslators out of StringEscapeUtils and make them DRY. Fixes TEXT-56. Thanks to Jarek Strzeleck. chtompki
Remove Remove WordUtils to be added back in an upcoming 1.X release. Fixes TEXT-55. chtompki
Fix Possible attacks through StringEscapeUtils.escapeEcmaScrip better javadoc. Fixes TEXT-52. chtompki
Remove Remove RandomStringGenerator to be added back in the 1.1 release. Fixes TEXT-51. chtompki
Update Upgrade from commons-parent version 41 to version 42. Fixes TEXT-50. chtompki
Add Escape HTML characters only once. Fixes TEXT-40. Thanks to Sampanna Kahu. chtompki
Fix Global vs local source of randomness. Fixes TEXT-37. djones
Fix Fluent API in "RandomStringBuilder". Fixes TEXT-38. djones
Fix Fix JaroWinklerDistance in the manner of LUCENE-1297. Fixes TEXT-26. chtompki
Add Add LCS similarity and distance. Fixes TEXT-32. chtompki
Add Add class to generate random strings. Fixes TEXT-34. djones
Fix Unfinished class Javadoc for CosineDistance. Fixes TEXT-35. kinow
Update Consolidating since tags at 1.0, removing deprecated methods. Fixes TEXT-33. chtompki
Add Add a builder to StringEscapeUtils. Fixes TEXT-29. chtompki
Add Add shell/XSI escape/unescape support. Fixes TEXT-28. chtompki
Fix LevenshteinDistance reduce memory consumption. Fixes TEXT-22. chtompki
Remove Remove org.apache.commons.text.names, for later release than 1.0. Fixes TEXT-31. chtompki
Add Add Jaccard Index and Jaccard Distance. Fixes TEXT-2. Thanks to Don Jeba. chtompki
Add Move org.apache.commons.lang3.StringEscapeUtils.java into text. Fixes TEXT-27. chtompki
Add Moving from commons-lang, the package org.apache.commons.lang3.text. Fixes TEXT-23. chtompki
Add A more complex Levenshtein distance. Fixes TEXT-10. Thanks to Don Jeba. kinow
Add Add coveralls and Travis.ci integration. Fixes TEXT-24. chtompki
Add Add alphabet converter. Fixes TEXT-19. Thanks to Eyal Allweil. kinow
Add Create Commons Text logo. Fixes TEXT-13. kinow
Update Improve HumanNameParser. Fixes TEXT-16. britter
Fix IP clearance for the names package. Fixes TEXT-5. kinow
Add Write user guide. Fixes TEXT-7. kinow
Fix Work on the string metric, distance, and similarity definitions for the project. Fixes TEXT-11. kinow
Add Human name parser. Fixes TEXT-15. kinow
Fix Create StringDistanceFrom class that contains a StringMetric and the "left" side string. This would have a method that accepts the "right" side string to test. Fixes TEXT-12. Thanks to Jonathan baker. kinow
Add Add Cosine Similarity and Cosine Distance. Fixes TEXT-3. kinow
Fix Change (R) StringMetric.compare(CS left, CS right) to "apply" so that it is consistent with BiFunction. Fixes TEXT-8. Thanks to Jonathan Baker. kinow
Fix Allow extra information (e.g. Levenshtein threshold) to be stored as (final) fields in the StringMetric instance. Fixes TEXT-6. Thanks to Jonathan Baker. kinow
Add Port Myers algorithm from [collections]. Fixes TEXT-4. kinow
Add Add Hamming distance. Fixes TEXT-1. kinow
Add Incorporate String algorithms from Commons Lang. Fixes TEXT-9. Thanks to britter. kinow