From ff9d5441ae75c27e1ee6f80ff461be11fd5760d5 Mon Sep 17 00:00:00 2001 From: Roman Perehonchuk Date: Fri, 5 Apr 2024 05:37:42 -0700 Subject: [PATCH] don't serialize none Summary: it turns out serde serialise `None` as `"field": null` Glean server fails to parse it, but works ok if there is no field Reviewed By: alanz Differential Revision: D55321543 fbshipit-source-id: be32270000b74f213dbf8e4c46605c094a8e7ac1 --- crates/elp/src/bin/glean.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/elp/src/bin/glean.rs b/crates/elp/src/bin/glean.rs index 973b8bc21f..c60bef5fb7 100644 --- a/crates/elp/src/bin/glean.rs +++ b/crates/elp/src/bin/glean.rs @@ -261,8 +261,11 @@ pub(crate) struct MacroTarget { #[serde(rename = "file")] file_id: GleanFileId, name: String, + #[serde(skip_serializing_if = "Option::is_none")] arity: Option, + #[serde(skip_serializing_if = "Option::is_none")] expansion: Option, + #[serde(skip_serializing_if = "Option::is_none")] ods_url: Option, } @@ -324,6 +327,7 @@ pub(crate) struct FuncDecl { name: String, arity: u32, span: Location, + #[serde(skip_serializing_if = "Option::is_none")] doc: Option, exported: bool, deprecated: bool, @@ -332,6 +336,7 @@ pub(crate) struct FuncDecl { #[derive(Serialize, Debug)] pub(crate) struct MacroDecl { name: String, + #[serde(skip_serializing_if = "Option::is_none")] arity: Option, span: Location, }