-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Google Guava over Apache Commons Lang3 #3016
Conversation
I like the guava stuff. I don't see any big advantage in the apache commons stuff which the Guava has not. |
I am also in favor of replacing commons lang with guava. So, if anybody wants to go ahead with this, be my guest. |
Fun fact:
|
HtmlToUnicode is unfortunately not the same as Escaping HTML:
|
What I stumbled upon while searching for various commons lang replacements: Eclipse Collections. Maybe, we can reduce our memory by using Eclipse Collections? I continue that discussion at #3023 |
The ArchRule doNotUseApacheCommonsLang3 reads easy:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really like how ArchUnit works and we should consider using it for more purposes.
I think the PR is good to go for now, although I actually dislike that we don't actually get rid of Commons Lang and even have a annotation for that.
I would suggest to open a issue on that with a beginner label that somebody can have a look how to get rid of the last Commons Lang usages.
We don't have an Architectural Decision Record why we included Apache Commons Lang. We introduced the dependency within #1572.
I don't know, why Apache Commons Lang3 was chosen. The current opinion is that Guava is more modern and that new projects should use Google Guava instead of Apache Commons Lang3.
Should we replace Apache Commons Lang3 or should we just keep it, because it is not that huge and we have other class issues (see #3014).
Refs #2966 (comment)
Update
org.jabref.architecture
.notAnnotatedWithRule
(see NPE demonstration TNG/ArchUnit#19).