Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LSP4Jakarta alignment with the LSP4MP code base #495

Merged
merged 30 commits into from Oct 17, 2023
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
7555dca
new impl of jakarta ls - completion only, functionally equivalent to …
ajm01 Aug 18, 2023
363bf6f
fix? an asynch compute timing window
ajm01 Aug 22, 2023
8857e2e
comments added
ajm01 Aug 23, 2023
d6168ea
Base diagnostics and code actions
mezarin Sep 13, 2023
aa57a21
Base code additions
mezarin Oct 3, 2023
6f06750
LSP4Jakarta specific code
mezarin Oct 3, 2023
19cf718
Add updated tests
mezarin Oct 4, 2023
90c9a87
code cleanup
ajm01 Oct 4, 2023
0988535
JDTUtils timing workaround
ajm01 Oct 6, 2023
79161fc
for diagnostics, set markup supported as a default - in keeping with…
ajm01 Oct 6, 2023
b7abbc2
Add rebased CDI support and tests
mezarin Oct 5, 2023
27f3b08
sync up JakartaDelegateCommandHandlerForJava with latest messages and…
ajm01 Oct 6, 2023
5247c1e
fixes based on comments
ajm01 Oct 6, 2023
c0bd9b3
Cleanup take 1
mezarin Oct 6, 2023
ef00b13
Code cleanup part 2
mezarin Oct 7, 2023
12544a2
move lsp4jakarta to 0.2.0 version number
ajm01 Oct 9, 2023
b871ae5
Add java source formatter that runs at compile time.
mezarin Oct 8, 2023
4f46aa8
Update with formatted code
mezarin Oct 9, 2023
f62cc4a
Update client build.properties with updated source path
mezarin Oct 9, 2023
56ccbba
updates to allow vscode to connect to jakarta ls
ajm01 Oct 9, 2023
c1e7903
update string
ajm01 Oct 9, 2023
a27c623
add new delegate command handle to plugin.xml
ajm01 Oct 10, 2023
864cb75
cleanup part 3
mezarin Oct 10, 2023
0f4e58a
Remove unnecessary completion types from schema
mezarin Oct 10, 2023
4c44013
code review
mezarin Oct 10, 2023
027d547
add snippet/completion tests
ajm01 Oct 10, 2023
c720b19
revert timeout change put in for attaching a debugger
ajm01 Oct 13, 2023
740e96f
disable the caching of ProjectLabelInfoEntry objects to allow for pro…
ajm01 Oct 16, 2023
30ec18f
address ed's restructure comments
ajm01 Oct 16, 2023
66cf1ac
Code review udpate
mezarin Oct 17, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Expand Up @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Bundle-Name: Eclipse LSP4Jakarta Plugin (Incubation)
Bundle-Vendor: Eclipse LSP4Jakarta
Bundle-SymbolicName: org.eclipse.lsp4jakarta.lsp4e.core;singleton:=true
Bundle-Version: 0.1.2.qualifier
Bundle-Version: 0.2.0.qualifier
Bundle-Activator: org.eclipse.lsp4jakarta.lsp4e.Activator
Require-Bundle:
org.eclipse.lsp4e,
Expand Down
@@ -1,5 +1,5 @@
source.. = src/
source.. = src/main/java
output.. = target/classes
bin.includes = META-INF/,\
.,\
/server/org.eclipse.lsp4jakarta.ls-jar-with-dependencies.jar
server/org.eclipse.lsp4jakarta.ls-jar-with-dependencies.jar
2 changes: 2 additions & 0 deletions jakarta.eclipse/org.eclipse.lsp4jakarta.lsp4e.core/plugin.xml
Expand Up @@ -39,6 +39,7 @@
id="org.jakartaee.lsp4e.jakartaserver">
</contentTypeMapping>
</extension>

<extension
id="jakarta-completion-computer"
name="Jakarta Proposals (based on Jakarta LS)"
Expand All @@ -50,4 +51,5 @@
needsSortingAfterFiltering="false">
</javaCompletionProposalComputer>
</extension>

</plugin>
202 changes: 99 additions & 103 deletions jakarta.eclipse/org.eclipse.lsp4jakarta.lsp4e.core/pom.xml
@@ -1,105 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>org.eclipse.lsp4jakarta.lsp4e</artifactId>
<groupId>org.eclipse.lsp4jakarta</groupId>
<version>0.1.2-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.lsp4jakarta.lsp4e.core</artifactId>
<packaging>eclipse-plugin</packaging>

<name>Eclipse LSP4Jakarta LSP4E Plugin</name>
<description>Eclipse LSP4Jakarta LSP4E Plugin</description>

<organization>
<name>Eclipse LSP4Jakarta</name>
<url>https://github.com/eclipse/lsp4jakarta</url>
</organization>

<licenses>
<license>
<name>EPL-2.0</name>
<url>https://www.eclipse.org/legal/epl-2.0/</url>
<comments>Eclipse Public License 2.0</comments>
</license>
</licenses>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>get-server</id>
<goals>
<goal>copy</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${basedir}/server/</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.eclipse.lsp4jakarta</groupId>
<artifactId>org.eclipse.lsp4jakarta.ls</artifactId>
<version>0.1.2-SNAPSHOT</version>
<classifier>jar-with-dependencies</classifier>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
<configuration>
<skip>false</skip>
<stripVersion>true</stripVersion>
</configuration>
</plugin>
<plugin>
<!-- make sure server dir is removed after clean to avoid "dirty" build -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>${basedir}/server</directory>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.7,)</versionRange>
<goals>
<goal>copy</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute runOnConfiguration="true"></execute>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>org.eclipse.lsp4jakarta.lsp4e</artifactId>
<groupId>org.eclipse.lsp4jakarta</groupId>
<version>0.2.0-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.lsp4jakarta.lsp4e.core</artifactId>
<packaging>eclipse-plugin</packaging>
<name>Eclipse LSP4Jakarta LSP4E Plugin</name>
<description>Eclipse LSP4Jakarta LSP4E Plugin</description>
<organization>
<name>Eclipse LSP4Jakarta</name>
<url>https://github.com/eclipse/lsp4jakarta</url>
</organization>
<licenses>
<license>
<name>EPL-2.0</name>
<url>https://www.eclipse.org/legal/epl-2.0/</url>
<comments>Eclipse Public License 2.0</comments>
</license>
</licenses>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>get-server</id>
<goals>
<goal>copy</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${basedir}/server/</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.eclipse.lsp4jakarta</groupId>
<artifactId>org.eclipse.lsp4jakarta.ls</artifactId>
<version>0.2.0-SNAPSHOT</version>
<classifier>jar-with-dependencies</classifier>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
<configuration>
<skip>false</skip>
<stripVersion>true</stripVersion>
</configuration>
</plugin>
<plugin>
<!-- make sure server dir is removed after clean to avoid "dirty" build -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>${basedir}/server</directory>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.7,)</versionRange>
<goals>
<goal>copy</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute runOnConfiguration="true"></execute>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
@@ -1,73 +1,72 @@
/*******************************************************************************
* Copyright (c) 2020, 2022 IBM Corporation and others.
*
* 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 Apache License, Version 2.0
* which is available at https://www.apache.org/licenses/LICENSE-2.0.
*
* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/

package org.eclipse.lsp4jakarta.lsp4e;

import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

/**
* The activator class controls the plug-in life cycle
*/
public class Activator extends AbstractUIPlugin {

// The plug-in ID
public static final String PLUGIN_ID = "org.eclipse.lsp4jakarta.lsp4e.core"; //$NON-NLS-1$

// The shared instance
private static Activator plugin;

public boolean started;

/**
* The constructor
*/
public Activator() {
}

@Override
public void start(BundleContext context) throws Exception {
super.start(context);
plugin = this;
getDefault().getLog().log(new Status(IStatus.INFO, PLUGIN_ID, "Starting activator class for lsp4e.core"));
started = true;
}

@Override
public void stop(BundleContext context) throws Exception {
plugin = null;
started = false;
super.stop(context);
}

/**
* Returns the shared instance
*
* @return the shared instance
*/
public static Activator getDefault() {
return plugin;
}

public static void log(IStatus status) {
getDefault().getLog().log(status);
}

public static void logException(String errMsg, Throwable ex) {
getDefault().getLog().log(new Status(IStatus.ERROR, PLUGIN_ID, errMsg, ex));
}

}
/*******************************************************************************
* Copyright (c) 2020, 2022 IBM Corporation and others.
*
* 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 Apache License, Version 2.0
* which is available at https://www.apache.org/licenses/LICENSE-2.0.
*
* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/

package org.eclipse.lsp4jakarta.lsp4e;

import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

/**
* The activator class controls the plug-in life cycle
*/
public class Activator extends AbstractUIPlugin {

// The plug-in ID
public static final String PLUGIN_ID = "org.eclipse.lsp4jakarta.lsp4e.core"; //$NON-NLS-1$

// The shared instance
private static Activator plugin;

public boolean started;

/**
* The constructor
*/
public Activator() {}

@Override
public void start(BundleContext context) throws Exception {
super.start(context);
plugin = this;
getDefault().getLog().log(new Status(IStatus.INFO, PLUGIN_ID, "Starting activator class for lsp4e.core"));
started = true;
}

@Override
public void stop(BundleContext context) throws Exception {
plugin = null;
started = false;
super.stop(context);
}

/**
* Returns the shared instance
*
* @return the shared instance
*/
public static Activator getDefault() {
return plugin;
}

public static void log(IStatus status) {
getDefault().getLog().log(status);
}

public static void logException(String errMsg, Throwable ex) {
getDefault().getLog().log(new Status(IStatus.ERROR, PLUGIN_ID, errMsg, ex));
}

}