apache / apache/netbeans

LanguageServerProvider should be able to pass initialization options to Language Server

Open
#5,822 2 comments 1 reaction 0 assignees View on GitHub
kind:feature needs:triage
Dominant language
Java
Stars
3.1k
Forks
935
Avg merge
2d 3h
Merged PRs (30d)
17

Description

### Description

While developing new plugin (Language Client for Apache Camel) I found out that I am not able to pass initialization options to my Language Server. I opened [discussion](https://github.com/apache/netbeans/discussions/5776) few days ago about this but I get no response.
Camel Language server uses this initialization options for passing user preferences, like custom components, different catalog providers and so. This abilities are important for my thesis solution, so I decided to try edit existing API. I was able to pass these options, but I don't feel it's good enough to open Pull Request. You can see my partial solution in my NetBeans fork in branch [initOptions](https://github.com/pospisilf/netbeans/tree/initOptions). [(Link to specific commit changes.)](https://github.com/pospisilf/netbeans/commit/82c725026ffd4434bf5016a6dd293d7e7d2f81d6)

### Use case/motivation

Developer should be able to use whole potential of Language Server Protocol with added feature to pass initialization options to server.

### Related issues

_No response_

### Are you willing to submit a pull request?

No

Contributor guide

Open the contributing guide

Research direction

Start with the LanguageServerProvider API and the linked initOptions branch and commit to understand the proposed change; the discussion provides additional context on the missing initialization options. The work is done when a language-server client can pass initialization options through the provider to the server, with the API behavior validated by the relevant NetBeans tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, developer-experience
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.