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

Base plugin 84 remove guava dependencies #91

Merged

Conversation

xsalefter
Copy link
Contributor

Attempt to fix this issue: #84 :

  • This commit affect a lot of files, but IMO the changes are pretty minor.
  • Other than commit above, all commits represents what its attempt to fix, and may need more attention.

When PluginProperties.buildPluginProperties() called, there's no guarantee that the first added map entry would be the first element of the List.

When using guava's ImmutableMap, it's known that guava make its implementation "sorted", so this assertion will always valid. This will not the same with JDK map. For short:

- "pluginProperties1.get(0).getKey()" using Guava's ImmutableMap.of() : Will always return "foo"
- "pluginProperties1.get(0).getKey()" using JDK Map.of() : No guarantee.

If someone wants to see old assertions, the commit hash is: 25abb93
@xsalefter xsalefter marked this pull request as ready for review May 22, 2023 19:52
@xsalefter xsalefter requested a review from pierre May 22, 2023 19:52
Copy link
Member

@pierre pierre left a comment

Choose a reason for hiding this comment

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

Could you bump the version to 5.1.0-SNAPSHOT and add a couple of upgrade notes to the README?

@xsalefter
Copy link
Contributor Author

@pierre should I upgrade killbill-oss-parent version, too? Or just leave it as is?

@xsalefter
Copy link
Contributor Author

Ok, I updated the killbill-oss-version. If this is not needed, I'll fix this.

@pierre
Copy link
Member

pierre commented May 22, 2023

@pierre should I upgrade killbill-oss-parent version, too? Or just leave it as is?

Maybe we should merge the upgrades that are ready in killbill-oss-parent and do a release, so that we can start upgrading dependencies in the various repos?

@@ -14,6 +14,7 @@ Convenience library to help write Kill Bill plugins.
| 4.1.y | 0.22.z |
| 4.2.y | 0.22.z |
| 5.0.y | 0.24.z |
| 5.1.y | 0.24.z |

We've upgraded numerous dependencies in 4.2.x (required for Java 11 support).
Copy link
Member

Choose a reason for hiding this comment

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

I would add a note like (or something along these lines):

Guava has been removed as a dependency in 5.1.x, native JDK alternatives should be used instead

Otherwise, if a user upgrades without looking at the code changes, they might get confused why the compilation errors if they implicitly rely on Guava in their plugins 😅

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We have this in NEWS commit.

@pierre pierre merged commit d779e4a into killbill:master May 23, 2023
@xsalefter xsalefter deleted the base_plugin_84-remove_guava_dependencies branch May 23, 2023 12:51
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.

2 participants