eclipse-lsp4j / lsp4j

A Java implementation of the language server protocol intended to be consumed by tools and language servers implemented in Java.

Home Page:https://eclipse.org/lsp4j

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Using internals which may not be visible

jonahgraham opened this issue · comments

In MessageTypeAdapter we are using an internal Gson type that is exported in Orbit's gson rebundling (as x-internal) but not in the manifest of the upstream gson.

This forces consumers of jsonrpc (within an OSGi runtime) to use the Orbit version.

@cdietrich / @dhuebner looking for a second opinion - is this serious enough that we should do a quick next release? If we (collectively) can fix it immediately then I can do the release ASAP.

what i dont understand. why is this not seen in tests. we run non osgi tests
=> is this for persons using maven gson in osgi?

i also would prefer a .1 release otherwise we would need a new xtext release

i am also not aware of people using lsp4j in osgi context
am not sure what about lsp4e

what i dont understand. why is this not seen in tests. we run non osgi tests

Without OSGi the LSP4J can access that class (I think? as I don't know how JPMS fits in to the picture, if at all)


On more reflection I don't think this is critical, just annoying as it means LSP4J is forcing LSP4E to use the Orbit gson. We should aim to fix soon, but I don't think we need to respin for this.

It’s not critical. Next normal release will be soon enough.

It’s not critical. Next normal release will be soon enough.

Thank you @merks for weighing in and giving me that confirmation!

@jonahgraham
I can prepare a "fix" for this by copying the gson implementation of Primitives.isPrimitive and Primitives.isWrapperType

@jonahgraham
I've opened a PR #739