2651037472709b54867793cea157a2645af34e7c
The current LSP headers reader implementation assumes a specific order (i.e., `Content-Length` first, and then `Content-Type`). Unfortunately, this assumption is not always valid, as no specification enforces the rule. @caius and I encountered this issue while implementing the Terraform LSP, where `Content-Type` comes first, breaking the implementation in #6929. This PR introduces a `read_headers` function, which asynchronously reads the incoming pipe until the headers' delimiter (i.e., '\r\n\r\n'), adding it to the message buffer, and returning an error when delimiter's not found. I added a few tests but only considered scenarios where headers are delivered at once (which should be the case?). I'm unsure if this suffices or if I should consider more scenarios; I would love to hear others' opinions. Release Notes: - N/A --------- Co-authored-by: Caius <caius@caius.name>
Zed
Welcome to Zed, a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
Installation
You can download Zed today for macOS (v10.15+).
Support for additional platforms is on our roadmap:
- Linux (tracking issue)
- Windows (tracking issue)
- Web (tracking issue)
For macOS users, you can also install Zed from Homebrew:
brew install zed
Developing Zed
Contributing
See CONTRIBUTING.md for ways you can contribute to Zed.
Licensing
License information for third party dependencies must be correctly provided for CI to pass.
We use cargo-about to automatically comply with open source licenses. If CI is failing, check the following:
- Is it showing a
no license specifiederror for a crate you've created? If so, addpublish = falseunder[package]in your crate's Cargo.toml. - Is the error
failed to satisfy license requirementsfor a dependency? If so, first determine what license the project has and whether this system is sufficient to comply with this license's requirements. If you're unsure, ask a lawyer. Once you've verified that this system is acceptable add the license's SPDX identifier to theacceptedarray inscript/licenses/zed-licenses.toml. - Is
cargo-aboutunable to find the license for a dependency? If so, add a clarification field at the end ofscript/licenses/zed-licenses.toml, as specified in the cargo-about book.
Description
GPUI – Community Edition maintained by Oak Team
https://gpui-ce.github.io/
258 MiB
Languages
Rust
95.6%
WGSL
1.2%
Metal
1.1%
HLSL
1.1%
Python
0.6%
Other
0.3%