Skip to content

Releases: eclipse-lsp4j/lsp4j

LSP4J 0.18.0

10 Nov 00:26
Compare
Choose a tag to compare

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

Changelog entry

v0.18.0 (November 2022)

  • Fixed issues related to reflection errors so that --add-opens java.base/java.util.concurrent=ALL-UNNAMED is no longer needed on Java 17.

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

Breaking API changes:

  • None.

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

What's Changed (auto-generated)

Full Changelog: v0.17.0...v0.18.0

LSP4J 0.17.0

18 Oct 22:31
Compare
Choose a tag to compare

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

Changelog entry

v0.17.0 (October 2022)

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

Breaking API changes:

  • None.

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

What's Changed (auto-generated)

  • Update xtend_lib version and remove guava version rule by @cherylking in #673

New Contributors

Full Changelog: v0.16.0...v0.17.0

LSP4J 0.16.0

06 Oct 13:49
78e62bd
Compare
Choose a tag to compare

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

Changelog entry

v0.16.0 (October 2022)

  • Implemented DAP version 1.58.0

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

Breaking API changes:

  • None.

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

What's Changed (auto-generated)

Full Changelog: v0.15.0...v0.16.0

LSP4J 0.15.0

05 Aug 01:47
Compare
Choose a tag to compare

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

What's Changed

Changelog entry:

  • Added Notebook support
  • Added WorkspaceSymbol.data
  • Added support for client default behavior on renames
  • Implemented DAP version 1.56.0

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

Breaking API changes:

  • Return type of textDocument/prepareRename changed from Either<Range, PrepareRenameResult>
    to Either3<Range, PrepareRenameResult, PrepareRenameDefaultBehavior>
  • Class SemanticTokensWithRegistrationOptions now extends
    AbstractTextDocumentRegistrationAndWorkDoneProgressOptions
    instead of AbstractWorkDoneProgressOptions
  • Removed unspecified deprecated properties InitializeParams.clientName
    DidOpenTextDocumentParams.text, DidChangeTextDocumentParams.uri, TextDocumentPositionParams.uri

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

GitHub auto-generated release notes:

What's Changed

New Contributors

Full Changelog: v0.14.0...v0.15.0

LSP4J 0.14.0

26 May 15:37
Compare
Choose a tag to compare

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

What's Changed

Full Changelog: v0.13.0...v0.14.0

Changelog entry:

  • Implemented LSP version 3.17.0 (except Notebook support) - includes changes to the LSP 3.17
    specification that were added after specification was published as done.
    • See #630 for all changes.

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

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

LSP4J 0.13.0

19 May 22:01
Compare
Choose a tag to compare

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

Changelog entry:

  • Implemented LSP version 3.17.0 (except Notebook support)
  • Implemented DAP versions 1.45.0 - 1.55.0

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

Breaking API changes:

  • Method LanguageClient.setTrace moved to LanguageServer, where it should
    have been according to the specification
  • Method IDebugProtocolServer.runInTerminal moved to IDebugProtocolClient, where it should
    have been according to the specification
  • Removed RenameOptions.id as it was already deprecated and never specified for StaticRegistrationOptions
  • Removed SemanticTokenTypes.Member as it was already deprecated and not specified
  • Removed TraceValue.Message as it was already deprecated and not specified
  • Changed TraceValue to be final matching similar classes
  • Removed duplicate ResponseErrorCode as it has been deprecated for several versions
  • Removed ResponseErrorCode.serverErrorStart and ResponseErrorCode.serverErrorEnd as they were
    already deprecated and just boundaries not actual error codes
  • Return type of workspace/symbol changed from List<? extends SymbolInformation> to
    Either<List<? extends SymbolInformation>, List<? extends WorkspaceSymbol>>
  • Type of FileSystemWatcher.globPattern changed from String to Either<String, RelativePattern>
  • In DAP, return type of IDebugProtocolServer.setExceptionBreakpoints changed from Void to SetExceptionBreakpointsResponse

Breaking Beta API changes:

  • Significant updates were made to the TypeHierarchy features to replace the non-standard implementation
  • Removed WorkspaceEdit.resourceChanges, WorkspaceEditCapabilities.resourceChanges, and ResourceChange as they have been deprecated
    for numerous versions and are not specified

Deprecated API changes:

  • SymbolInformation is deprecated in favor of DocumentSymbol or WorkspaceSymbol
  • ResponseErrorCode.serverNotInitialized deprecated in favor of ResponseErrorCode.ServerNotInitialized

LSP4J 0.12.0

02 Apr 13:57
Compare
Choose a tag to compare

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

Changelog entry:

  • Restored org.eclipse.lsp4j.websocket which will be included along with org.eclipse.lsp4j.websocket.jakarta. This will allow use of LSP4J over Jakarta websockets and pre-Jakarta websockets. See #536 for more details.

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

Breaking API changes:

  • Type of CodeLensOptions.resolveProvider changed from boolean to Boolean

Breaking changes in behavior:

  • In case a type argument for Either is declared as Object,
    EitherTypeAdapter now uses JsonElementTypeAdapter for parsing/serializing
    the corresponding value. Notably, this can affect parsing of properties
    SemanticTokensClientCapabilitiesRequests.range and SemanticTokensWithRegistrationOptions.range;
    their right-hand side, declared as Object, will be parsed into a JsonElement now.

LSP4J 0.11.0

19 Mar 14:36
Compare
Choose a tag to compare

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

Changelog entry:

  • Implemented LSP version 3.16.0 (to finalized specification)
  • Implemented LSP version 3.15.0's Progress specification
  • Implemented DAP version 1.43.0
  • Implemented DAP version 1.44.0
  • Replaced org.eclipse.lsp4j.websocket by org.eclipse.lsp4j.websocket.jakarta for using LSP4J over Jakarta websockets

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

Breaking API changes:

  • Coloring and Semantic Highlighting APIs are removed
  • Changed some types from Number to Integer
  • Type of CompletionItem.textEdit changed from TextEdit to Either<TextEdit, InsertReplaceEdit>
  • Type of ServerCapabilities.hoverProvider changed from Boolean to Either<Boolean, HoverOptions>
  • Type of ServerCapabilities.definitionProvider changed from Boolean to Either<Boolean, DefinitionOptions>
  • Type of ServerCapabilities.typeDefinitionProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, TypeDefinitionRegistrationOptions>
  • Type of ServerCapabilities.implementationProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, ImplementationRegistrationOptions>
  • Type of ServerCapabilities.referencesProvider changed from Boolean to Either<Boolean, ReferenceOptions>
  • Type of ServerCapabilities.documentHighlightProvider changed from Boolean to Either<Boolean, DocumentHighlightOptions>
  • Type of ServerCapabilities.documentSymbolProvider changed from Boolean to Either<Boolean, DocumentSymbolOptions>
  • Type of ServerCapabilities.workspaceSymbolProvider changed from Boolean to Either<Boolean, WorkspaceSymbolOptions>
  • Type of ServerCapabilities.documentFormattingProvider changed from Boolean to Either<Boolean, DocumentFormattingOptions>
  • Type of ServerCapabilities.documentRangeFormattingProvider changed from Boolean to Either<Boolean, DocumentRangeFormattingOptions>
  • Type of ServerCapabilities.declarationProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, DeclarationRegistrationOptions>
  • Type of ServerCapabilities.callHierarchyProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, CallHierarchyRegistrationOptions>
  • Type of ServerCapabilities.selectionRangeProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, SelectionRangeRegistrationOptions>
  • Type of ServerCapabilities.linkedEditingRangeProvider changed from Either<Boolean, StaticRegistrationOptions> to Either<Boolean, LinkedEditingRangeRegistrationOptions>
  • Type of ProgressParams.value changed from WorkDoneProgressNotification to Either<WorkDoneProgressNotification, Object>

Deprecated API changes:

  • In DAP, VariablePresentationHintKind.DATA_BREAKPOINT has been marked @deprecated to match its deprecation in the protocol in 1.44.
  • In DAP, SetBreakpointsArguments.lines has been marked @deprecated to match its deprecation in protocol many versions ago.

LSP4J 0.10.0

05 Nov 17:40
Compare
Choose a tag to compare

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

Changelog entry:

  • Implemented LSP version 3.16.0 (specification is not finalized yet)
  • Implemented DAP version 1.37.0's CancelRequest
  • Implemented DAP version 1.38.0
  • Implemented DAP version 1.39.0
  • Implemented DAP version 1.40.0
  • Implemented DAP version 1.41.0
  • Implemented DAP version 1.42.0

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

Breaking API changes:

  • In DAP Protocol ReadMemoryArguments.count was Integer however it is
    a required property and has been changed to int
  • In DAP Protocol Module.id has been marked @NonNull as id is a required
    property.
  • In DAP Protocol Scope.presentationHint was an enum ScopePresentationHint, it
    is now a String as presentationHint has possible values that include - but
    not limited to those defined in ScopePresentationHint. ScopePresentationHint
    has changed from an enum to an interface containing String constants.
  • In DAP Protocol SetBreakpointsArguments.lines was changed from Integer[] to
    int[] as the individual items in the array are not optional, but the array as
    a whole is optional.
  • In DAP Protocol TerminateThreadsArguments.threadIds was changed from Integer[] to
    int[] as the individual items in the array are not optional, but the array as
    a whole is optional.

LSP4J 0.9.0

29 Feb 16:59
Compare
Choose a tag to compare

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

Changelog entry:

  • Implemented DAP version 1.36.0
  • Implemented DAP version 1.37.0 (except CancelRequest)
  • Implemented LSP version 3.15.0 (except Progress)
  • Improved compatibility with prior versions of vscode-languageclient (#407)

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

Breaking API changes:

  • In DebugProtocol fields which were @NonNull Long are now int as they
    are required. This brings the DAP implementation in LSP4J in line with
    the LSP implementation under the same conditions.

  • In DebugProtocol fields which were @NonNull Boolean are now boolean
    as they are required. This brings the DAP implementation in LSP4J in
    line with the LSP implementation under the same conditions.

  • In DebugProtocol fields which used to be defined as Long are now Integer.
    This is due to changes in DAP 1.36 and clarification sought from
    microsoft/debug-adapter-protocol#90

  • The DebugProtocol's EvaluateResponse's field memoryReference was previously incorrectly
    declared as Long, it is now correctly declared as String

  • CodeActionKindCapabilities.valueSet marked with @NonNull

  • Parameters for the following requests have been changed from TextDocumentPositionParams

    • textDocument/signatureHelp changed to SignatureHelpParams
    • textDocument/hover changed to HoverParams
    • textDocument/declaration changed to DeclarationParams
    • textDocument/definition changed to DefinitionParams
    • textDocument/typeDefinition changed to TypeDefinitionParams
    • textDocument/implementation changed to ImplementationParams
    • textDocument/documentHighlight changed to DocumentHighlightParams
    • textDocument/prepareRename changed to PrepareRenameParams
  • The LSP's Protocol Diagnostic field code was previouslyt incorrectly declared as String,
    it is now correctly declared as Either<String, Number>