denoland / vscode_deno

Visual Studio Code plugin for Deno
https://marketplace.visualstudio.com/items?itemName=denoland.vscode-deno
MIT License
1.48k stars 144 forks source link

Roadmap #121

Closed bartlomieju closed 4 years ago

bartlomieju commented 4 years ago

With numerous reports about extension being broken (#110, #99, #120) I'm opening this issue to clearly communicate our plans regarding the extension and what can be expected of it.

First of all, this project is not dead, even though there hasn't been much development going on. Deno team is aware of the problems plaguing the VSCode extension and we're allocating time to work on the extension and the LSP implementation.

We plan to work on the better implementation of language server first, because it is used by other IDEs besides VSCode (eg. CoC, IntelliJ).

In the long run, we'd like to provide this server directly built-in into Deno binary.

However for the first iteration might end up being an update to typescript-deno-plugin package to get put out most of burning fires (#99, #85, #49) and provide stable and tested solution.

After sorting out problems with the language server we'll change our focus to the VSCode extension itself. Again, first we'll tackle currently occuring bugs to ensure the "basic" workflow is satisfactory and working properly.

We've got limited bandwith so I'm not willing to give any date estimates at the momoent, as to when to expect fixed version of the language server and extension.

If you're experienced in developing either of these things and would like to contribute don't hesitate to comment on this issue.

mwoodpatrick commented 4 years ago

Is there any documentation on the language server & how this extension works with the server? What's the URL of the language server code?

kitsonk commented 4 years ago

There is quite a lot of documentation regarding language servers and how language servers work with VSCode. But a word of caution, you need either good experience with the language service protocol, monaco/vscode, or Deno. It isn't specifically a "good first issue" and there are lots of other ways to contribute to Deno.

mwoodpatrick commented 4 years ago

Many thanks for the information very much appreciated. I am very interested in Deno, it seems quite promising, I also would much rather use vscode as my IDE rather than some alternative. But I am having significant problems with vscode not being able to find code see here for details and would like to find a fix for this ASAP and if in doing so I can make a contribution to the advancement of deno all that better

JohnstonCode commented 4 years ago

If you need any VSCode related extension help you can ping me. I am the author of https://github.com/JohnstonCode/svn-scm

bartlomieju commented 4 years ago

@JohnstonCode thank you! I'll be looking into upgrading the extension, I'll ping you if I hit roadblocks 👍

brandonkal commented 4 years ago

@bartlomieju If the language server is going to be added into the deno binary is there a plan for a deno-lite binary with lint/language-server/etc stripped for production deployments?

bartlomieju commented 4 years ago

@brandonkal there no plans for such binary. That said, that question is better suited for main Deno repo if you want to have a discussion.

David-Else commented 4 years ago

@bartlomieju I think this post might have been outdated by the recent merge, also there is a mismatch between version numbers now https://marketplace.visualstudio.com/items/denoland.vscode-deno/changelog vs https://github.com/denoland/vscode_deno/commit/9d121207d8c1b9b9ad86a5b441d1bc674ca3fc14

jsejcksn commented 4 years ago

@bartlomieju Can you also provide a brief summary of the recent major changes? I'm confused about why the project recently switched from justjavac's code to axetroy's code, and what functionality changed during the switch.

There is no longer a VS Code command palette option to "Enable Deno" or "Disable Deno" (it seems I must manually create the workspace settings file in every new workspace).

Also, there was a bug where the extension did not resolve module URLs with non-default ports, so I tracked down the bug to typescript-deno-plugin and patched it, but I'm guessing it's not going to land in this extension now?

jsejcksn commented 4 years ago

@David-Else The changelog you linked to does not represent the actual changelog of this extension. It seems to have been copied from axetroy's extension during the switch I mentioned above.

iugo commented 4 years ago

@David-Else The changelog you linked to does not represent the actual changelog of this extension. It seems to have been copied from axetroy's extension during the switch I mentioned above.

It seems like from https://github.com/denoland/vscode_deno/blob/bacff2abf89b6b4d80c3afb8fcd37b6032e3c30e/CHANGELOG.md

the CHANGELOG.md should be updated.

David-Else commented 4 years ago

This might help people learning how to work with VS Code extensions: Workshop: Build your First VS Code Extension - Nicolas Carlo, Busbud & Florent Vilmart, Shutterstock

lucacasonato commented 4 years ago

The burning fires have been put out now, so it is time for a new roadmap: #194.