Introduced a new job in the GitHub Actions workflow for the Plugin SDK, which includes steps for checking out the repository, setting up Rust with necessary components, installing Linux dependencies, checking formatting, building SDK guests, and verifying the packaged SDK. Updated the Rust gate job dependencies to include the new plugin-sdk job.
Additionally, refactored the NyaTermApp to improve the handling of floating panel close actions based on the current panel state, ensuring better user experience. Enhanced plugin management by implementing shutdown procedures and revising invocation checks to include expected revisions, improving stability and error handling during plugin operations.
Added comprehensive tests for the plugin service to validate the new functionality and ensure robust performance across various scenarios.
Added a new plugins feature, including an SVG icon for the plugins panel and updated the activity bar layout to include the plugins entry. Enhanced the settings model to default to including plugins in the left bottom activity bar. Updated the application state management to support the new plugins feature, ensuring proper focus handling and panel management. Removed deprecated plugin manager methods and adjusted tests to validate the new layout and functionality.
Add a new plugin architecture allowing for dynamic plugin management and execution. This includes the implementation of plugin manifests, action validation, and parameter handling. Introduced new modules for plugin invocation, manifest parsing, and preferences management. Updated the core library to support plugin integration and added tests for plugin functionality. Localization updates for plugin management UI in multiple languages were also included.