-
-
Notifications
You must be signed in to change notification settings - Fork 407
new build on save with watch mode #2096
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
Conversation
|
I've tried this with a few of my projects and it works well ⚡ |
892dad3 to
461105b
Compare
8736816 to
bee1c90
Compare
…n has been received
This also fixes a minor bug where cImport diagnostics would only be reported after a document has been modified
The main motivation for this is to keep support for the latest mach nominated zig version which is `0.14.0-dev.1911+3bf89f55c`.
bee1c90 to
e390f5c
Compare
|
@Techatrix, is there a way to turn this off? I skimmed the diff and I didn't see one. |
|
On macOS there are two bugs related to this feature, one is the one linked above, the second is that --watch crashes on macOS (fixed here, should become available in 0.14.1) and when that happens in ZLS, you just see ZLS stop working. |
No, this PR has replaced the previous build on save implementation. Excluding bugs like these, there should be no reason to need the old implementation. If no progress is being made on ziglang/zig#21905, I will look into patching ZLS. |
This PR replaces the current build on save implementation with a new one that is based on Zig's
zig build --watchfeature. This can be combined with thebuild_on_save_argsconfig option to enable incremental compilation. fixes #2001Here is a small showcase where I use the equivalent of
zig build check --watch -fincremental:Details
output.webm
Show Video
I used the Error Lens extension to display the error messages inline.
The minimum runtime Zig version has been bumped from
0.12.0to0.14.0-dev.310+9d38e82b5. This means that the latest mach nominated zig version (0.14.0-dev.1911+3bf89f55c) is still supported.The build on save diagnostics are no longer removed after editing the document. The source location of the error message is not being updated when the document gets modified but this can be implement in the future.
std.zig.ErrorBundlewhich unblocks use reference trace to provide better build-on-save source locations for errors #2018I have only tested this on Linux and Windows with VS Code. Who know what kind of bugs are still lurking around 🤷