FEATURE: provide candy compiler/lsp server for linux/macosx
Hey guys,
I am quite more excited since the last issue! It`s fantastic that candy got it first release!!!! 👍 YEHA! 👯
I looked into the tools you provided with the first release and noticed that these tools are just for windows. Is it possible to provide these tools for linux and/or macosx in the next releases?
Btw your extension for visual studio code works just as expected, excellent!
Again, thank you very much for you work!
We're happy you're as excited as we are about Candy, even though it's still at the beginning of its development!
Release v0.1.0 marks the beginning of rewriting the compiler in Candy itself (i.e., the bootstrapping). Because that means that the current code will be discarded soon, we didn't pay lots of attention to cross-platform compatibility. The code itself may work on Linux/macOS, though we haven't tested it and some problems may arise, e.g., from incorrect path handling.
If you want to compile the project yourself and try running it on another OS, please let us know and we'll create a guide on setting up this repo locally – but we don't plan on supporting Linux/macOS before the bootstrapping. After we bootstrap, one goal is to support Linux. macOS should also work by then, though we don't have Macs or any Apple-experience to confirm that.
Great to hear that the extension is working 😀
All right, thank you for your quick response! Well it should be also more a feature issue than an actual wip issue. So that's completely fine with me.
If you think that there might be problems with path handling, maybe not now but in the future. I suggest you to use path package to handle the path. That package has a great solution for path handling, which was especially created for cross os path handling.
Actually yes, I would like to compile that repo on my OS. It would be great if you could create such a guide. Maybe for the next release? :-)
Btw my main os is currently MacOsX and some linux distributions, like ubuntu, fedora and manjaro. No windows at all! So if you need any confirmation on that, please let me know.
We know about the path package and have used it in some places, but not confirmed that we use it everywhere, and we might depend on some other behavior of Windows.
To compile this project locally, you first need Dart (>=2.7.0 <3.0.0), Node & NPM:
- clone this repo (obviously)
- run the following commands:
- in
packages/parser:pub getandpub run build_runner build --delete-conflicting-outputs - in
packages/compiler:pub getandpub run build_runner build --delete-conflicting-outputs - in
packages/compiler_dart:pub get - in
packages/lsp_server:pub get - in
packages/vscode_extension:npm install -
npm install -g typescript
- in
For debugging, you can then run the launch config "Run Extension" from the packages/vscode_extension-directory.
To compile executables under Windows, run:
- in
packages/compiler_dart:dart compile exe .\bin\main.dart - in
packages/lsp_server:dart compile exe .\bin\main.dart - in
packages/vscode_extension:npm install -g vsce&vsce package
We haven't run those commands on a different OS, but with updated paths and using a different compile target than exe, they should work.