-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add release action #7
Conversation
there's also a web target that's not included in this PR. It could disable the language server binary and just provide the grammar/syntax definitions to at least have something. It would probably also be possible to compile to wasm and run the LSP actions through that, but at that point most people will probably just use typst.app. |
The README also should document for the You could also have a vscode task fr that so that ctrl+F5 always compiles extension and server and launches the up-to-date extension. |
I don't have time to fully review this right now, but this looks great! I'll get to it as soon as I can. My biggest concern is actually the name of the project; I'd like to make sure it's okay to call this "Typst LSP" and not "LSP for Typst" or something similar (to avoid looking official when we're not). |
Suggesting adding the following to speed up builds: Incremental builds end up being slower in CI because there is overhead and there wasn't a previous build to base upon.
|
Looks like this is already handled by the rust-toolchain action https://github.com/dtolnay/rust-toolchain/blob/fc3253060d0c959bea12a59f10f8391454a0b02d/action.yml#L89 |
Oh awesome, I didn't know! Never mind my comment then :) |
This looks good. I'll probably set up a VS Code task like you suggested, so everything "just works". |
I think the alpine build fails because @vscode/vsce is not installed |
Adds a
release.yml
github actions workflow that builds the server binary and extension for every target listed in https://code.visualstudio.com/api/working-with-extensions/publishing-extension#platformspecific-extensions.The action runs on new git tags, and creates a release with all the binaries and vsix, and calls
vsce publish
.You'll need to add a
VSCE_PAT
github secret (how to get access token) and add apublisher
field to the package.json.extension.ts
to look for bundled executable first, falls back totypst-lsp[.exe]
(could also be configurable via vscode settings)addons/vscode
esbuild
for bundling and change package.json scriptsnpm run package
builds.vsix
, bundles using esbuild minifiednpm run compile
bundles using esbuild with source mapsnpm run check
runstsc
to check typescriptnpm run lint/lint-fix
as beforeIf you'd like to have anything changed let me know :)