opensumi / core

🚀 A framework helps you quickly build AI Native IDE products.
https://opensumi.com
MIT License
3.01k stars 386 forks source link

[BUG] ActivateExtension 消息漏发 #2559

Open ShiinaOrez opened 1 year ago

ShiinaOrez commented 1 year ago

描述你的问题(Describe the bug) 在两个 Opensumi 的连接中,一个发送了完整的(5条)ActivateExtension 消息去启动进程,而出现问题的连接只发送了一条(vscode.typescript)ActivateExtension 消息,导致 Merge-conflict 插件等失效。

image image 复现路径(To Reproduce) 在测试环境下出现问题的容器会稳定复现问题。希望能够知道触发 Activate Extension 的规则,或者一些有用的辅助查询信息。

预期表现(Expected behavior) 发送所有需要 Activate 的 Extension 的消息。

Ricbet commented 1 year ago

我理解你说的 "两个 Opensumi 的连接" 应该是打开两个窗口吧? 目前我们每有一个 client 就会有对应一个 extensions host 去激活插件启动的流程,理论上不会出现你说的这个问题。

你可以从这里 extension.service.ts#L190 开始看看插件的启动激活流程,检查下插件的元数据信息。

然后对于插件配置的 activationEvents 激活事件是通过 activation.service.ts#L18 服务去分发事件的