From ff6bf6927df5ccc6827c760ba6548f7cee868295 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Mar 2026 14:09:31 +0000 Subject: [PATCH 1/2] fix: filter compiler-generated types from Info Panel declared types list Compiler-generated .NET types such as async state machines (d__0), display classes (<>c__DisplayClass), and F# closure types (MatchClosure@123) were appearing in the Info Panel's 'Declared Types' section when navigating types from assemblies that use async/iterator methods or LINQ. These types are identifiable by their names: compiler-generated names either start with '<' (C#/.NET convention) or contain '@' (F# compiler convention). User-defined generic types like MyType<'T> are not affected because their names do not start with '<'. Closes #1696 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- src/Components/InfoPanel.fs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Components/InfoPanel.fs b/src/Components/InfoPanel.fs index 13daaf33..2f91e809 100644 --- a/src/Components/InfoPanel.fs +++ b/src/Components/InfoPanel.fs @@ -129,6 +129,10 @@ module InfoPanel = let types = res.DeclaredTypes |> List.filter (not << String.IsNullOrWhiteSpace) + // Compiler-generated names start with '<' (e.g. <>c__DisplayClass, d__0) + // or contain '@' (F# closure types like MatchClosure@123). + // These are never useful to show in the Info Panel. + |> List.filter (fun t -> not (t.StartsWith("<") || t.Contains("@"))) |> List.distinct |> fsharpBlock From 39e7ff5dad04a43143ccfd4981e6cc8e6a4bd1c3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Mar 2026 14:18:12 +0000 Subject: [PATCH 2/2] ci: trigger checks