[PR #159] [MERGED] Websocket Support #95

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

📋 Pull Request Information

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

Base: masterHead: websockets


📝 Commits (10+)

  • 8ca3768 WebSocket connection working with TLS
  • a8ef2db Most of the foundational work done
  • 6789dbc Got connect/cancel working
  • 9662598 Mostly working now. Just missing the details
  • 8a1e665 Server vs client messages, and deletion
  • f6329f3 Show status code and fix http requests TLS
  • 52d6e40 Add WS requests to import/export/sync
  • 10c4da2 Hex dumps and better formatting
  • 69709b7 Render the request message
  • 258a5f2 Add elapsed to websocket responses

📊 Changes

122 files changed (+5090 additions, -616 deletions)

View changed files

📝 package-lock.json (+670 -72)
📝 package.json (+2 -1)
📝 src-tauri/Cargo.lock (+201 -56)
📝 src-tauri/Cargo.toml (+22 -18)
📝 src-tauri/bindings/analytics.ts (+1 -1)
📝 src-tauri/capabilities/capabilities.json (+2 -1)
📝 src-tauri/gen/schemas/acl-manifests.json (+1 -1)
📝 src-tauri/gen/schemas/capabilities.json (+1 -1)
📝 src-tauri/gen/schemas/desktop-schema.json (+145 -0)
📝 src-tauri/gen/schemas/macOS-schema.json (+145 -0)
src-tauri/migrations/20250128155623_websockets.sql (+66 -0)
📝 src-tauri/src/analytics.rs (+3 -0)
📝 src-tauri/src/http_request.rs (+13 -8)
📝 src-tauri/src/lib.rs (+20 -25)
📝 src-tauri/src/plugin_events.rs (+1 -1)
📝 src-tauri/src/render.rs (+6 -140)
📝 src-tauri/src/tauri_plugin_mac_window.rs (+3 -2)
📝 src-tauri/yaak-grpc/Cargo.toml (+4 -2)
📝 src-tauri/yaak-grpc/src/transport.rs (+21 -8)
📝 src-tauri/yaak-license/Cargo.toml (+1 -1)

...and 80 more files

📄 Description

This PR adds initial support for making WebSocket requests in Yaak.

  • Data models (mostly copied from gRPC)
  • Create WebSocket client with proper TLS support
  • Define all CRUD model operations
  • Frontend WebSocket setup pane
  • Frontend WebSocket response pane
  • Connection cancellation
  • Error handling
  • Analytics
  • Support data import/export
  • Support file system sync
  • Settle on WebsocketRequest schema for message types
  • Support binary/json/etc client messages

🔄 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/159 **Author:** [@gschier](https://github.com/gschier) **Created:** 1/29/2025 **Status:** ✅ Merged **Merged:** 1/31/2025 **Merged by:** [@gschier](https://github.com/gschier) **Base:** `master` ← **Head:** `websockets` --- ### 📝 Commits (10+) - [`8ca3768`](https://github.com/mountain-loop/yaak/commit/8ca3768978312fd2dfed1db0dc90c9daf21d6893) WebSocket connection working with TLS - [`a8ef2db`](https://github.com/mountain-loop/yaak/commit/a8ef2db465a3ab9455b338aaaa60f550a934503f) Most of the foundational work done - [`6789dbc`](https://github.com/mountain-loop/yaak/commit/6789dbca072aab1da0ba079a201e31dc1e4e1079) Got connect/cancel working - [`9662598`](https://github.com/mountain-loop/yaak/commit/96625981a384e3ad1a100874a8dce2565140b816) Mostly working now. Just missing the details - [`8a1e665`](https://github.com/mountain-loop/yaak/commit/8a1e665239933982d31953618333b8d640271155) Server vs client messages, and deletion - [`f6329f3`](https://github.com/mountain-loop/yaak/commit/f6329f3fb14dc9e6283460bf5a1ace9f6670b713) Show status code and fix http requests TLS - [`52d6e40`](https://github.com/mountain-loop/yaak/commit/52d6e400cc37033cf83a3a13711d6056f19d7fb0) Add WS requests to import/export/sync - [`10c4da2`](https://github.com/mountain-loop/yaak/commit/10c4da28ece5e8b820e6f90c4dc6edc70936ae31) Hex dumps and better formatting - [`69709b7`](https://github.com/mountain-loop/yaak/commit/69709b75b0d1cff5aa5aa65c27fb2b91a43badce) Render the request message - [`258a5f2`](https://github.com/mountain-loop/yaak/commit/258a5f24b988473a6218781904ff4d785b05aff8) Add elapsed to websocket responses ### 📊 Changes **122 files changed** (+5090 additions, -616 deletions) <details> <summary>View changed files</summary> 📝 `package-lock.json` (+670 -72) 📝 `package.json` (+2 -1) 📝 `src-tauri/Cargo.lock` (+201 -56) 📝 `src-tauri/Cargo.toml` (+22 -18) 📝 `src-tauri/bindings/analytics.ts` (+1 -1) 📝 `src-tauri/capabilities/capabilities.json` (+2 -1) 📝 `src-tauri/gen/schemas/acl-manifests.json` (+1 -1) 📝 `src-tauri/gen/schemas/capabilities.json` (+1 -1) 📝 `src-tauri/gen/schemas/desktop-schema.json` (+145 -0) 📝 `src-tauri/gen/schemas/macOS-schema.json` (+145 -0) ➕ `src-tauri/migrations/20250128155623_websockets.sql` (+66 -0) 📝 `src-tauri/src/analytics.rs` (+3 -0) 📝 `src-tauri/src/http_request.rs` (+13 -8) 📝 `src-tauri/src/lib.rs` (+20 -25) 📝 `src-tauri/src/plugin_events.rs` (+1 -1) 📝 `src-tauri/src/render.rs` (+6 -140) 📝 `src-tauri/src/tauri_plugin_mac_window.rs` (+3 -2) 📝 `src-tauri/yaak-grpc/Cargo.toml` (+4 -2) 📝 `src-tauri/yaak-grpc/src/transport.rs` (+21 -8) 📝 `src-tauri/yaak-license/Cargo.toml` (+1 -1) _...and 80 more files_ </details> ### 📄 Description This PR adds initial support for making WebSocket requests in Yaak. - [x] Data models (mostly copied from gRPC) - [x] Create WebSocket client with proper TLS support - [x] Define all CRUD model operations - [x] Frontend WebSocket setup pane - [x] Frontend WebSocket response pane - [x] Connection cancellation - [x] Error handling - [x] Analytics - [x] Support data import/export - [x] Support file system sync - [x] Settle on `WebsocketRequest` schema for message types - [x] Support binary/json/etc client messages --- <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:19 +01:00
adam closed this issue 2025-12-29 07:19:19 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/yaak#95