Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Lazy load projects #198

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

purkhusid
Copy link

@purkhusid purkhusid commented Nov 3, 2023

WHAT

🤖 Generated by Copilot at 9b54ec1

Added support for accessing and sorting compile items in fsproj files. Modified WorkspacePeek.fs to use a new type for fsproj data and added a function to Library.fs to get the full paths of compile items.

🤖 Generated by Copilot at 9b54ec1

Sing, O Muse, of the valiant F# coders, who dared to explore the fsproj files
And craft a new type to store their data, with skill and cunning like Hephaestus
They used the Microsoft.Build.Evaluation assembly, a mighty tool of Zeus
To get the full paths of compile items, and sort them by their order and use

📝🛠️🚀

WHY

This is WIP of trying to lazy load projects. See: ionide/ionide-vscode-fsharp#1957

HOW

🤖 Generated by Copilot at 9b54ec1

  • Add FsprojData type to store fsproj path and compile items (link)
  • Modify getInfo function to use getFsprojCompileItemPaths to get compile items for fsproj files (link)
  • Modify peek function to sort and map fsproj files to FsprojData records and wrap them in Interesting.Directory case (link, link)
  • Add getFsprojCompileItemPaths function to ProjectLoader module in Library.fs to load and evaluate fsproj files using System.Xml namespace and getCompileItems function (link, link)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant