Coder Social home page Coder Social logo

camel-tooling / camel-lsp-client-vscode Goto Github PK

View Code? Open in Web Editor NEW
24.0 24.0 13.0 50.72 MB

This is a client implementation of the Apache Camel Language Server Protocol for Visual Studio Code

License: Apache License 2.0

JavaScript 0.44% TypeScript 98.33% Java 1.07% Groovy 0.04% Kotlin 0.12%
apache-camel camel lsp vscode vscode-extension vscode-language

camel-lsp-client-vscode's People

Contributors

apupier avatar asemy avatar benoitf avatar delawen avatar dependabot-preview[bot] avatar dependabot[bot] avatar djelinek avatar hdamarcelo avatar joshiraez avatar lhein avatar melissaflinn avatar mlorinc avatar pospisilf avatar unsortedhashsets avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

camel-lsp-client-vscode's Issues

Suggestion: detail current features

Hi, I have installed vscode plugin but I'm struggling to understand what features the plugin has and where I should see its behavior kicking in.

I would like to read a more explicit list of currently supported features. For example:

  • which DSL are supported? (java/xml/blueprint/whatever)
  • does the autocompletion kick in while I'm editing an endpoint URI ?
  • anything else?

A quick video might be good to show case the features, but personally I'd like to see these feature in form of a quick cropped screenshot that can give me, with a glimpse of an eye, all the information that I need.

thank you

[Regression]Diagnostics for Camel URIs is not working

Environment

  • latest build of LSP server 1.1.0-SNAPSHOT
  • VS Code 1.38.1
  • Language Support for Apache Camel by Red Hat - latest 0.0.18

Tested code:

<camelContext id="uitest-context" xmlns="http://camel.apache.org/schema/spring">
    <route id="uitest-route">
        <from id="_fromID" uri="timer:timerName?delay=1000r"/>
    </route>
</camelContext>

Result:
no detected errors in Problems view

Include UI tests in jenkins tests

currently UI tests re included in Travis build but not the Jenkins one.

when adding, check if the test report is provided (which is something that doesn't exist for Travis)

Upgrade dependencies to fix moderate security issues with lodash and js-yaml

npm audit
                                                                              
                       === npm audit security report ===                                                                                                       
# Run  npm install --save-dev [email protected]  to resolve 2 vulnerabilities                                                                                
  Moderate        Prototype Pollution                                                                                                                           
  Package         lodash                                                                                                                                  
  Dependency of   vsce [dev]                                                                                                                                    
  Path            vsce > cheerio > lodash                                                                                                                      
  More info       https://nodesecurity.io/advisories/782                                                                                                       


                                                                                
  Moderate        Prototype Pollution                                                                                                                         
  Package         lodash                                                                                                                                        
  Dependency of   vsce [dev]                                                                                                                                   
  Path            vsce > lodash                                                                                                                               
  More info       https://nodesecurity.io/advisories/782 

# Run  npm update js-yaml --depth 2  to resolve 1 vulnerability                                                                                
  Moderate        Denial of Service                                                                                                                            
  Package         js-yaml                                                                                                                                       
  Dependency of   tslint [dev]                                                                                                                                
  Path            tslint > js-yaml                                                                                                                              
  More info       https://nodesecurity.io/advisories/788      

Upgrade tar dependency

to avoid reported vulnerability (it si affecting only dev so no risk but it will avoid to have a warning in github) and allows to detect more easily potential new vulnerabilities)

Provide test for high-level use case: Create Camel project/modify Java file/start locally

should we create the test inside this repository or another one as it goes beyond just Camel LSP but general Camel development?

  • create camel project:
    -- which possibility to test first? maybe use git clone on https://github.com/jboss-fuse/fuse-rest-http-booster
  • modify Camel route Java file
    -- check classic java completion available
    -- check Camel completion available
  • use springboot dashboard related command to start the project

Extention crashes on Windows (BUG)

Issue information

I am repeatedly gets this exception and it crashes

Exception in thread "main" java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
	at org.springframework.boot.loader.Launcher.launch(Launcher.java:107)
	at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: java.lang.NullPointerException
	at java.base/java.io.Reader.<init>(Reader.java:167)
	at java.base/java.io.InputStreamReader.<init>(InputStreamReader.java:72)
	at org.apache.camel.kafkaconnector.catalog.CamelKafkaConnectorCatalog.initCatalog(CamelKafkaConnectorCatalog.java:65)
	at org.apache.camel.kafkaconnector.catalog.CamelKafkaConnectorCatalog.<init>(CamelKafkaConnectorCatalog.java:52)
	at com.github.cameltooling.lsp.internal.catalog.util.CamelKafkaConnectorCatalogManager.<init>(CamelKafkaConnectorCatalogManager.java:23)
	at com.github.cameltooling.lsp.internal.CamelTextDocumentService.<init>(CamelTextDocumentService.java:94)
	at com.github.cameltooling.lsp.internal.CamelLanguageServer.<init>(CamelLanguageServer.java:53)
	at com.github.cameltooling.lsp.internal.Runner.main(Runner.java:65)
	... 8 more
[Info  - 11:24:59 am] Connection to server got closed. Server will restart.
Exception in thread "main" java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
	at org.springframework.boot.loader.Launcher.launch(Launcher.java:107)
	at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
	at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: java.lang.NullPointerException
	at java.base/java.io.Reader.<init>(Reader.java:167)
	at java.base/java.io.InputStreamReader.<init>(InputStreamReader.java:72)
	at org.apache.camel.kafkaconnector.catalog.CamelKafkaConnectorCatalog.initCatalog(CamelKafkaConnectorCatalog.java:65)
	at org.apache.camel.kafkaconnector.catalog.CamelKafkaConnectorCatalog.<init>(CamelKafkaConnectorCatalog.java:52)
	at com.github.cameltooling.lsp.internal.catalog.util.CamelKafkaConnectorCatalogManager.<init>(CamelKafkaConnectorCatalogManager.java:23)
	at com.github.cameltooling.lsp.internal.CamelTextDocumentService.<init>(CamelTextDocumentService.java:94)
	at com.github.cameltooling.lsp.internal.CamelLanguageServer.<init>(CamelLanguageServer.java:53)
	at com.github.cameltooling.lsp.internal.Runner.main(Runner.java:65)
	... 8 more
[Error - 11:25:01 am] Connection to server got closed. Server will not be restarted.

Define issue title short and most specific to the problem.

Tag each new issue with relevant LABELS (Bug, Improvement, etc.).

BUG report

Environment

  • Language Support for Apache Camel version: e.g. "v0.0.13" ?
    v0.0.28
  • OS:
    • Linux (RHEL, Fedora, Ubuntu, ...)
    • [ X] Windows
    • macOS

Description of wrong behavior

  • ...

Exact steps to reproduce issue

  1. Opening camel project with maven
  2. ...
  3. ...

TASK definition

Description

These are dependencies in pom.xml

<dependencies>
        <dependency>
            <groupId>org.apache.camel.springboot</groupId>
            <artifactId>camel-spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
        </dependency>        
        <dependency>
            <groupId>org.apache.camel.springboot</groupId>
            <artifactId>camel-kafka-starter</artifactId>
        </dependency>
    </dependencies>   

Camel version is 3.4.4

  • ...

Expected behaviour

  • There should be no error

Screenshot (optional)

  • ...

Upgrade tslint to 3.5.1+

                       === npm audit security report ===                        
                                                                                
# Run  npm update underscore.string --depth 2  to resolve 1 vulnerability
                                                                                
  Moderate        Regular Expression Denial of Service                          
                                                                                
  Package         underscore.string                                             
                                                                                
  Dependency of   tslint [dev]                                                  
                                                                                
  Path            tslint > underscore.string                                    
                                                                                
  More info       https://nodesecurity.io/advisories/745 

[ENH] Improving activating whitelist support for Java DSL

According to yesterday's article, there is currently a set of pre-requisites for the functionality to be enabled:

  • The filename needs to end with .java.
  • The file needs to contain camel written somewhere.
  • The Camel URI String needs to be used directly as a parameter of the RouteBuilder.from or RouteBuilder.to methods (which means no space, no variable).

This is understood but it would be useful exposing the user the logic to activate the functionality.

I assume the .java suffix is an hard constraint, despite I think it should be useful to allow a way to enable the plugin also on disposable temporary new files, that don't have any file name yet.

The most limiting constraint is the camel keyword requirement. I was about to suggest to switch to route, but at that point, I've realised that probably the real feature would be to allow the user to specify the regexp/GLOB/keywords they like.

Provide a Camel Extension Pack

which will gather several useful plugins for Camel development, for instance:

  • Java Extension pack
  • Spring Boot Extension pack
  • XML support by Red Hat (?)
  • fabric8-launcher?
  • yeoman integration?

Support loading Language Server from java.home specified in VS Code settings (avoid to fail to load when `java` isn't in `$PATH`)

Issue informations

BUG report

Environment

  • Apache Camel Language Server release version: 0.0.22
  • OS:
    • Linux (RHEL, Fedora, Ubuntu, ...)
    • Windows
    • Mac OS
  • Apache Camel Client for:
    • Eclipse
    • VS Code
    • Eclipse Che
    • OpenShift.io

Description of wrong behavior

  • The language server fails to start if the java binary is not found in $PATH. That is despite $JAVA_HOME being defined in the environment and java.home being defined in VScode settings.

Exact steps to reproduce issue

  1. Install VScode OSS from FlatHub (This means it will not ave access to the system Java)
  2. Install Java via e.g. sdkman into a location in $HOME.
  3. Set the java.home setting in VScode to point to where JAva is installed (This is enough to enable the Java language server to load in VScode)
  4. Install the Camel language extension

TASK definition

Description

  • Respect the $JAVA_HOME environment variable and the java.home setting when starting up the language server

Expected behaviour

  • When starting up the language server, search for the java binary in $JAVA_HOME and java.home.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.