From db9654e9c79bdd6d503048897704f485d5ebe7ac Mon Sep 17 00:00:00 2001 From: Gesa HENTSCHKE Date: Wed, 29 Jan 2025 14:35:19 +0100 Subject: [PATCH 01/11] [405] fix broken ClangdOptionsDefault fixes #405 --- .../META-INF/MANIFEST.MF | 3 +- ...l.config.BuiltinClangdOptions2Defaults.xml | 8 +++++ ...al.config.BuiltinClangdOptionsDefaults.xml | 2 +- ...internal.config.ClangdMetadataDefaults.xml | 3 +- .../config/BuiltinClangdOptions2Defaults.java | 29 +++++++++++++++++++ .../config/BuiltinClangdOptionsDefaults.java | 9 ++---- .../config/ClangdMetadataDefaults.java | 8 +++-- 7 files changed, 50 insertions(+), 12 deletions(-) create mode 100644 bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml create mode 100644 bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java diff --git a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF index eb690f2b..610bb17b 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF @@ -30,7 +30,8 @@ Require-Bundle: org.eclipse.cdt.lsp;bundle-version="0.0.0", org.yaml.snakeyaml;bundle-version="0.0.0", org.eclipse.tm4e.language_pack;bundle-version="0.0.0", org.eclipse.ui.console;bundle-version="0.0.0" -Service-Component: OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml, +Service-Component: OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml, + OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangFormatFileHandler.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationFileManager.xml, diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml new file mode 100644 index 00000000..58acccb0 --- /dev/null +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml index 86c1283e..3b961a00 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml index 057caff7..f1765683 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml @@ -3,6 +3,7 @@ - + + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java new file mode 100644 index 00000000..03a580d2 --- /dev/null +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java @@ -0,0 +1,29 @@ +/******************************************************************************* + * Copyright (c) 2025 Contributors to the Eclipse Foundation. + * This program and the accompanying materials are made + * available under the terms of the Eclipse Public License 2.0 + * which is available at https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + * + * Contributors: + * See git history + *******************************************************************************/ + +package org.eclipse.cdt.lsp.clangd.internal.config; + +import org.eclipse.cdt.lsp.clangd.ClangdOptions2Defaults; +import org.osgi.service.component.annotations.Component; + +/** + * Provides the default clangd extended options for cdt-lsp. + */ +@Component(property = { "service.ranking:Integer=0" }) +public class BuiltinClangdOptions2Defaults extends BuiltinClangdOptionsDefaults implements ClangdOptions2Defaults { + + @Override + public boolean logToConsole() { + return false; + } + +} diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults.java index a7c4156f..846aebce 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults.java @@ -16,7 +16,7 @@ import java.util.List; import java.util.Optional; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2Defaults; +import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults; import org.eclipse.cdt.utils.PathUtil; import org.eclipse.core.runtime.IPath; import org.osgi.service.component.annotations.Component; @@ -25,7 +25,7 @@ * Provides the default clangd options for cdt-lsp. */ @Component(property = { "service.ranking:Integer=0" }) -public class BuiltinClangdOptionsDefaults implements ClangdOptions2Defaults { +public class BuiltinClangdOptionsDefaults implements ClangdOptionsDefaults { @Override public String clangdPath() { @@ -66,9 +66,4 @@ public String queryDriver() { public List additionalOptions() { return Collections.emptyList(); } - - @Override - public boolean logToConsole() { - return false; - } } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java index e8514ca2..1bc1af00 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java @@ -17,6 +17,7 @@ import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; import org.eclipse.cdt.lsp.clangd.ClangdOptions2Defaults; +import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults; import org.eclipse.cdt.lsp.clangd.internal.ui.LspEditorUiMessages; import org.eclipse.core.runtime.preferences.PreferenceMetadata; import org.osgi.service.component.annotations.Component; @@ -26,7 +27,10 @@ public class ClangdMetadataDefaults implements ClangdMetadata2 { @Reference - private ClangdOptions2Defaults defaults; + private ClangdOptionsDefaults defaults; + + @Reference + private ClangdOptions2Defaults defaults2; @Override public PreferenceMetadata clangdPath() { @@ -93,7 +97,7 @@ public PreferenceMetadata additionalOptions() { public PreferenceMetadata logToConsole() { return new PreferenceMetadata<>(Boolean.class, // "log_to_console", //$NON-NLS-1$ - defaults.logToConsole(), // + defaults2.logToConsole(), // LspEditorUiMessages.LspEditorPreferencePage_Log_to_Console, // LspEditorUiMessages.LspEditorPreferencePage_Log_to_Console_description); } From 0241bab7e14ef1f04fba9f4cd821342944bbd516 Mon Sep 17 00:00:00 2001 From: Gesa HENTSCHKE Date: Wed, 29 Jan 2025 14:43:19 +0100 Subject: [PATCH 02/11] rename --- bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF | 4 ++-- ...langd.internal.config.BuiltinClangdOptionsDefaults2.xml} | 6 +++--- ...dt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml | 2 +- ...ngdOptions2Defaults.java => ClangdOptionsDefaults2.java} | 2 +- ...ons2Defaults.java => BuiltinClangdOptionsDefaults2.java} | 6 +++--- .../lsp/clangd/internal/config/ClangdMetadataDefaults.java | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) rename bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/{org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml => org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml} (85%) rename bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/{ClangdOptions2Defaults.java => ClangdOptionsDefaults2.java} (89%) rename bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/{BuiltinClangdOptions2Defaults.java => BuiltinClangdOptionsDefaults2.java} (80%) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF index 610bb17b..07dcd944 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF @@ -30,8 +30,8 @@ Require-Bundle: org.eclipse.cdt.lsp;bundle-version="0.0.0", org.yaml.snakeyaml;bundle-version="0.0.0", org.eclipse.tm4e.language_pack;bundle-version="0.0.0", org.eclipse.ui.console;bundle-version="0.0.0" -Service-Component: OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml, - OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml, +Service-Component: OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml, + OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangFormatFileHandler.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationFileManager.xml, diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml similarity index 85% rename from bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml rename to bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml index 58acccb0..4e7db36b 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptions2Defaults.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml @@ -1,8 +1,8 @@ - + - + - + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml index f1765683..7ec424c4 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml @@ -4,6 +4,6 @@ - + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2Defaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java similarity index 89% rename from bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2Defaults.java rename to bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java index b3092d34..a6842867 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2Defaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java @@ -15,6 +15,6 @@ /** * @since 2.2 */ -public interface ClangdOptions2Defaults extends ClangdOptions2 { +public interface ClangdOptionsDefaults2 extends ClangdOptions2 { } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java similarity index 80% rename from bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java rename to bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java index 03a580d2..8e8d0808 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptions2Defaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java @@ -12,18 +12,18 @@ package org.eclipse.cdt.lsp.clangd.internal.config; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2Defaults; +import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults2; import org.osgi.service.component.annotations.Component; /** * Provides the default clangd extended options for cdt-lsp. */ @Component(property = { "service.ranking:Integer=0" }) -public class BuiltinClangdOptions2Defaults extends BuiltinClangdOptionsDefaults implements ClangdOptions2Defaults { +public class BuiltinClangdOptionsDefaults2 extends BuiltinClangdOptionsDefaults implements ClangdOptionsDefaults2 { @Override public boolean logToConsole() { - return false; + return true; } } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java index 1bc1af00..b4656335 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java @@ -16,7 +16,7 @@ import java.util.stream.Collectors; import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2Defaults; +import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults2; import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults; import org.eclipse.cdt.lsp.clangd.internal.ui.LspEditorUiMessages; import org.eclipse.core.runtime.preferences.PreferenceMetadata; @@ -30,7 +30,7 @@ public class ClangdMetadataDefaults implements ClangdMetadata2 { private ClangdOptionsDefaults defaults; @Reference - private ClangdOptions2Defaults defaults2; + private ClangdOptionsDefaults2 defaults2; @Override public PreferenceMetadata clangdPath() { From 375cb9ca96ec36719fe6954db894af0600bf0289 Mon Sep 17 00:00:00 2001 From: Gesa HENTSCHKE Date: Wed, 29 Jan 2025 15:09:05 +0100 Subject: [PATCH 03/11] set default log-to-console to false --- .../clangd/internal/config/BuiltinClangdOptionsDefaults2.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java index 8e8d0808..9251eddf 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java @@ -23,7 +23,7 @@ public class BuiltinClangdOptionsDefaults2 extends BuiltinClangdOptionsDefaults @Override public boolean logToConsole() { - return true; + return false; } } From 60048d32f6c65a89b5881562c28bf9c583393fee Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 17:11:08 +0100 Subject: [PATCH 04/11] extend ClangdOptions instead of creating *2 naming schemes for Interfaces --- .../META-INF/MANIFEST.MF | 1 - ...l.config.BuiltinClangdOptionsDefaults2.xml | 8 ----- ...ernal.config.ClangdConfigurationAccess.xml | 2 +- ...internal.config.ClangdMetadataDefaults.xml | 3 +- .../cdt/lsp/clangd/ClangdMetadata.java | 9 ++++++ .../cdt/lsp/clangd/ClangdMetadata2.java | 31 ------------------- .../eclipse/cdt/lsp/clangd/ClangdOptions.java | 8 +++++ .../cdt/lsp/clangd/ClangdOptions2.java | 27 ---------------- .../lsp/clangd/ClangdOptionsDefaults2.java | 20 ------------ .../config/BuiltinClangdOptionsDefaults2.java | 29 ----------------- .../config/ClangdConfigurationAccess.java | 14 ++++----- .../config/ClangdLanguageServerProvider.java | 5 +-- .../config/ClangdMetadataDefaults.java | 10 ++---- .../config/ClangdPreferenceInitializer.java | 4 +-- .../config/ClangdPreferredOptions.java | 10 +++--- .../internal/ui/ClangdConfigurationArea.java | 13 ++++---- .../internal/ui/ClangdConfigurationPage.java | 12 +++---- 17 files changed, 51 insertions(+), 155 deletions(-) delete mode 100644 bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml delete mode 100644 bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata2.java delete mode 100644 bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2.java delete mode 100644 bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java delete mode 100644 bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java diff --git a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF index 07dcd944..eb690f2b 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF @@ -31,7 +31,6 @@ Require-Bundle: org.eclipse.cdt.lsp;bundle-version="0.0.0", org.eclipse.tm4e.language_pack;bundle-version="0.0.0", org.eclipse.ui.console;bundle-version="0.0.0" Service-Component: OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults.xml, - OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangFormatFileHandler.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml, OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationFileManager.xml, diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml deleted file mode 100644 index 4e7db36b..00000000 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.BuiltinClangdOptionsDefaults2.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml index e61d6a6d..bb8df5a5 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdConfigurationAccess.xml @@ -3,7 +3,7 @@ - + \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml index 7ec424c4..1a75f23c 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml +++ b/bundles/org.eclipse.cdt.lsp.clangd/OSGI-INF/org.eclipse.cdt.lsp.clangd.internal.config.ClangdMetadataDefaults.xml @@ -1,9 +1,8 @@ - + - \ No newline at end of file diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java index 5b24c1e1..dec8f75e 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java @@ -86,4 +86,13 @@ public interface ClangdMetadata { */ PreferenceMetadata additionalOptions(); + /** + * Returns the metadata for the "Log to Console" option, must not return null. + * + * @return the metadata for the "Log to Console" option + * + * @see ClangdOptions#logToConsole() + */ + PreferenceMetadata logToConsole(); + } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata2.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata2.java deleted file mode 100644 index 2573769a..00000000 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata2.java +++ /dev/null @@ -1,31 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2025 Contributors to the Eclipse Foundation. - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * See git history - *******************************************************************************/ - -package org.eclipse.cdt.lsp.clangd; - -import org.eclipse.core.runtime.preferences.PreferenceMetadata; - -/** - * @since 2.2 - */ -public interface ClangdMetadata2 extends ClangdMetadata { - - /** - * Returns the metadata for the "Log to Console" option, must not return null. - * - * @return the metadata for the "Log to Console" option - * - * @see ClangdOptions2#logToConsole() - */ - PreferenceMetadata logToConsole(); - -} diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java index f75d95cb..bf67382c 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java @@ -71,4 +71,12 @@ public interface ClangdOptions { */ List additionalOptions(); + /** + * Enable logging to Clangd console + * + * @return true if clangd logging is enabled + */ + default boolean logToConsole() { + return false; + } } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2.java deleted file mode 100644 index 356c92c4..00000000 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions2.java +++ /dev/null @@ -1,27 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2025 Contributors to the Eclipse Foundation. - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * See git history - *******************************************************************************/ - -package org.eclipse.cdt.lsp.clangd; - -/** - * @since 2.2 - */ -public interface ClangdOptions2 extends ClangdOptions { - - /** - * Enable logging to Clangd console - * - * @return true if clangd logging is enabled - */ - boolean logToConsole(); - -} diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java deleted file mode 100644 index a6842867..00000000 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptionsDefaults2.java +++ /dev/null @@ -1,20 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2025 Contributors to the Eclipse Foundation. - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * See git history - *******************************************************************************/ - -package org.eclipse.cdt.lsp.clangd; - -/** - * @since 2.2 - */ -public interface ClangdOptionsDefaults2 extends ClangdOptions2 { - -} diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java deleted file mode 100644 index 9251eddf..00000000 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/BuiltinClangdOptionsDefaults2.java +++ /dev/null @@ -1,29 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2025 Contributors to the Eclipse Foundation. - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * See git history - *******************************************************************************/ - -package org.eclipse.cdt.lsp.clangd.internal.config; - -import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults2; -import org.osgi.service.component.annotations.Component; - -/** - * Provides the default clangd extended options for cdt-lsp. - */ -@Component(property = { "service.ranking:Integer=0" }) -public class BuiltinClangdOptionsDefaults2 extends BuiltinClangdOptionsDefaults implements ClangdOptionsDefaults2 { - - @Override - public boolean logToConsole() { - return false; - } - -} diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdConfigurationAccess.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdConfigurationAccess.java index ba94332b..7adf4ee1 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdConfigurationAccess.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdConfigurationAccess.java @@ -18,8 +18,8 @@ import java.util.Optional; import org.eclipse.cdt.lsp.clangd.ClangdConfiguration; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; +import org.eclipse.cdt.lsp.clangd.ClangdOptions; import org.eclipse.cdt.lsp.clangd.ClangdQualifier; import org.eclipse.cdt.lsp.config.ConfigurationAccess; import org.eclipse.core.resources.IWorkspace; @@ -37,7 +37,7 @@ public final class ClangdConfigurationAccess extends ConfigurationAccess implements ClangdConfiguration { @Reference - private ClangdMetadata2 metadata; + private ClangdMetadata metadata; @Reference private IWorkspace workspace; @@ -47,17 +47,17 @@ public ClangdConfigurationAccess() { } @Override - public ClangdMetadata2 metadata() { + public ClangdMetadata metadata() { return metadata; } @Override - public ClangdOptions2 defaults() { + public ClangdOptions defaults() { return new ClangdPreferredOptions(qualifier, new IScopeContext[] { DefaultScope.INSTANCE }, metadata); } @Override - public ClangdOptions2 options(Object context) { + public ClangdOptions options(Object context) { Optional project = projectScope(workspace, context); IScopeContext[] scopes; if (project.isPresent()) { @@ -84,7 +84,7 @@ public String qualifier() { @Override public List commands(Object context) { - ClangdOptions2 options = options(context); + ClangdOptions options = options(context); List list = new ArrayList<>(); list.add(options.clangdPath()); if (options.useTidy()) { diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdLanguageServerProvider.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdLanguageServerProvider.java index 84bb75a0..488ec227 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdLanguageServerProvider.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdLanguageServerProvider.java @@ -23,7 +23,7 @@ import org.eclipse.cdt.lsp.clangd.ClangdConfiguration; import org.eclipse.cdt.lsp.clangd.ClangdFallbackFlags; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2; +import org.eclipse.cdt.lsp.clangd.ClangdOptions; import org.eclipse.cdt.lsp.config.Configuration; import org.eclipse.cdt.lsp.editor.LanguageServerEnable; import org.eclipse.cdt.lsp.server.ICLanguageServerProvider3; @@ -74,7 +74,8 @@ public boolean isEnabledFor(IProject project) { @Override public boolean logToConsole() { boolean[] enabled = new boolean[1]; - configuration.call(c -> enabled[0] = ((ClangdOptions2) c.options(null)).logToConsole()); + configuration + .call(c -> enabled[0] = c.options(null) instanceof ClangdOptions copt ? copt.logToConsole() : false); return enabled[0]; } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java index b4656335..1635d8ee 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdMetadataDefaults.java @@ -15,8 +15,7 @@ import java.util.stream.Collectors; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; -import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; import org.eclipse.cdt.lsp.clangd.ClangdOptionsDefaults; import org.eclipse.cdt.lsp.clangd.internal.ui.LspEditorUiMessages; import org.eclipse.core.runtime.preferences.PreferenceMetadata; @@ -24,14 +23,11 @@ import org.osgi.service.component.annotations.Reference; @Component -public class ClangdMetadataDefaults implements ClangdMetadata2 { +public final class ClangdMetadataDefaults implements ClangdMetadata { @Reference private ClangdOptionsDefaults defaults; - @Reference - private ClangdOptionsDefaults2 defaults2; - @Override public PreferenceMetadata clangdPath() { return new PreferenceMetadata<>(String.class, // @@ -97,7 +93,7 @@ public PreferenceMetadata additionalOptions() { public PreferenceMetadata logToConsole() { return new PreferenceMetadata<>(Boolean.class, // "log_to_console", //$NON-NLS-1$ - defaults2.logToConsole(), // + defaults.logToConsole(), // LspEditorUiMessages.LspEditorPreferencePage_Log_to_Console, // LspEditorUiMessages.LspEditorPreferencePage_Log_to_Console_description); } diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferenceInitializer.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferenceInitializer.java index 18ad002d..d565e438 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferenceInitializer.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferenceInitializer.java @@ -14,7 +14,7 @@ package org.eclipse.cdt.lsp.clangd.internal.config; import org.eclipse.cdt.lsp.clangd.ClangdConfiguration; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; import org.eclipse.core.runtime.ServiceCaller; import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer; import org.eclipse.core.runtime.preferences.DefaultScope; @@ -28,7 +28,7 @@ public void initializeDefaultPreferences() { } private void initializeDefaults(ClangdConfiguration configuration) { - ClangdMetadata2 metadata = (ClangdMetadata2) configuration.metadata(); + ClangdMetadata metadata = (ClangdMetadata) configuration.metadata(); String qualifier = configuration.qualifier(); initializeString(metadata.clangdPath(), qualifier); initializeBoolean(metadata.useTidy(), qualifier); diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferredOptions.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferredOptions.java index ee66dc90..a5c91d64 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferredOptions.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/config/ClangdPreferredOptions.java @@ -19,18 +19,18 @@ import java.util.Objects; import java.util.Optional; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; +import org.eclipse.cdt.lsp.clangd.ClangdOptions; import org.eclipse.core.runtime.preferences.IScopeContext; import org.eclipse.core.runtime.preferences.PreferenceMetadata; -final class ClangdPreferredOptions implements ClangdOptions2 { +final class ClangdPreferredOptions implements ClangdOptions { private final String qualifier; private final IScopeContext[] scopes; - private final ClangdMetadata2 metadata; + private final ClangdMetadata metadata; - ClangdPreferredOptions(String qualifier, IScopeContext[] scopes, ClangdMetadata2 metadata) { + ClangdPreferredOptions(String qualifier, IScopeContext[] scopes, ClangdMetadata metadata) { this.qualifier = Objects.requireNonNull(qualifier); this.scopes = Objects.requireNonNull(scopes); this.metadata = Objects.requireNonNull(metadata); diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationArea.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationArea.java index 10f282f3..b4867610 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationArea.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationArea.java @@ -19,9 +19,8 @@ import java.util.function.Consumer; import java.util.stream.Collectors; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; import org.eclipse.cdt.lsp.clangd.ClangdOptions; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2; import org.eclipse.cdt.lsp.ui.ConfigurationArea; import org.eclipse.core.runtime.preferences.IEclipsePreferences; import org.eclipse.core.runtime.preferences.OsgiPreferenceMetadataStore; @@ -65,7 +64,7 @@ public final class ClangdConfigurationArea extends ConfigurationArea { LspEditorUiMessages.LspEditorPreferencePage_completion_default }; private final Map completions; - public ClangdConfigurationArea(Composite parent, ClangdMetadata2 metadata, boolean isProjectScope) { + public ClangdConfigurationArea(Composite parent, ClangdMetadata metadata, boolean isProjectScope) { super(3); this.texts = new HashMap<>(); this.combos = new HashMap<>(); @@ -188,9 +187,9 @@ public void load(Object options, boolean enable) { additional.setText( clangdOptions.additionalOptions().stream().collect(Collectors.joining(System.lineSeparator()))); enablePreferenceContent(enable); - } - if (logToConsole != null && options instanceof ClangdOptions2 clangdOptions2) { - logToConsole.setSelection(clangdOptions2.logToConsole()); + if (logToConsole != null) { + logToConsole.setSelection(clangdOptions.logToConsole()); + } } } @@ -209,7 +208,7 @@ public void dispose() { combos.clear(); } - public boolean optionsChanged(ClangdOptions2 options) { + public boolean optionsChanged(ClangdOptions options) { return !options.clangdPath().equals(path.getText()) || options.useTidy() != tidy.getSelection() || options.useBackgroundIndex() != index.getSelection() || !options.completionStyle().equals(completions.get(completion.getText())) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationPage.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationPage.java index 6c8e95a3..7b7f8807 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationPage.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/internal/ui/ClangdConfigurationPage.java @@ -15,8 +15,8 @@ package org.eclipse.cdt.lsp.clangd.internal.ui; import org.eclipse.cdt.lsp.clangd.ClangdConfiguration; -import org.eclipse.cdt.lsp.clangd.ClangdMetadata2; -import org.eclipse.cdt.lsp.clangd.ClangdOptions2; +import org.eclipse.cdt.lsp.clangd.ClangdMetadata; +import org.eclipse.cdt.lsp.clangd.ClangdOptions; import org.eclipse.cdt.lsp.config.Configuration; import org.eclipse.cdt.lsp.ui.ConfigurationArea; import org.eclipse.cdt.lsp.ui.EditorConfigurationPage; @@ -43,7 +43,7 @@ protected Configuration getConfiguration() { @Override protected ConfigurationArea getConfigurationArea(Composite composite, boolean isProjectScope) { - return new ClangdConfigurationArea(composite, (ClangdMetadata2) configuration.metadata(), isProjectScope); + return new ClangdConfigurationArea(composite, (ClangdMetadata) configuration.metadata(), isProjectScope); } @Override @@ -72,7 +72,7 @@ private void restartClangd() { * @return */ private boolean configurationSettingsChanged() { - return ((ClangdConfigurationArea) area).optionsChanged((ClangdOptions2) configuration.options(getElement())); + return ((ClangdConfigurationArea) area).optionsChanged((ClangdOptions) configuration.options(getElement())); } /** @@ -81,7 +81,7 @@ private boolean configurationSettingsChanged() { */ private boolean projectOptionsDifferFromWorkspace() { return hasProjectSpecificOptions() != useProjectSettings() - && ((ClangdConfigurationArea) area).optionsChanged((ClangdOptions2) configuration.options(null)); + && ((ClangdConfigurationArea) area).optionsChanged((ClangdOptions) configuration.options(null)); } private boolean isLsActive() { @@ -93,7 +93,7 @@ private boolean isLsActive() { protected boolean hasProjectSpecificOptions() { return projectScope()// .map(p -> p.getNode(configuration.qualifier()))// - .map(n -> n.get(((ClangdMetadata2) configuration.metadata()).clangdPath().identifer(), null))// + .map(n -> n.get(((ClangdMetadata) configuration.metadata()).clangdPath().identifer(), null))// .isPresent(); } From 081e7a1d0f2921481a2575722b416624560811bd Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 17:57:08 +0100 Subject: [PATCH 05/11] add since 2.2 tag --- .../src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java | 2 ++ .../src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java index dec8f75e..0d598800 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java @@ -92,6 +92,8 @@ public interface ClangdMetadata { * @return the metadata for the "Log to Console" option * * @see ClangdOptions#logToConsole() + * + * @since 2.2 */ PreferenceMetadata logToConsole(); diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java index bf67382c..c88780a4 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java @@ -75,6 +75,8 @@ public interface ClangdOptions { * Enable logging to Clangd console * * @return true if clangd logging is enabled + * + * @since 2.2 */ default boolean logToConsole() { return false; From 601f39157866b47809b50b8906acda6596f7e256 Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 18:09:23 +0100 Subject: [PATCH 06/11] Increase major version --- bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF index eb690f2b..767c1a16 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: org.eclipse.cdt.lsp.clangd Bundle-ActivationPolicy: lazy Bundle-ManifestVersion: 2 Bundle-SymbolicName: org.eclipse.cdt.lsp.clangd;singleton:=true -Bundle-Version: 2.2.0.qualifier +Bundle-Version: 3.0.0.qualifier Export-Package: org.eclipse.cdt.lsp.clangd Import-Package: org.yaml.snakeyaml;version="1.27.0", org.yaml.snakeyaml.error;version="1.27.0", From 815766477961a22fb596eada0d1c0ac7122ac086 Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 18:20:24 +0100 Subject: [PATCH 07/11] Increase logToConsole to since 3.0 --- .../src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java | 2 +- .../src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java index 0d598800..0edac7f7 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java @@ -93,7 +93,7 @@ public interface ClangdMetadata { * * @see ClangdOptions#logToConsole() * - * @since 2.2 + * @since 3.0 */ PreferenceMetadata logToConsole(); diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java index c88780a4..aa9e7e30 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java @@ -76,7 +76,7 @@ public interface ClangdOptions { * * @return true if clangd logging is enabled * - * @since 2.2 + * @since 3.0 */ default boolean logToConsole() { return false; From da551c502782bf5e453407891d8db4cae49e1e29 Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 18:47:11 +0100 Subject: [PATCH 08/11] add since 3.0 to ClangFormatFile --- .../src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java index dcbf0e22..91babe94 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java @@ -15,7 +15,7 @@ import org.eclipse.core.resources.IProject; /** - * @since 2.2 + * @since 3.0 */ public interface ClangFormatFile { From 368a6e13d5f16c6872eb3393641fbcbb1159a7d7 Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 19:07:29 +0100 Subject: [PATCH 09/11] add api filter --- .../.settings/.api_filters | 19 +++++++++++++++++++ .../META-INF/MANIFEST.MF | 2 +- .../cdt/lsp/clangd/ClangFormatFile.java | 2 +- .../cdt/lsp/clangd/ClangdMetadata.java | 2 +- .../eclipse/cdt/lsp/clangd/ClangdOptions.java | 2 +- 5 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters diff --git a/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters b/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters new file mode 100644 index 00000000..9d2cfc10 --- /dev/null +++ b/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF index 767c1a16..eb690f2b 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF +++ b/bundles/org.eclipse.cdt.lsp.clangd/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: org.eclipse.cdt.lsp.clangd Bundle-ActivationPolicy: lazy Bundle-ManifestVersion: 2 Bundle-SymbolicName: org.eclipse.cdt.lsp.clangd;singleton:=true -Bundle-Version: 3.0.0.qualifier +Bundle-Version: 2.2.0.qualifier Export-Package: org.eclipse.cdt.lsp.clangd Import-Package: org.yaml.snakeyaml;version="1.27.0", org.yaml.snakeyaml.error;version="1.27.0", diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java index 91babe94..dcbf0e22 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangFormatFile.java @@ -15,7 +15,7 @@ import org.eclipse.core.resources.IProject; /** - * @since 3.0 + * @since 2.2 */ public interface ClangFormatFile { diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java index 0edac7f7..0d598800 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java @@ -93,7 +93,7 @@ public interface ClangdMetadata { * * @see ClangdOptions#logToConsole() * - * @since 3.0 + * @since 2.2 */ PreferenceMetadata logToConsole(); diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java index aa9e7e30..c88780a4 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdOptions.java @@ -76,7 +76,7 @@ public interface ClangdOptions { * * @return true if clangd logging is enabled * - * @since 3.0 + * @since 2.2 */ default boolean logToConsole() { return false; From a5d41f74895bfa48a971060ec09490071a08cf55 Mon Sep 17 00:00:00 2001 From: Gesa Hentschke Date: Wed, 29 Jan 2025 22:24:35 +0100 Subject: [PATCH 10/11] add default implementation to ClangdMetadata --- .../src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java index 0d598800..b2e2e3f2 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java +++ b/bundles/org.eclipse.cdt.lsp.clangd/src/org/eclipse/cdt/lsp/clangd/ClangdMetadata.java @@ -95,6 +95,12 @@ public interface ClangdMetadata { * * @since 2.2 */ - PreferenceMetadata logToConsole(); + default PreferenceMetadata logToConsole() { + return new PreferenceMetadata<>(Boolean.class, // + "log_to_console", //$NON-NLS-1$ + false, // + "Log to Console", // //$NON-NLS-1$ + "Log to Console"); //$NON-NLS-1$ + } } From 980b503bb7d8496436d512050c7d50198228ddb3 Mon Sep 17 00:00:00 2001 From: Jonah Graham Date: Wed, 29 Jan 2025 17:12:52 -0500 Subject: [PATCH 11/11] fix api filter --- bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters b/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters index 9d2cfc10..e8cd7387 100644 --- a/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters +++ b/bundles/org.eclipse.cdt.lsp.clangd/.settings/.api_filters @@ -1,7 +1,7 @@ - +