Upgrade tree sitter and all grammars (#17734)
Fixes https://github.com/zed-industries/zed/issues/5291 Release Notes: - Fixed a bug where the 'toggle comments' command didn't use the right comment syntax in JSX and TSX elements. --------- Co-authored-by: Conrad <conrad@zed.dev> Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com> Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
This commit is contained in:
parent
b54b3d6246
commit
bc5ed1334f
41 changed files with 366 additions and 387 deletions
|
@ -13,7 +13,7 @@ use language::{LanguageServerName, LspAdapterDelegate};
|
|||
use semantic_version::SemanticVersion;
|
||||
use std::{ops::RangeInclusive, sync::Arc};
|
||||
use wasmtime::{
|
||||
component::{Component, Instance, Linker, Resource},
|
||||
component::{Component, Linker, Resource},
|
||||
Store,
|
||||
};
|
||||
|
||||
|
@ -75,57 +75,55 @@ impl Extension {
|
|||
release_channel: ReleaseChannel,
|
||||
version: SemanticVersion,
|
||||
component: &Component,
|
||||
) -> Result<(Self, Instance)> {
|
||||
) -> Result<Self> {
|
||||
// Note: The release channel can be used to stage a new version of the extension API.
|
||||
let _ = release_channel;
|
||||
|
||||
let allow_latest_version = match release_channel {
|
||||
ReleaseChannel::Dev | ReleaseChannel::Nightly => true,
|
||||
ReleaseChannel::Stable | ReleaseChannel::Preview => false,
|
||||
};
|
||||
|
||||
if allow_latest_version && version >= latest::MIN_VERSION {
|
||||
let (extension, instance) =
|
||||
let extension =
|
||||
latest::Extension::instantiate_async(store, component, latest::linker())
|
||||
.await
|
||||
.context("failed to instantiate wasm extension")?;
|
||||
Ok((Self::V020(extension), instance))
|
||||
Ok(Self::V020(extension))
|
||||
} else if version >= since_v0_1_0::MIN_VERSION {
|
||||
let (extension, instance) = since_v0_1_0::Extension::instantiate_async(
|
||||
let extension = since_v0_1_0::Extension::instantiate_async(
|
||||
store,
|
||||
component,
|
||||
since_v0_1_0::linker(),
|
||||
)
|
||||
.await
|
||||
.context("failed to instantiate wasm extension")?;
|
||||
Ok((Self::V010(extension), instance))
|
||||
Ok(Self::V010(extension))
|
||||
} else if version >= since_v0_0_6::MIN_VERSION {
|
||||
let (extension, instance) = since_v0_0_6::Extension::instantiate_async(
|
||||
let extension = since_v0_0_6::Extension::instantiate_async(
|
||||
store,
|
||||
component,
|
||||
since_v0_0_6::linker(),
|
||||
)
|
||||
.await
|
||||
.context("failed to instantiate wasm extension")?;
|
||||
Ok((Self::V006(extension), instance))
|
||||
Ok(Self::V006(extension))
|
||||
} else if version >= since_v0_0_4::MIN_VERSION {
|
||||
let (extension, instance) = since_v0_0_4::Extension::instantiate_async(
|
||||
let extension = since_v0_0_4::Extension::instantiate_async(
|
||||
store,
|
||||
component,
|
||||
since_v0_0_4::linker(),
|
||||
)
|
||||
.await
|
||||
.context("failed to instantiate wasm extension")?;
|
||||
Ok((Self::V004(extension), instance))
|
||||
Ok(Self::V004(extension))
|
||||
} else {
|
||||
let (extension, instance) = since_v0_0_1::Extension::instantiate_async(
|
||||
let extension = since_v0_0_1::Extension::instantiate_async(
|
||||
store,
|
||||
component,
|
||||
since_v0_0_1::linker(),
|
||||
)
|
||||
.await
|
||||
.context("failed to instantiate wasm extension")?;
|
||||
Ok((Self::V001(extension), instance))
|
||||
Ok(Self::V001(extension))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -30,15 +30,7 @@ pub type ExtensionWorktree = Arc<dyn LspAdapterDelegate>;
|
|||
|
||||
pub fn linker() -> &'static Linker<WasmState> {
|
||||
static LINKER: OnceLock<Linker<WasmState>> = OnceLock::new();
|
||||
LINKER.get_or_init(|| {
|
||||
super::new_linker(|linker, f| {
|
||||
Extension::add_to_linker(linker, f)?;
|
||||
latest::zed::extension::github::add_to_linker(linker, f)?;
|
||||
latest::zed::extension::nodejs::add_to_linker(linker, f)?;
|
||||
latest::zed::extension::platform::add_to_linker(linker, f)?;
|
||||
Ok(())
|
||||
})
|
||||
})
|
||||
LINKER.get_or_init(|| super::new_linker(Extension::add_to_linker))
|
||||
}
|
||||
|
||||
impl From<Command> for latest::Command {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue