[Pull Request] Dev=UI separate si#9
Open
StardustSeemsInk wants to merge 5 commits into
Open
Conversation
… keep the console plugins live.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
将Dashboard的后端逻辑分离为Core项目(和Core.Contract项目),并添加了Workflow相关的功能(包括BlockScript与蓝图,它们的互译与编译运行/debug模式运行,前端编辑器窗口与工作流库管理界面)。
This pull request introduces significant improvements to the plugin loader's command-line parsing, connection handling, and application lifecycle management across both the console and WPF entry points. It adds robust asynchronous APIs, enhanced debugging output, and ensures graceful shutdown of connections. Additionally, all projects are updated to target .NET 10.0 for consistency and future compatibility.
Core improvements to argument parsing and plugin loading:
ArgsParserto support asynchronous parsing withParseAsync, and addedLoadWithoutBlockingAsyncfor non-blocking plugin loading, suitable for GUI hosts like WPF. Both methods improve error handling and connection setup, and provide detailed debug output. [1] [2] [3]Connection management and graceful shutdown:
CommunicationManager.Connectwith detailed state checks, timeout handling, and robust exception logging; ensures that WebSocket connections are established reliably or fail with clear diagnostics.Program.csto catch and log unhandled exceptions and unobserved task exceptions, preventing silent failures.App.xaml.csto use the new non-blocking loader and to gracefully close the WebSocket connection on exit. [1] [2] [3]Project configuration updates:
.NET 10.0(and.NET 10.0-windowsfor WPF/WinForms), ensuring compatibility and access to the latest language/runtime features. [1] [2] [3]