diff --git a/crates/agent_ui/src/agent_ui.rs b/crates/agent_ui/src/agent_ui.rs index 29a4f38487b34e134218b72e824b1d3aba439cb9..0ba3d07f99622c6bf1f0263d7181b8da80659b53 100644 --- a/crates/agent_ui/src/agent_ui.rs +++ b/crates/agent_ui/src/agent_ui.rs @@ -92,6 +92,7 @@ actions!( #[derive(Default, Clone, PartialEq, Deserialize, JsonSchema, Action)] #[action(namespace = agent)] +#[serde(deny_unknown_fields)] pub struct NewThread { #[serde(default)] from_thread_id: Option, @@ -99,6 +100,7 @@ pub struct NewThread { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = agent)] +#[serde(deny_unknown_fields)] pub struct ManageProfiles { #[serde(default)] pub customize_tools: Option, diff --git a/crates/git/src/git.rs b/crates/git/src/git.rs index bb8f39f127f7bb3edae553844daf1635fb6b312d..d64d35b789415b2dda821693ee7e9d19193a5de4 100644 --- a/crates/git/src/git.rs +++ b/crates/git/src/git.rs @@ -65,6 +65,7 @@ actions!( #[derive(Clone, Debug, Default, PartialEq, Deserialize, JsonSchema, Action)] #[action(namespace = git, deprecated_aliases = ["editor::RevertFile"])] +#[serde(deny_unknown_fields)] pub struct RestoreFile { #[serde(default)] pub skip_prompt: bool, diff --git a/crates/gpui/tests/action_macros.rs b/crates/gpui/tests/action_macros.rs index f601639fc8dbc05afaeed997a0c0b17c5dfa5ea7..7bff3a97b1c3d22e6c0e9841a26f2adf5d7f3a70 100644 --- a/crates/gpui/tests/action_macros.rs +++ b/crates/gpui/tests/action_macros.rs @@ -16,9 +16,11 @@ fn test_action_macros() { #[derive(PartialEq, Clone, Deserialize, JsonSchema, Action)] #[action(namespace = test_only)] - struct AnotherSomeAction; + #[serde(deny_unknown_fields)] + struct AnotherAction; #[derive(PartialEq, Clone, gpui::private::serde_derive::Deserialize)] + #[serde(deny_unknown_fields)] struct RegisterableAction {} register_action!(RegisterableAction); diff --git a/crates/settings_ui/src/settings_ui.rs b/crates/settings_ui/src/settings_ui.rs index b3fb10c5e6848c80c55117dadc750db7b70a58ea..28ffb1ab4a3ce6b300c16df545daeacba66887a0 100644 --- a/crates/settings_ui/src/settings_ui.rs +++ b/crates/settings_ui/src/settings_ui.rs @@ -31,6 +31,7 @@ impl FeatureFlag for SettingsUiFeatureFlag { #[derive(Copy, Clone, Debug, Default, PartialEq, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct ImportVsCodeSettings { #[serde(default)] pub skip_prompt: bool, @@ -38,6 +39,7 @@ pub struct ImportVsCodeSettings { #[derive(Copy, Clone, Debug, Default, PartialEq, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct ImportCursorSettings { #[serde(default)] pub skip_prompt: bool, diff --git a/crates/workspace/src/workspace.rs b/crates/workspace/src/workspace.rs index 38532292435fdfa5948835cdf0d332c70bec3aa8..7c5355bfd1be10609ff8bcab9e7cd9cd3e7f7bc6 100644 --- a/crates/workspace/src/workspace.rs +++ b/crates/workspace/src/workspace.rs @@ -288,6 +288,7 @@ actions!( #[derive(Default, PartialEq, Eq, Clone, Deserialize, JsonSchema, Action)] #[action(namespace = file_finder, name = "Toggle")] +#[serde(deny_unknown_fields)] pub struct ToggleFileFinder { #[serde(default)] pub separate_history: bool, diff --git a/crates/zed_actions/src/lib.rs b/crates/zed_actions/src/lib.rs index b8c52e27e83ffbdc152e94ea514f30b4c5df8223..fa852084d60b1e4eff913b6560a86bd0bf701cbd 100644 --- a/crates/zed_actions/src/lib.rs +++ b/crates/zed_actions/src/lib.rs @@ -58,6 +58,7 @@ pub enum ExtensionCategoryFilter { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct Extensions { /// Filters the extensions page down to extensions that are in the specified category. #[serde(default)] @@ -66,6 +67,7 @@ pub struct Extensions { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct DecreaseBufferFontSize { #[serde(default)] pub persist: bool, @@ -73,6 +75,7 @@ pub struct DecreaseBufferFontSize { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct IncreaseBufferFontSize { #[serde(default)] pub persist: bool, @@ -80,6 +83,7 @@ pub struct IncreaseBufferFontSize { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct ResetBufferFontSize { #[serde(default)] pub persist: bool, @@ -87,6 +91,7 @@ pub struct ResetBufferFontSize { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct DecreaseUiFontSize { #[serde(default)] pub persist: bool, @@ -94,6 +99,7 @@ pub struct DecreaseUiFontSize { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct IncreaseUiFontSize { #[serde(default)] pub persist: bool, @@ -101,6 +107,7 @@ pub struct IncreaseUiFontSize { #[derive(PartialEq, Clone, Default, Debug, Deserialize, JsonSchema, Action)] #[action(namespace = zed)] +#[serde(deny_unknown_fields)] pub struct ResetUiFontSize { #[serde(default)] pub persist: bool,