[PR #156] [MERGED] Websockets for plugin runtime communication #92

Closed
opened 2025-12-29 07:19:18 +01:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/mountain-loop/yaak/pull/156
Author: @gschier
Created: 1/20/2025
Status: Merged
Merged: 1/20/2025
Merged by: @gschier

Base: masterHead: deno-plugin-runtime


📝 Commits (10+)

📊 Changes

54 files changed (+840 additions, -1184 deletions)

View changed files

📝 .prettierrc.cjs (+7 -7)
📝 package-lock.json (+70 -444)
📝 packages/plugin-runtime-types/package.json (+1 -1)
📝 packages/plugin-runtime-types/src/bindings/events.ts (+12 -10)
📝 packages/plugin-runtime-types/src/plugins/AuthenticationPlugin.ts (+2 -2)
📝 packages/plugin-runtime-types/src/plugins/Context.ts (+21 -11)
📝 packages/plugin-runtime-types/src/plugins/FilterPlugin.ts (+3 -4)
📝 packages/plugin-runtime-types/src/plugins/HttpRequestActionPlugin.ts (+1 -1)
📝 packages/plugin-runtime-types/src/plugins/ImporterPlugin.ts (+26 -9)
📝 packages/plugin-runtime-types/src/plugins/TemplateFunctionPlugin.ts (+9 -3)
📝 packages/plugin-runtime-types/src/plugins/ThemePlugin.ts (+3 -3)
📝 packages/plugin-runtime-types/src/themes/index.ts (+1 -1)
packages/plugin-runtime/.gitignore (+0 -3)
packages/plugin-runtime/package-lock.json (+10 -0)
📝 packages/plugin-runtime/package.json (+4 -8)
📝 packages/plugin-runtime/src/EventChannel.ts (+5 -12)
📝 packages/plugin-runtime/src/PluginHandle.ts (+1 -1)
packages/plugin-runtime/src/gen/plugins/runtime.ts (+0 -126)
📝 packages/plugin-runtime/src/index.ts (+42 -42)
📝 packages/plugin-runtime/src/index.worker.ts (+111 -102)

...and 34 more files

📄 Description

This PR was initially supposed to be porting the plugin runtime to Deno. However, it seems Deno's NodeJS compatibility is still not 100%, resulting in weird compat issues, event with Yaak's limited set of default plugins.

Instead, this PR takes the good part from that experiment: Switch the legacy gRPC communication layer to use WebSockets.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/mountain-loop/yaak/pull/156 **Author:** [@gschier](https://github.com/gschier) **Created:** 1/20/2025 **Status:** ✅ Merged **Merged:** 1/20/2025 **Merged by:** [@gschier](https://github.com/gschier) **Base:** `master` ← **Head:** `deno-plugin-runtime` --- ### 📝 Commits (10+) - [`496ce91`](https://github.com/mountain-loop/yaak/commit/496ce91b1ecb070f993b1af3b86ff260f55516bd) Started porting plugin runtime to Deno/websocket - [`487b94f`](https://github.com/mountain-loop/yaak/commit/487b94f39fee99932cc2904540171db6baf658ef) Some tweaks - [`6834f0a`](https://github.com/mountain-loop/yaak/commit/6834f0a56ffafc2df2d5dad859d5d9e87358f7db) Remove logs and refine - [`7f4ad43`](https://github.com/mountain-loop/yaak/commit/7f4ad43a209f45c07b876bfeef934049969ce910) Deno plugins working - [`65299c7`](https://github.com/mountain-loop/yaak/commit/65299c7a1eab4a6181e33741d64006cff32eea20) Switch back to NodeJS plugin runtime - [`b6720b0`](https://github.com/mountain-loop/yaak/commit/b6720b0b54789c5933f6a6ae239c622cfb34c1ca) Merge branch 'master' into deno-plugin-runtime - [`5f9bc02`](https://github.com/mountain-loop/yaak/commit/5f9bc02f9704b5c2e059ad65e28d6bcc42e06838) Merge master - [`8ad0733`](https://github.com/mountain-loop/yaak/commit/8ad07333f034e80052301f71df0dedb0538e8303) Catch plugin decode events - [`c0852a8`](https://github.com/mountain-loop/yaak/commit/c0852a8f7d756910fdae5cead09215cf9847eba0) Toast break all chars - [`cbade68`](https://github.com/mountain-loop/yaak/commit/cbade68ad2dc9fe905ba949483f7911f95d5f381) Re-gen ### 📊 Changes **54 files changed** (+840 additions, -1184 deletions) <details> <summary>View changed files</summary> 📝 `.prettierrc.cjs` (+7 -7) 📝 `package-lock.json` (+70 -444) 📝 `packages/plugin-runtime-types/package.json` (+1 -1) 📝 `packages/plugin-runtime-types/src/bindings/events.ts` (+12 -10) 📝 `packages/plugin-runtime-types/src/plugins/AuthenticationPlugin.ts` (+2 -2) 📝 `packages/plugin-runtime-types/src/plugins/Context.ts` (+21 -11) 📝 `packages/plugin-runtime-types/src/plugins/FilterPlugin.ts` (+3 -4) 📝 `packages/plugin-runtime-types/src/plugins/HttpRequestActionPlugin.ts` (+1 -1) 📝 `packages/plugin-runtime-types/src/plugins/ImporterPlugin.ts` (+26 -9) 📝 `packages/plugin-runtime-types/src/plugins/TemplateFunctionPlugin.ts` (+9 -3) 📝 `packages/plugin-runtime-types/src/plugins/ThemePlugin.ts` (+3 -3) 📝 `packages/plugin-runtime-types/src/themes/index.ts` (+1 -1) ➖ `packages/plugin-runtime/.gitignore` (+0 -3) ➕ `packages/plugin-runtime/package-lock.json` (+10 -0) 📝 `packages/plugin-runtime/package.json` (+4 -8) 📝 `packages/plugin-runtime/src/EventChannel.ts` (+5 -12) 📝 `packages/plugin-runtime/src/PluginHandle.ts` (+1 -1) ➖ `packages/plugin-runtime/src/gen/plugins/runtime.ts` (+0 -126) 📝 `packages/plugin-runtime/src/index.ts` (+42 -42) 📝 `packages/plugin-runtime/src/index.worker.ts` (+111 -102) _...and 34 more files_ </details> ### 📄 Description This PR was initially supposed to be porting the plugin runtime to Deno. However, it seems Deno's NodeJS compatibility is still not 100%, resulting in weird compat issues, event with Yaak's limited set of default plugins. Instead, this PR takes the good part from that experiment: Switch the legacy gRPC communication layer to use WebSockets. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2025-12-29 07:19:18 +01:00
adam closed this issue 2025-12-29 07:19:18 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/yaak#92