Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,20 @@

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

* Removed `@Deprecated` annotations on members deprecated in the LSP/DAP protocol [#895](https://github.com/eclipse-lsp4j/lsp4j/issues/895)

Breaking API changes:

* Removed deprecated API [#874](https://github.com/eclipse-lsp4j/lsp4j/issues/874)
* Remove deprecated convenience constructors in protocol files [#875](https://github.com/eclipse-lsp4j/lsp4j/issues/875)
* Remove deprecated LanguageServerAPI annotation [#876](https://github.com/eclipse-lsp4j/lsp4j/issues/876)
* Remove deprecated get/set properties in FormattingOptions [#880](https://github.com/eclipse-lsp4j/lsp4j/issues/880)
* Remove deprecated static methods in the Either class, instead use TypeUtils helper methods [#877](https://github.com/eclipse-lsp4j/lsp4j/issues/877)
* Remove deprecated factories [#878](https://github.com/eclipse-lsp4j/lsp4j/issues/878)
* Remove deprecated ResponseErrorCode.serverNotInitialized, use ResponseErrorCode.ServerNotInitialized instead [#879](https://github.com/eclipse-lsp4j/lsp4j/issues/879)
* Remove deprecated org.eclipse.lsp4j.websocket. Please upgrade to using Jakarta or remain with LSP4J version 0.x.x [#647](https://github.com/eclipse-lsp4j/lsp4j/issues/647)
* Remove deprecated ConcurrentMessageProcessor.startProcessing, use ConcurrentMessageProcessor.beginProcessing instead [#922](https://github.com/eclipse-lsp4j/lsp4j/issues/922)

japicmp report: <https://download.eclipse.org/lsp4j/builds/main/japicmp-report/>

### [v0.24.0 (Jan 2025)](https://github.com/eclipse-lsp4j/lsp4j/releases/tag/v0.24.0)
Expand Down
1 change: 0 additions & 1 deletion gradle/versions.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ ext.versions = [
'gson': '[2.9.1,3.0)',

'websocket_jakarta': '2.0.0',
'websocket': '1.0',
'junit': '4.13.2',
'archunit': '1.2.1'
]
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import com.google.gson.annotations.SerializedName
import java.util.Map
import org.eclipse.lsp4j.debug.adapters.RestartArgumentsArgumentsTypeAdapter
import org.eclipse.lsp4j.generator.JsonRpcData
import org.eclipse.lsp4j.jsonrpc.ProtocolDeprecated
import org.eclipse.lsp4j.jsonrpc.messages.Either
import org.eclipse.lsp4j.jsonrpc.validation.NonNull

Expand Down Expand Up @@ -1154,10 +1155,10 @@ class SetBreakpointsArguments {
* The code locations of the breakpoints.
* <p>
* This is an optional property.
*
* @deprecated Use {@link SourceBreakpoint#line} of {@link #breakpoints} instead.
* <p>
* Deprecated in DAP: Use {@link SourceBreakpoint#line} of {@link #breakpoints} instead.
*/
@Deprecated
@ProtocolDeprecated
int[] lines;
/**
* A value of true indicates that the underlying source has been modified which results in new breakpoint
Expand Down Expand Up @@ -3746,10 +3747,10 @@ interface VariablePresentationHintKind {
public static final String VIRTUAL = "virtual";
/**
* Indicates that a data breakpoint is registered for the object.
*
* @deprecated The {@link VariablePresentationHintAttributes#HAS_DATA_BREAKPOINT} attribute should generally be used instead.
* <p>
* Deprecated in DAP: The {@link VariablePresentationHintAttributes#HAS_DATA_BREAKPOINT} attribute should generally be used instead.
*/
@Deprecated
@ProtocolDeprecated
public static final String DATA_BREAKPOINT = "dataBreakpoint";
}

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
/**
* Copyright (c) 2025 Kichwa Coders Canada, Inc.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
package org.eclipse.lsp4j.jsonrpc;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
* An API using this annotation is part of a Protocol Specification and is deprecated in the protocol.
* Therefore it is subject to removal in a future release.
* <p>
* This is synonymous with Java's standard {@link Deprecated} annotation, however the LSP4J project
* does not use standard Deprecated annotation when implementing LSP/DAP specification as it leads
* to unresolvable deprecation warnings. The standard Deprecated annotation should be used in LSP4J
* for LSP4J's own API that is not directly implementing the protocol specification.
*/
@Retention(RetentionPolicy.CLASS)
@Target({
ElementType.CONSTRUCTOR,
ElementType.FIELD,
ElementType.METHOD,
ElementType.TYPE
})
@Documented
public @interface ProtocolDeprecated {}
Original file line number Diff line number Diff line change
Expand Up @@ -29,23 +29,6 @@
*/
public class ConcurrentMessageProcessor implements Runnable {

/**
* Start a thread that listens for messages in the message producer and forwards them to the message consumer.
*
* @param messageProducer - produces messages, e.g. by reading from an input channel
* @param messageConsumer - processes messages and potentially forwards them to other consumers
* @param executorService - the thread is started using this service
* @return a future that is resolved when the started thread is terminated, e.g. by closing a stream
* @deprecated Please use the non-static {@link #beginProcessing} instead.
*/
@Deprecated
public static Future<Void> startProcessing(MessageProducer messageProducer, MessageConsumer messageConsumer,
ExecutorService executorService) {
final var reader = new ConcurrentMessageProcessor(messageProducer, messageConsumer);
final Future<?> result = executorService.submit(reader);
return wrapFuture(result, messageProducer);
}

public static Future<Void> wrapFuture(Future<?> result, MessageProducer messageProducer) {
return new Future<>() {

Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading