You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2025/10/26 19:55:12 UTC
(commons-lang) branch master updated (f5c9f6847 -> 7d14157cb)
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
from f5c9f6847 Javadoc
new 8646304c5 Asserts FastDateFormat.format(Calendar) doesn't edit the given Calendar
new b77073c2a Javadoc
new 728e57007 Javadoc
new 3939c0a79 Clarify implementation with comment
new 7d14157cb Fix typo
The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
src/changes/changes.xml | 2 +-
.../java/org/apache/commons/lang3/StringUtils.java | 2 +-
.../apache/commons/lang3/time/FastDateFormat.java | 4 +-
.../apache/commons/lang3/time/FastDatePrinter.java | 132 ++++++++++-----------
.../commons/lang3/time/FastDateFormatTest.java | 14 ++-
5 files changed, 82 insertions(+), 72 deletions(-)
(commons-lang) 01/05: Asserts FastDateFormat.format(Calendar) doesn't edit the given Calendar
Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit 8646304c52e8eeaf673457de4180dd721887447a
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sun Oct 26 15:15:07 2025 -0400
Asserts FastDateFormat.format(Calendar) doesn't edit the given Calendar
---
.../org/apache/commons/lang3/time/FastDateFormatTest.java | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/test/java/org/apache/commons/lang3/time/FastDateFormatTest.java b/src/test/java/org/apache/commons/lang3/time/FastDateFormatTest.java
index ffd0e0b85..864c7ff44 100644
--- a/src/test/java/org/apache/commons/lang3/time/FastDateFormatTest.java
+++ b/src/test/java/org/apache/commons/lang3/time/FastDateFormatTest.java
@@ -61,6 +61,12 @@ class FastDateFormatTest extends AbstractLangTest {
final Locale FINNISH = Locale.forLanguageTag("fi");
final Locale HUNGARIAN = Locale.forLanguageTag("hu");
+ private void assertCalendar(final TimeZone expectedTimeZone, final Date expectedDate, final Calendar actual) {
+ assertSame(expectedTimeZone, actual.getTimeZone());
+ // Calendar.getTime() returns a new Date in Java 8.
+ assertEquals(expectedDate, actual.getTime());
+ }
+
private AtomicLongArray measureTime(final Format printer, final Format parser) throws InterruptedException {
final ExecutorService pool = Executors.newFixedThreadPool(NTHREADS);
final AtomicInteger failures = new AtomicInteger();
@@ -262,11 +268,11 @@ void testLang1152() {
dateAsString = FastDateFormat.getInstance("dd/MM/yyyy", utc, Locale.US).format(date);
assertEquals("17/08/292278994", dateAsString);
}
-
@Test
void testLang1267() {
FastDateFormat.getInstance("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
}
+
@Test
void testLang1641() {
assertSame(FastDateFormat.getInstance(ISO_8601_DATE_FORMAT), FastDateFormat.getInstance(ISO_8601_DATE_FORMAT));
@@ -291,10 +297,16 @@ void testLang1791() {
final String pattern = "yyyyMMddHH";
final FastDateFormat gmtFormatter = FastDateFormat.getInstance(pattern, TimeZones.GMT);
final Calendar gmtCal = Calendar.getInstance(TimeZones.GMT);
+ final TimeZone timeZone = gmtCal.getTimeZone();
+ final Date date = gmtCal.getTime();
final String gmtString = gmtFormatter.format(gmtCal);
+ // Asserts formatting doesn't edit the given Calendar
+ assertCalendar(timeZone, date, gmtCal);
assertEquals(DateTimeFormatter.ofPattern(pattern).withZone(ZoneId.of("GMT")).format(now), gmtString);
final FastDateFormat defaultFormatter = FastDateFormat.getInstance(pattern);
final String defaultString = defaultFormatter.format(gmtCal);
+ // Asserts formatting doesn't edit the given Calendar
+ assertCalendar(timeZone, date, gmtCal);
assertEquals(DateTimeFormatter.ofPattern(pattern).withZone(ZoneId.systemDefault()).format(now), defaultString);
}
(commons-lang) 03/05: Javadoc
Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit 728e570076d7b75c27c0eb42e72c68295186aca3
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sun Oct 26 15:22:46 2025 -0400
Javadoc
---
.../apache/commons/lang3/time/FastDatePrinter.java | 117 ++++++++++-----------
1 file changed, 57 insertions(+), 60 deletions(-)
diff --git a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
index f10b0d1d5..38510332a 100644
--- a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
+++ b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
@@ -192,7 +192,7 @@ static Iso8601_Rule getRule(final int tokenLen) {
/**
* Constructs an instance of {@code Iso8601_Rule} with the specified properties.
*
- * @param length The number of characters in output (unless Z is output)
+ * @param length The number of characters in output (unless Z is output).
*/
Iso8601_Rule(final int length) {
this.length = length;
@@ -247,8 +247,8 @@ private interface NumberRule extends Rule {
/**
* Appends the specified value to the output buffer based on the rule implementation.
*
- * @param buffer the output buffer
- * @param value the value to be appended
+ * @param buffer the output buffer.
+ * @param value the value to be appended.
* @throws IOException if an I/O error occurs.
*/
void appendTo(Appendable buffer, int value) throws IOException;
@@ -265,8 +265,8 @@ private static final class PaddedNumberField implements NumberRule {
/**
* Constructs an instance of {@link PaddedNumberField}.
*
- * @param field the field
- * @param size size of the output field
+ * @param field the field.
+ * @param size size of the output field.
*/
PaddedNumberField(final int field, final int size) {
if (size < 3) {
@@ -302,7 +302,7 @@ public int estimateLength() {
return size;
}
}
- // Rules
+
/**
* Inner class defining a rule.
*/
@@ -310,8 +310,8 @@ private interface Rule {
/**
* Appends the value of the specified calendar to the output buffer based on the rule implementation.
*
- * @param buf the output buffer
- * @param calendar calendar to be appended
+ * @param buf the output buffer.
+ * @param calendar calendar to be appended.
* @throws IOException if an I/O error occurs.
*/
void appendTo(Appendable buf, Calendar calendar) throws IOException;
@@ -319,7 +319,7 @@ private interface Rule {
/**
* Returns the estimated length of the result.
*
- * @return the estimated length
+ * @return the estimated length of the result.
*/
int estimateLength();
}
@@ -334,7 +334,7 @@ private static final class StringLiteral implements Rule {
* Constructs a new instance of {@link StringLiteral}
* to hold the specified value.
*
- * @param value the string literal
+ * @param value the string literal.
*/
StringLiteral(final String value) {
this.value = value;
@@ -367,8 +367,8 @@ private static final class TextField implements Rule {
* Constructs an instance of {@link TextField}
* with the specified field and values.
*
- * @param field the field
- * @param values the field values
+ * @param field the field.
+ * @param values the field values.
*/
TextField(final int field, final String[] values) {
this.field = field;
@@ -409,10 +409,10 @@ private static final class TimeZoneDisplayKey {
/**
* Constructs an instance of {@link TimeZoneDisplayKey} with the specified properties.
*
- * @param timeZone the time zone
- * @param daylight adjust the style for daylight saving time if {@code true}
- * @param style the time zone style
- * @param locale the time zone locale
+ * @param timeZone the time zone.
+ * @param daylight adjust the style for daylight saving time if {@code true}.
+ * @param style the time zone style.
+ * @param locale the time zone locale.
*/
TimeZoneDisplayKey(final TimeZone timeZone,
final boolean daylight, final int style, final Locale locale) {
@@ -463,9 +463,9 @@ private static final class TimeZoneNameRule implements Rule {
/**
* Constructs an instance of {@link TimeZoneNameRule} with the specified properties.
*
- * @param timeZone the time zone
- * @param locale the locale
- * @param style the style
+ * @param timeZone the time zone.
+ * @param locale the locale.
+ * @param style the style.
*/
TimeZoneNameRule(final TimeZone timeZone, final Locale locale, final int style) {
this.locale = LocaleUtils.toLocale(locale);
@@ -508,7 +508,7 @@ private static final class TimeZoneNumberRule implements Rule {
/**
* Constructs an instance of {@link TimeZoneNumberRule} with the specified properties.
*
- * @param colon add colon between HH and MM in the output if {@code true}
+ * @param colon add colon between HH and MM in the output if {@code true}.
*/
TimeZoneNumberRule(final boolean colon) {
this.colon = colon;
@@ -559,7 +559,7 @@ private static final class TwelveHourField implements NumberRule {
* Constructs an instance of {@link TwelveHourField} with the specified
* {@link NumberRule}.
*
- * @param rule the rule
+ * @param rule the rule.
*/
TwelveHourField(final NumberRule rule) {
this.rule = rule;
@@ -604,7 +604,7 @@ private static final class TwentyFourHourField implements NumberRule {
* Constructs an instance of {@link TwentyFourHourField} with the specified
* {@link NumberRule}.
*
- * @param rule the rule
+ * @param rule the rule.
*/
TwentyFourHourField(final NumberRule rule) {
this.rule = rule;
@@ -807,7 +807,7 @@ private static final class UnpaddedNumberField implements NumberRule {
/**
* Constructs an instance of {@link UnpaddedNumberField} with the specified field.
*
- * @param field the field
+ * @param field the field.
*/
UnpaddedNumberField(final int field) {
this.field = field;
@@ -909,7 +909,7 @@ public int estimateLength() {
*
* @param buffer the buffer to append to.
* @param value the value to append digits from.
- * @throws IOException If an I/O error occurs
+ * @throws IOException If an I/O error occurs.
*/
private static void appendDigits(final Appendable buffer, final int value) throws IOException {
buffer.append((char) (value / 10 + '0'));
@@ -922,7 +922,7 @@ private static void appendDigits(final Appendable buffer, final int value) throw
* @param buffer the buffer to append to.
* @param value the value to append digits from.
* @param minFieldWidth Minimum field width.
- * @throws IOException If an I/O error occurs
+ * @throws IOException If an I/O error occurs.
*/
private static void appendFullDigits(final Appendable buffer, int value, int minFieldWidth) throws IOException {
// specialized paths for 1 to 4 digits -> avoid the memory allocation from the temporary work array
@@ -1000,11 +1000,11 @@ static void clear() {
/**
* Gets the time zone display name, using a cache for performance.
*
- * @param tz the zone to query
- * @param daylight true if daylight savings
- * @param style the style to use {@code TimeZone.LONG} or {@code TimeZone.SHORT}
- * @param locale the locale to use
- * @return the textual name of the time zone
+ * @param tz the zone to query.
+ * @param daylight true if daylight savings.
+ * @param style the style to use {@link TimeZone#LONG} or {@link TimeZone#SHORT}.
+ * @param locale the locale to use.
+ * @return the textual name of the time zone.
*/
static String getTimeZoneDisplay(final TimeZone tz, final boolean daylight, final int style, final Locale locale) {
final TimeZoneDisplayKey key = new TimeZoneDisplayKey(tz, daylight, style, locale);
@@ -1037,15 +1037,14 @@ static String getTimeZoneDisplay(final TimeZone tz, final boolean daylight, fina
*/
private transient int maxLengthEstimate;
- // Constructor
/**
* Constructs a new FastDatePrinter.
* Use {@link FastDateFormat#getInstance(String, TimeZone, Locale)} or another variation of the
* factory methods of {@link FastDateFormat} to get a cached FastDatePrinter instance.
*
- * @param pattern {@link java.text.SimpleDateFormat} compatible pattern
- * @param timeZone non-null time zone to use
- * @param locale non-null locale to use
+ * @param pattern {@link java.text.SimpleDateFormat} compatible pattern.
+ * @param timeZone non-null time zone to use.
+ * @param locale non-null locale to use.
* @throws NullPointerException if pattern, timeZone, or locale is null.
*/
protected FastDatePrinter(final String pattern, final TimeZone timeZone, final Locale locale) {
@@ -1059,10 +1058,10 @@ protected FastDatePrinter(final String pattern, final TimeZone timeZone, final L
* Performs the formatting by applying the rules to the
* specified calendar.
*
- * @param calendar the calendar to format
- * @param buf the buffer to format into
+ * @param calendar the calendar to format.
+ * @param buf the buffer to format into.
* @param <B> the Appendable class type, usually StringBuilder or StringBuffer.
- * @return the specified string buffer
+ * @return the specified string buffer.
*/
private <B extends Appendable> B applyRules(final Calendar calendar, final B buf) {
try {
@@ -1079,9 +1078,9 @@ private <B extends Appendable> B applyRules(final Calendar calendar, final B buf
* Performs the formatting by applying the rules to the
* specified calendar.
*
- * @param calendar the calendar to format
- * @param buf the buffer to format into
- * @return the specified string buffer
+ * @param calendar the calendar to format.
+ * @param buf the buffer to format into.
+ * @return the specified string buffer.
* @deprecated Use {@link #format(Calendar)} or {@link #format(Calendar, Appendable)}
*/
@Deprecated
@@ -1102,8 +1101,8 @@ private String applyRulesToString(final Calendar c) {
/**
* Compares two objects for equality.
*
- * @param obj the object to compare to
- * @return {@code true} if equal
+ * @param obj the object to compare to.
+ * @return {@code true} if equal.
*/
@Override
public boolean equals(final Object obj) {
@@ -1209,7 +1208,7 @@ public StringBuffer format(final long millis, final StringBuffer buf) {
/**
* Formats a {@link Date}, {@link Calendar} or
* {@link Long} (milliseconds) object.
- * @param obj the object to format
+ * @param obj the object to format.
* @return The formatted value.
* @since 3.5
*/
@@ -1226,15 +1225,14 @@ String format(final Object obj) {
throw new IllegalArgumentException("Unknown class: " + ClassUtils.getName(obj, "<null>"));
}
- // Format methods
/**
* Formats a {@link Date}, {@link Calendar} or
* {@link Long} (milliseconds) object.
* @deprecated Use {{@link #format(Date)}, {{@link #format(Calendar)}, {{@link #format(long)}.
- * @param obj the object to format
- * @param toAppendTo the buffer to append to
- * @param pos the position - ignored
- * @return the buffer passed in
+ * @param obj the object to format.
+ * @param toAppendTo the buffer to append to.
+ * @param pos the position; ignored.
+ * @return the buffer passed in.
*/
@Deprecated
@Override
@@ -1266,7 +1264,7 @@ public Locale getLocale() {
* <p>The actual formatted length will almost always be less than or
* equal to this amount.</p>
*
- * @return the maximum formatted length
+ * @return the maximum formatted length.
*/
public int getMaxLengthEstimate() {
return maxLengthEstimate;
@@ -1291,7 +1289,7 @@ public TimeZone getTimeZone() {
/**
* Returns a hash code compatible with equals.
*
- * @return a hash code compatible with equals
+ * @return a hash code compatible with equals.
*/
@Override
public int hashCode() {
@@ -1325,8 +1323,8 @@ private Calendar newCalendar() {
/**
* Returns a list of Rules given a pattern.
*
- * @return a {@link List} of Rule objects
- * @throws IllegalArgumentException if pattern is invalid
+ * @return a {@link List} of Rule objects.
+ * @throws IllegalArgumentException if pattern is invalid.
*/
protected List<Rule> parsePattern() {
final DateFormatSymbols symbols = new DateFormatSymbols(locale);
@@ -1473,9 +1471,9 @@ protected List<Rule> parsePattern() {
/**
* Performs the parsing of tokens.
*
- * @param pattern the pattern
- * @param indexRef index references
- * @return parsed token
+ * @param pattern the pattern.
+ * @param indexRef index references.
+ * @return parsed token.
*/
protected String parseToken(final String pattern, final int[] indexRef) {
final StringBuilder buf = new StringBuilder();
@@ -1523,7 +1521,6 @@ protected String parseToken(final String pattern, final int[] indexRef) {
return buf.toString();
}
- // Serializing
/**
* Create the object after serialization. This implementation reinitializes the
* transient properties.
@@ -1540,9 +1537,9 @@ private void readObject(final ObjectInputStream in) throws IOException, ClassNot
/**
* Gets an appropriate rule for the padding required.
*
- * @param field the field to get a rule for
- * @param padding the padding required
- * @return a new rule with the correct padding
+ * @param field the field to get a rule for.
+ * @param padding the padding required.
+ * @return a new rule with the correct padding.
*/
protected NumberRule selectNumberRule(final int field, final int padding) {
switch (padding) {
@@ -1558,7 +1555,7 @@ protected NumberRule selectNumberRule(final int field, final int padding) {
/**
* Gets a debugging string version of this formatter.
*
- * @return a debugging string
+ * @return a debugging string.
*/
@Override
public String toString() {
(commons-lang) 02/05: Javadoc
Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit b77073c2ac343f3c7521c62df4a8ee71f26128ac
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sun Oct 26 15:16:39 2025 -0400
Javadoc
---
src/main/java/org/apache/commons/lang3/StringUtils.java | 2 +-
src/main/java/org/apache/commons/lang3/time/FastDateFormat.java | 4 ++--
src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java | 4 ++--
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/apache/commons/lang3/StringUtils.java b/src/main/java/org/apache/commons/lang3/StringUtils.java
index 751896e12..3075c0430 100644
--- a/src/main/java/org/apache/commons/lang3/StringUtils.java
+++ b/src/main/java/org/apache/commons/lang3/StringUtils.java
@@ -2396,7 +2396,7 @@ distance is O(nm), but a bound of k allows us to reduce it to O(km) time by only
d is the distance.
One subtlety comes from needing to ignore entries on the border of our stripe
- eg.
+ for example,
p[] = |#|#|#|*
d[] = *|#|#|#|
We must ignore the entry to the left of the leftmost member
diff --git a/src/main/java/org/apache/commons/lang3/time/FastDateFormat.java b/src/main/java/org/apache/commons/lang3/time/FastDateFormat.java
index e77de589c..2ae5f7c46 100644
--- a/src/main/java/org/apache/commons/lang3/time/FastDateFormat.java
+++ b/src/main/java/org/apache/commons/lang3/time/FastDateFormat.java
@@ -58,12 +58,12 @@
* </p>
*
* <p>
- * Java 1.4 introduced a new pattern letter, {@code 'Z'}, to represent time zones in RFC822 format (eg. {@code +0800} or {@code -1100}). This pattern letter can
+ * Java 1.4 introduced a new pattern letter, {@code 'Z'}, to represent time zones in RFC822 format (for example, {@code +0800} or {@code -1100}). This pattern letter can
* be used here (on all JDK versions).
* </p>
*
* <p>
- * In addition, the pattern {@code 'ZZ'} has been made to represent ISO 8601 extended format time zones (eg. {@code +08:00} or {@code -11:00}). This introduces
+ * In addition, the pattern {@code 'ZZ'} has been made to represent ISO 8601 extended format time zones (for example, {@code +08:00} or {@code -11:00}). This introduces
* a minor incompatibility with Java 1.4, but at a gain of useful functionality.
* </p>
*
diff --git a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
index 89c0d207a..f10b0d1d5 100644
--- a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
+++ b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
@@ -60,11 +60,11 @@
* SimpleDateFormat (except time zones and some year patterns - see below).</p>
*
* <p>Java 1.4 introduced a new pattern letter, {@code 'Z'}, to represent
- * time zones in RFC822 format (eg. {@code +0800} or {@code -1100}).
+ * time zones in RFC822 format (for example, {@code +0800} or {@code -1100}).
* This pattern letter can be used here (on all JDK versions).</p>
*
* <p>In addition, the pattern {@code 'ZZ'} has been made to represent
- * ISO 8601 extended format time zones (eg. {@code +08:00} or {@code -11:00}).
+ * ISO 8601 extended format time zones (for example, {@code +08:00} or {@code -11:00}).
* This introduces a minor incompatibility with Java 1.4, but at a gain of
* useful functionality.</p>
*
(commons-lang) 04/05: Clarify implementation with comment
Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit 3939c0a7996d905133ecde580084b0b59f6be52c
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sun Oct 26 15:34:55 2025 -0400
Clarify implementation with comment
Use final
---
.../java/org/apache/commons/lang3/time/FastDatePrinter.java | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
index 38510332a..9a24831c7 100644
--- a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
+++ b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java
@@ -1127,13 +1127,14 @@ public String format(final Calendar calendar) {
* @see org.apache.commons.lang3.time.DatePrinter#format(java.util.Calendar, Appendable)
*/
@Override
- public <B extends Appendable> B format(Calendar calendar, final B buf) {
- // do not pass in calendar directly, this will cause TimeZone of FastDatePrinter to be ignored
+ public <B extends Appendable> B format(final Calendar calendar, final B buf) {
+ // Don't edit the given Calendar, clone it only if needed.
+ Calendar actual = calendar;
if (!calendar.getTimeZone().equals(timeZone)) {
- calendar = (Calendar) calendar.clone();
- calendar.setTimeZone(timeZone);
+ actual = (Calendar) calendar.clone();
+ actual.setTimeZone(timeZone);
}
- return applyRules(calendar, buf);
+ return applyRules(actual, buf);
}
/* (non-Javadoc)
(commons-lang) 05/05: Fix typo
Posted by gg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-lang.git
commit 7d14157cba192545070441186f3ea060955161d3
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sun Oct 26 15:48:44 2025 -0400
Fix typo
---
src/changes/changes.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 9ad56a0be..8107c9530 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1001,7 +1001,7 @@ The <action> type attribute can be add,update,fix,remove.
<action issue="LANG-1226" type="fix" dev="pschumacher" due-to="pschumacher">StringUtils#normalizeSpace does not trim the string anymore</action>
<action issue="LANG-1251" type="fix" dev="pschumacher" due-to="Takuya Ueshin">SerializationUtils.ClassLoaderAwareObjectInputStream should use static initializer to initialize primitiveTypes map</action>
<action issue="LANG-1253" type="add" dev="ggregory" due-to="adilek">[GitHub issue #170] Add RandomUtils#nextBoolean() method</action>
- <action issue="LANG-1248" type="fix" dev="chas" due-to="Benoit Wiart">FastDatePrinter Memory allocation regression</action>
+ <action issue="LANG-1248" type="fix" dev="chas" due-to="Benoit Wiart">FastDatePrinter memory allocation regression</action>
<action issue="LANG-1247" type="update" dev="chas" due-to="Benoit Wiart">FastDatePrinter generates extra Date objects</action>
<action issue="LANG-1018" type="fix" dev="pschumacher" due-to="Nick Manley">Fix precision loss on NumberUtils.createNumber(String)</action>
<action issue="LANG-1229" type="update" dev="pschumacher" due-to="Ruslan Cheremin">HashCodeBuilder.append(Object,Object) is too big to be inlined, which prevents whole builder to be scalarized</action>