From 9927fe80d4ac3434a0d3fd974ac14b79123417c8 Mon Sep 17 00:00:00 2001 From: philon- Date: Mon, 18 Aug 2025 14:10:41 +0200 Subject: [PATCH] Review fixes --- packages/transport-http/src/transport.ts | 4 +++- packages/transport-web-bluetooth/src/transport.ts | 3 ++- packages/transport-web-serial/src/transport.test.ts | 2 -- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/transport-http/src/transport.ts b/packages/transport-http/src/transport.ts index 16925a17..7aa29c61 100644 --- a/packages/transport-http/src/transport.ts +++ b/packages/transport-http/src/transport.ts @@ -2,6 +2,7 @@ import { Types } from "@meshtastic/core"; const FETCH_INTERVAL_MS = 3000; const READ_TIMEOUT_MS = 7000; +const READ_TIMEOUT_BUFFER_MS = 250; const WRITE_TIMEOUT_MS = 4000; function toArrayBuffer(uint8array: Uint8Array): ArrayBuffer { @@ -134,7 +135,8 @@ export class TransportHTTP implements Types.Transport { if (this.fetching) { if ( this._inflightReadController && - Date.now() - this._inflightReadStartedAt > READ_TIMEOUT_MS + 250 + Date.now() - this._inflightReadStartedAt > + READ_TIMEOUT_MS + READ_TIMEOUT_BUFFER_MS ) { try { this._inflightReadController.abort(); diff --git a/packages/transport-web-bluetooth/src/transport.ts b/packages/transport-web-bluetooth/src/transport.ts index 68aad0d7..c9d02c5c 100644 --- a/packages/transport-web-bluetooth/src/transport.ts +++ b/packages/transport-web-bluetooth/src/transport.ts @@ -223,8 +223,9 @@ export class TransportWebBluetooth implements Types.Transport { data: new Uint8Array(value.buffer), }); } - } catch { + } catch (error) { this.emitStatus(Types.DeviceStatusEnum.DeviceDisconnected, "read-error"); + throw error; } } diff --git a/packages/transport-web-serial/src/transport.test.ts b/packages/transport-web-serial/src/transport.test.ts index 03b15aa8..0a724a15 100644 --- a/packages/transport-web-serial/src/transport.test.ts +++ b/packages/transport-web-serial/src/transport.test.ts @@ -40,8 +40,6 @@ function stubCoreTransforms() { }; } -type SerialDisconnectHandler = (ev: { port?: any }) => void; - function stubNavigatorSerial() { type SerialDisconnectHandler = (ev: { port?: any }) => void; const handlers = new Set();