Skip to content

Consolidate into a single module #128

@raleigh-g-thompson

Description

@raleigh-g-thompson

The cql-language-server was split into 6 Maven modules (core, ls/server, ls/service, debug/server, debug/service, plugin/debug) due to two constraints that no longer exist:

  1. Spring Boot fat JAR layout — Spring Boot's BOOT-INF/ classloader prevented other modules from depending on the fat JAR as a library, forcing the ls/server + ls/service split. Spring Boot was removed in v4.3.0; this constraint is gone.
  2. ServiceLoader plugin system — CqlLanguageServerPluginFactory was designed for external plugin extensibility. It was never used externally. Only one plugin (plugin/debug) was ever written, by the same team. The abstraction added indirection with no benefit.

Every major peer language server (rust-analyzer, gopls, Pyright, clangd, Pylsp, OmniSharp) ships as a single binary with no plugin system. This refactor aligns with that convention.

Metadata

Metadata

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions