@matter/node 0.17.8-alpha.0-20260801-92169d0aa → 0.17.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/behavior/system/software-update/OtaProgress.d.ts +13 -0
- package/dist/cjs/behavior/system/software-update/OtaProgress.d.ts.map +1 -0
- package/dist/cjs/behavior/system/software-update/OtaProgress.js +31 -0
- package/dist/cjs/behavior/system/software-update/OtaProgress.js.map +6 -0
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.d.ts +10 -2
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.d.ts.map +1 -1
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.js +51 -13
- package/dist/cjs/behavior/system/software-update/SoftwareUpdateManager.js.map +1 -1
- package/dist/cjs/behavior/system/software-update/index.d.ts +1 -0
- package/dist/cjs/behavior/system/software-update/index.d.ts.map +1 -1
- package/dist/cjs/behavior/system/software-update/index.js +1 -0
- package/dist/cjs/behavior/system/software-update/index.js.map +1 -1
- package/dist/cjs/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.d.ts.map +1 -1
- package/dist/cjs/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js +10 -4
- package/dist/cjs/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js.map +1 -1
- package/dist/esm/behavior/system/software-update/OtaProgress.d.ts +13 -0
- package/dist/esm/behavior/system/software-update/OtaProgress.d.ts.map +1 -0
- package/dist/esm/behavior/system/software-update/OtaProgress.js +11 -0
- package/dist/esm/behavior/system/software-update/OtaProgress.js.map +6 -0
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.d.ts +10 -2
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.d.ts.map +1 -1
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.js +51 -13
- package/dist/esm/behavior/system/software-update/SoftwareUpdateManager.js.map +1 -1
- package/dist/esm/behavior/system/software-update/index.d.ts +1 -0
- package/dist/esm/behavior/system/software-update/index.d.ts.map +1 -1
- package/dist/esm/behavior/system/software-update/index.js +1 -0
- package/dist/esm/behavior/system/software-update/index.js.map +1 -1
- package/dist/esm/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.d.ts.map +1 -1
- package/dist/esm/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js +10 -4
- package/dist/esm/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.js.map +1 -1
- package/package.json +6 -6
- package/src/behavior/system/software-update/OtaProgress.ts +15 -0
- package/src/behavior/system/software-update/SoftwareUpdateManager.ts +68 -14
- package/src/behavior/system/software-update/index.ts +1 -0
- package/src/behaviors/ota-software-update-provider/OtaSoftwareUpdateProviderServer.ts +14 -6
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import { OTA_PROGRESS_TIMEOUT } from "#behavior/system/software-update/OtaProgress.js";
|
|
7
8
|
import {
|
|
8
9
|
OtaUpdateAvailableDetails,
|
|
9
10
|
OtaUpdateStatus,
|
|
@@ -302,11 +303,11 @@ export class OtaSoftwareUpdateProviderServer extends OtaSoftwareUpdateProviderBe
|
|
|
302
303
|
return;
|
|
303
304
|
}
|
|
304
305
|
|
|
305
|
-
//
|
|
306
|
-
|
|
307
|
-
|
|
306
|
+
// A failed download is retried on a fresh session, so stay registered for the whole cycle. The
|
|
307
|
+
// entry is removed on a terminal state, and its cleanup unregisters this listener.
|
|
308
308
|
// Verify the entry still exists (might have been canceled/timed-out-since queryImage)
|
|
309
|
-
|
|
309
|
+
const transferDetails = this.#inProgressDetailsForPeer(peerAddress, updateToken);
|
|
310
|
+
if (transferDetails === undefined) {
|
|
310
311
|
return;
|
|
311
312
|
}
|
|
312
313
|
|
|
@@ -316,6 +317,10 @@ export class OtaSoftwareUpdateProviderServer extends OtaSoftwareUpdateProviderBe
|
|
|
316
317
|
OtaUpdateStatus.Downloading,
|
|
317
318
|
newSoftwareVersion,
|
|
318
319
|
);
|
|
320
|
+
// A transfer in flight keeps its entry alive; the state does not change again until it ends
|
|
321
|
+
bdxSession.progressInfo.on(() => {
|
|
322
|
+
transferDetails.timestamp = Time.nowMs;
|
|
323
|
+
});
|
|
319
324
|
bdxSession.progressFinished.on(() =>
|
|
320
325
|
this.#updateInProgressDetails(
|
|
321
326
|
peerAddress,
|
|
@@ -356,7 +361,10 @@ export class OtaSoftwareUpdateProviderServer extends OtaSoftwareUpdateProviderBe
|
|
|
356
361
|
const details = this.internal.inProgressDetails.get(
|
|
357
362
|
`${peerAddress.nodeId}-${peerAddress.fabricIndex}-${Bytes.toHex(updateToken)}`,
|
|
358
363
|
);
|
|
359
|
-
if (details
|
|
364
|
+
if (details === undefined) {
|
|
365
|
+
// Nothing will ever run the cleanup, so do not leave the listener behind
|
|
366
|
+
bdxProtocol.sessionStarted.off(sessionListener);
|
|
367
|
+
} else {
|
|
360
368
|
details.cleanup = () => bdxProtocol.sessionStarted.off(sessionListener);
|
|
361
369
|
}
|
|
362
370
|
|
|
@@ -505,7 +513,7 @@ export class OtaSoftwareUpdateProviderServer extends OtaSoftwareUpdateProviderBe
|
|
|
505
513
|
}
|
|
506
514
|
|
|
507
515
|
#removeIfStale(key: string, details: OtaUpdateInProgressDetails, peerAddress: PeerAddress, now: Timestamp) {
|
|
508
|
-
if (details.timestamp +
|
|
516
|
+
if (details.timestamp + OTA_PROGRESS_TIMEOUT >= now) {
|
|
509
517
|
return false;
|
|
510
518
|
}
|
|
511
519
|
logger.info(
|