Skip to content
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

remove guava #518

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

remove guava #518

wants to merge 1 commit into from

Conversation

joshgord
Copy link

I used openrewrite to remove most usages of guava. The loadbalancer project uses a loading cache which we need to keep in place but I reduced the transitive graph by only pulling in guava in that subproject.

if (!(superclass instanceof ParameterizedType)) {
throw new IllegalArgumentException(superclass + " isn't parameterized");
}
this.type = (Class<T>) ((ParameterizedType) superclass).getActualTypeArguments()[0];
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is probably one of the only changes that I am not completely confident in, looks like the tests were happy with this change but not sure of other usages not covered in test cases

* @deprecated use {@link #getEntity(Type)}
*/
@Deprecated
public <T> T getEntity(TypeToken<T> type) throws Exception;
Copy link
Author

@joshgord joshgord Nov 23, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a breaking change because we leaked guava into the public interface, looks like this is deprecated with a replacement so removal of this method will unlock guava removal

@joshgord joshgord changed the title update guava version, eliminate usages of guava except for loadbalancer update guava version, eliminate usages of guava Nov 23, 2023
@joshgord joshgord changed the title update guava version, eliminate usages of guava eliminate usages of guava Nov 23, 2023
api 'com.netflix.netflix-commons:netflix-commons-util:0.1.1'
api 'com.github.ben-manes.caffeine:caffeine:2.9.2'
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if we have to involve lawyers but this does change our license structure slightly. The fact that it is used in Spring and Cassandra likely means it's probably permissible.

@joshgord joshgord changed the title eliminate usages of guava remove guava Nov 23, 2023
@joshgord
Copy link
Author

joshgord commented Jan 3, 2024

Is there a process for a review and/or merge for this project?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant