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

Relocate shaded libraries to solve third party conflicts #177

Open
lokka30 opened this issue Aug 2, 2022 · 4 comments
Open

Relocate shaded libraries to solve third party conflicts #177

lokka30 opened this issue Aug 2, 2022 · 4 comments
Labels
enhancement New feature or request

Comments

@lokka30
Copy link

lokka30 commented Aug 2, 2022

Linked to A248/LibertyBans#164.

This is no easy feat haha.

@lokka30 lokka30 added the enhancement New feature or request label Aug 2, 2022
@A248
Copy link

A248 commented Aug 2, 2022

Please file this as a bug, not a feature request.

Also, I'd like to say the solution is not quite difficult. At the minimum, a new major version will be required, but a version increment does not translate to difficulty of implementation. Relocating shaded dependencies, even within a library such as eco, is entirely possible.

@WillFP
Copy link
Member

WillFP commented Sep 17, 2022

It's extremely easy, I do it already with Caffeine and many other libs that are used purely internally with eco. It's about compatibility

@A248
Copy link

A248 commented Sep 20, 2022

It's extremely easy, I do it already with Caffeine and many other libs that are used purely internally with eco. It's about compatibility

I think you might have forgotten to implement this. Opening up the Eco plugin jar, I find the following shaded libraries:

  • Caffeine
  • MySQL driver
  • Kyori Adventure and Examination
  • org.jetbrains.exposed
  • Kotlin, of course, which you have mentioned previously as bearing on compatibility

No relocation is applied to this libraries. The build file confirms this:

Kotlin and caffeine are not shaded so that they can be accessed directly by eco plugins.

It's no longer a problem in LibertyBans (whatsoever), however I thought you might find this information useful.

@masmc05
Copy link

masmc05 commented Dec 15, 2022

this really should be fixed in a way, maybe a special relocation prefix only to kotlin and use that prefix on all eco plugins, as we have lots of issues with different plugins because of such behavior, of course we solve them, but it's not a very pleasant experience

This is a big minus that stops us from buying other eco depending plugin and makes us think of removing Talismans to lower such issues in future

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

No branches or pull requests

4 participants