[
https://issues.apache.org/jira/browse/CASSANDRA-20994?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18034268#comment-18034268
]
Dmitry Konstantinov commented on CASSANDRA-20994:
-------------------------------------------------
Usages of commons-lang3, unfortunately it is not only StringUtils:
{code:java}
grep -r "org.apache.commons.lang3" --no-filename | sort | uniq
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.apache.commons.lang3.exception.ExceptionUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.apache.commons.lang3.mutable.Mutable;
import org.apache.commons.lang3.mutable.MutableByte;
import org.apache.commons.lang3.mutable.MutableDouble;
import org.apache.commons.lang3.mutable.MutableFloat;
import org.apache.commons.lang3.mutable.MutableInt;
import org.apache.commons.lang3.mutable.MutableLong;
import org.apache.commons.lang3.mutable.MutableShort;
import org.apache.commons.lang3.text.StrBuilder;
import org.apache.commons.lang3.time.DurationFormatUtils;
import org.apache.commons.lang3.tuple.ImmutableTriple;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.commons.lang3.tuple.Triple;
import static org.apache.commons.lang3.ArrayUtils.EMPTY_STRING_ARRAY;
import static org.apache.commons.lang3.ArrayUtils.isEmpty;
import static org.apache.commons.lang3.StringUtils.EMPTY;
import static org.apache.commons.lang3.StringUtils.isEmpty;
import static org.apache.commons.lang3.StringUtils.isNotEmpty;
import static org.apache.commons.lang3.StringUtils.join;
import static org.apache.commons.lang3.time.DateUtils.MILLIS_PER_DAY;
import static
org.apache.commons.lang3.time.DurationFormatUtils.formatDurationWords;
{code}
> Drop commons-lang3 dependency
> -----------------------------
>
> Key: CASSANDRA-20994
> URL: https://issues.apache.org/jira/browse/CASSANDRA-20994
> Project: Apache Cassandra
> Issue Type: Improvement
> Reporter: Vladimir Sitnikov
> Priority: Normal
>
> Currently Cassandra uses only a few classes from commons-lang3, and it would
> probably be worth dropping the dependency for the following reasons:
> 1) Better security. {{commons-*}} follows "all features in a single jar"
> pattern, so a CVE in one of the classes would impact Cassandra
> 2) Fewer bytes to ship with binary distribution. `commons-lang3` is ~690K
> I have raised a suggestion to make {{commons-lang3}} modular and extract
> modules like {{commons-stringutils}}, {{commons-arrayutils}}, however,
> Commons team does not seem to like the idea.
> Commons PMC members often suggest that users should clone the code or shade
> commons-lang, see
> https://lists.apache.org/thread/xzdhv57o9rnxtzn5fqbtkzj0hdkbm339
> So I wonder what do you think of dropping commons-lang3 and replacing it with
> core Java?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]