Add new make-file-executable API for extensions (#10047)

This PR adds a new function, `make-file-executable`, to the Zed
extension API that can be used to mark a given file as executable
(typically the language server binary).

This is available in v0.0.5 of the `zed_extension_api` crate.

We also reworked how we represent the various WIT versions on disk to
make it a bit clearer what the version number entails.

Release Notes:

- N/A

---------

Co-authored-by: Max <max@zed.dev>
This commit is contained in:
Marshall Bowers 2024-04-01 15:28:24 -04:00 committed by GitHub
parent 6e49a2460e
commit 8b586ef8e7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 97 additions and 46 deletions

View file

@ -13,4 +13,4 @@ path = "src/toml.rs"
crate-type = ["cdylib"]
[dependencies]
zed_extension_api = "0.0.4"
zed_extension_api = "0.0.5"

View file

@ -72,6 +72,8 @@ impl TomlExtension {
)
.map_err(|err| format!("failed to download file: {err}"))?;
zed::make_file_executable(&binary_path)?;
let entries = fs::read_dir(".")
.map_err(|err| format!("failed to list working directory {err}"))?;
for entry in entries {