eclipse-che / che

Kubernetes based Cloud Development Environments for Enterprise Teams
http://eclipse.org/che
Eclipse Public License 2.0
6.99k stars 1.19k forks source link

Golang Plugin #12145

Closed tsmaeder closed 5 years ago

tsmaeder commented 5 years ago

We'd like to have Golang support in Che 7. There is a Golang plugin for VSCode. We should investigate whether we can run the Golang plugin in Theia as it exists now. As we currently don't have a plugin broker for vscode plugins (@garagatyi is currently working on it), we should start by evaluating the vscode golang plugin.

  1. Test language server functions
  2. Test debugger functionality
  3. Evaluate debugger in view of running it in a sidecar: can we debug a process running in the target container?

If at this point, we have a working plugin broker for vscode plugins, we can start to develop the che plugin, otherwise, there is a way to repackage a vscode plugin to make it work as a che plugin (@benoitf knows how). In order to run as a che plugin, we need to

  1. Create or find a container that can run the vscode golang plugin
  2. Package the vscode plugin & container as a che-7 plugin and publish to the plugin registry
tolusha commented 5 years ago

https://github.com/theia-ide/theia/pull/4070

benoitf commented 5 years ago

hello @tolusha As CQ is blocked for tmate file

Couldn't we just use https://marketplace.visualstudio.com/items?itemName=dunstontc.vscode-go-syntax to provide go syntax highlight and then your PR on theia would be only on fixes. No duplicated code.

tolusha commented 5 years ago

@benoitf Great. Make sense. I will try.

tolusha commented 5 years ago

Unfortunately they conflict with each other in term of language contribution.

tolusha commented 5 years ago

I can try to merge both extensions and host a custom one in our repository [1] like I did for typescript [2]

[1] https://github.com/che-incubator/ [2] https://github.com/che-incubator/ms-code.typescript

@benoitf WDYT ?

benoitf commented 5 years ago

@tolusha yes you can.

do you know if the conflict is a theia issue or not (is it working on VsCode ?)

tolusha commented 5 years ago

Another option is to provide GO lang functionality without syntax highlighting.

tolusha commented 5 years ago

It works in VS Code.

benoitf commented 5 years ago

@tolusha would be a good start as well (better than nothing) and then we can fix theia to handle the two extensions