Language Server
New Language Server Protocol service for Technique
Implemented a server for the Language Server Protocol (LSP), using the synchronous lsp-server crate as developed by the rust-analyzer project. This is run via the new technique language subcommand.
The original check command exited immediately if it encountered an error. We updated the parser to instead accumulate errors so that multiple problems can be reported if present, as you would expect working in an editor.
The LSP implementation was tested via our language extension for the Zed Editor at ../extension.zed.
- Fix compiler warnings by @istathar in #75
- Collect and display all detected errors in an input document by @istathar in #76
- Require parenthesis around parameters to procedures by @istathar in #77
- Improve test coverage by @istathar in #78
- Implement a Language Server for Technique by @istathar in #79
Cleanup
Other changes include removing the last vestiges of the original Technique v0 implementation and continuing the improvement of our test suite.
- Remove original Technique language implementation by @istathar in #68
- Improve test coverage by @istathar in #78
- Add Workflow to upload artifact to Release by @istathar in #80
Full Changelog: v0.4.0...v0.4.3