Skip to content

v1.0.0

Latest

Choose a tag to compare

@jonahgraham jonahgraham released this 10 Feb 00:28
· 1 commit to main since this release

LSP4J 1.0.0 has now been released and been contributed to simrel, tagged and uploaded to maven central.

Changelog entry

v1.0.0 (Feb 2026)

  • Implemented LSP version 3.18.0 (specification is not finalized yet)
  • Implemented LSP proposal for SymbolTag #856
  • Removed @Deprecated annotations on members deprecated in the LSP/DAP protocol #895
  • Implemented DAP version 1.70.0

Fixed issues: https://github.com/eclipse-lsp4j/lsp4j/milestone/37?closed=1

Breaking API changes:

  • Removed deprecated API #874
    • Remove deprecated convenience constructors in protocol files #875
    • Remove deprecated LanguageServerAPI annotation #876
    • Remove deprecated get/set properties in FormattingOptions #880
    • Remove deprecated static methods in the Either class, instead use TypeUtils helper methods #877
    • Remove deprecated factories #878
    • Remove deprecated ResponseErrorCode.serverNotInitialized, use ResponseErrorCode.ServerNotInitialized instead #879
    • Remove deprecated org.eclipse.lsp4j.websocket. Please upgrade to using Jakarta or remain with LSP4J version 0.x.x #647
    • Remove deprecated ConcurrentMessageProcessor.startProcessing, use ConcurrentMessageProcessor.beginProcessing instead #922
  • Added beta support for new features in LSP 3.18 #893
    • Type of TextDocumentEdit.edits changed from List<TextEdit> to List<Either<TextEdit, SnippetTextEdit>>
    • Type of Diagnostic.message changed from String to Either<String, MarkupContent>
    • Type of DocumentFilter.pattern changed from String to Either<String, RelativePattern>
    • Type of NotebookDocumentFilter.pattern changed from String to Either<String, RelativePattern>
  • Removed throws IOException from methods that do not need to throw it #934
    • EitherTypeAdapter.createLeft
    • EitherTypeAdapter.createRight
    • EitherTypeAdapter.EitherTypeArgument.read(JsonElement)
    • StreamMessageProducer.handleMessage

japicmp report: https://download.eclipse.org/lsp4j/updates/releases/1.0.0/japicmp-report/

What's Changed

  • Prepare repo for 1.0.0 development by @jonahgraham in #872
  • added missing about.htmls by @cdietrich in #889
  • feat: add Beta support for Inline Completion Request by @rubenporras in #886
  • Fix potential NPE in RemoteEndpoint.handleRequest by @pisv in #891
  • Omit missing params when writing request/notification messages by @pisv in #885
  • fix: correct ResourceOperationTypeAdapter dispatch and add guard by @sebthom in #899
  • fix: typos and grammar by @sebthom in #901
  • feat(jsonrpc): add JsonRpcRequestFuture with explicit protocol cancel by @sebthom in #907
  • Fix sporadic failure of DebugIntegrationTest.testCancellation by @pisv in #910
  • Add utility method for request cancellation by @pisv in #915
  • Replace method toProxy() with toServiceObject() by @cmoulliard in #913
  • fix(jsonrpc): correct newline state machine in StreamMessageProducer by @sebthom in #904
  • fix(tracing): stop 'Unmatched response message' logs for non-stream IO by @sebthom in #908
  • Fix line endings by @jonahgraham in #916
  • Update GHA + Jenkins workflows to work with Java 21 by @jonahgraham in #918
  • Update snapshot URL for publishing snapshots by @jonahgraham in #920
  • Document LSP4J's API policy by @jonahgraham in #921
  • Remove deprecated API by @jonahgraham in #881
  • Add beta support for new features in LSP 3.18 by @pisv in #893
  • Rename @Draft to @ProtocolDraft by @pisv in #928
  • Update org.eclipse.jdt.core.prefs with all current setting from JDT by @jonahgraham in #931
  • Remove dangling about.html by @jonahgraham in #930
  • ci(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #927
  • Add JMH benchmarks to jsonrpc by @jonahgraham in #929
  • Remove all warnings in lsp4j by @jonahgraham in #932
  • Add symbol tags as proposed for LSP specification (e.g. visibility tags, static, abstract, etc.) by @travkin79 in #856
  • Update CHANGELOG and README w.r.t. LSP 3.18 support by @pisv in #935
  • Add missing properties to DiagnosticCapabilities by @pisv in #926
  • Remove throws IOException from methods that do not need to throw it by @pisv in #938
  • Introduce the @ProtocolSince annotation by @pisv in #939
  • Generalize processing of doc-annotations in JsonRpcDataProcessor by @pisv in #941
  • ci(deps): bump actions/upload-artifact from 5.0.0 to 6.0.0 by @dependabot[bot] in #942
  • Add two more symbol tags: Overrides and Implements by @travkin79 in #948
  • Update DAP version to 1.70.0 by @jonahgraham in #950
  • Prepare repo for 1.0.0 release by @jonahgraham in #953
  • Update to new maven deployment by @jonahgraham in #955
  • Update to new maven deployment (fixup) by @jonahgraham in #956
  • Update to new maven deployment (fixup) by @jonahgraham in #957
  • Update to new maven deployment (fixup) by @jonahgraham in #958

New Contributors

Full Changelog: v0.24.0...v1.0.0