microsoft / build-server-for-gradle

An implementation of the Build Server Protocol for Gradle
MIT License
51 stars 8 forks source link

Compatibility with scala metals? #121

Closed merisbahti closed 9 months ago

merisbahti commented 9 months ago

Hey, I see that scala metals can use a custom BSP-compatible server (https://scalameta.org/metals/blog/2020/11/06/sbt-BSP-support/)

Is it possible to use build-server-for-gradle with metals?

jdneo commented 9 months ago

Maybe @Arthurm1 could answer this question.

Arthurm1 commented 9 months ago

@merisbahti Not yet There is a Metals feature request here

The following needs to be done... 1) Metals needs to support dependencyModules which I have a half-done PR for 2) Some form of https://github.com/microsoft/build-server-for-gradle/pull/113 needs to be merged 3) Build-server-for-Gradle needs to be published to maven See https://github.com/microsoft/build-server-for-gradle/issues/115 4) Metals needs to take advantage of 3). Which should be fairly trivial

This would get Metals working locally but with minimal functionality. The following would still be missing...

1) Diagnostics. e.g. you'd see no compile errors or warnings. Gradle team seem to be actively working on a Problems API which would return diagnostics. Should be fairly trivial to tie into once they've completed it. 2) Run tests, debug, run main class. I'm not sure where the line is drawn here between Metals and this project. I'm hoping this issue would mean that it would be fairly easy to add debug support to this project.

merisbahti commented 9 months ago

Thanks for the response! That really answers my question, since we have a PR up already, we could close this issue.