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

add dart ms-vscode extension and sidecar to che #17732

Closed gattytto closed 4 years ago

gattytto commented 4 years ago

in case anyone is up to testing / doing this, I'll be adding as much info as I find about officially maintained stuff (docker images/sources, spread binaries).

there's plenty of "mixed" documentation about dart<>flutter but only dart is within google's dockerhub. So it is recommended to not "mix" dart stuff with flutter stuff in che because they will probably follow separate paths.

extension site: https://marketplace.visualstudio.com/items?itemName=Dart-Code.dart-code https://github.com/dart-lang/sdk https://github.com/dart-lang/dart_docker

dockerimages: https://github.com/dart-lang/dart_docker

test sidecar source: https://github.com/gattytto/che-sidecar-dart

test devfile:

metadata:
  name: dartproj
projects:
  - name: dart-lang-samples
    source:
      location: 'https://github.com/dart-lang/samples'
      type: git
components:
  - id: eclipse/che-theia/next
    type: cheEditor
  - type: chePlugin
    reference: >-
      https://raw.githubusercontent.com/gattytto/cheplugins/master/dart/3.13.2/meta.yaml
    alias: dartext
apiVersion: 1.0.0

DOESN'T WORK: outline

gattytto commented 4 years ago

unimplemented function in theia https://github.com/eclipse-theia/theia/issues/8289 requires this branch of the extension to avoid the error: https://github.com/Dart-Code/Dart-Code/commit/d4253d6d054448462642d4d9d300c44c696ffc34

gattytto commented 4 years ago

package fails seem to be related to packages calling out members within themselves, so yet another extension that needs the multi-root capability.

image

gattytto commented 4 years ago

sdk references work out of the box image

gattytto commented 4 years ago

it works, apart from the known multiroot feature missing in the IDE (it requires to manually add the folder of a project containing the pubspec.yaml file using "add folder to workspace"). image

gattytto commented 4 years ago

pub build works but "run" and "debug" hyperlinks within code files don't produce any result (at least in my Brave browser). image

ericwill commented 4 years ago

che-sidecar-dart repo created: https://github.com/che-dockerfiles/che-sidecar-dart Quay.io repo: https://quay.io/repository/eclipse/che-sidecar-dart