@homebridge-plugins/homebridge-updater 3.1.2 → 3.1.3
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/Platform.HAP.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export declare class PluginUpdatePlatform implements DynamicPlatformPlugin {
|
|
|
12
12
|
private cachedFailureAccessory?;
|
|
13
13
|
/** Cached accessory with the legacy v2.x UUID — resolved in handleLegacyMigration */
|
|
14
14
|
private cachedLegacyUpdateAccessory?;
|
|
15
|
+
/** Cached accessory with the current UUID — tracked so it can be replaced by the legacy one in Scenario B */
|
|
16
|
+
private cachedCurrentUpdateAccessory?;
|
|
15
17
|
/** True when a v3 update-sensor accessory was found in the cache (current UUID) */
|
|
16
18
|
private updateSensorCached;
|
|
17
19
|
constructor(log: Logging, config: PlatformConfig, api: API);
|
|
@@ -22,8 +24,11 @@ export declare class PluginUpdatePlatform implements DynamicPlatformPlugin {
|
|
|
22
24
|
* 1. Only the legacy UUID is in the cache (fresh v2→v3 migration): configure the
|
|
23
25
|
* update sensor on the legacy accessory so that {@link UpdateSensor.addUpdateSensor}
|
|
24
26
|
* sees `registered = true` and does NOT create a duplicate.
|
|
25
|
-
* 2. Both legacy and current UUIDs are in the cache (user already ran
|
|
26
|
-
*
|
|
27
|
+
* 2. Both legacy and current UUIDs are in the cache (user already ran a newer version
|
|
28
|
+
* once before this migration existed, creating a duplicate): remove the newer
|
|
29
|
+
* empty accessory and promote the legacy one so that the user's HomeKit
|
|
30
|
+
* customisations (room, name, automations) that are tied to the legacy UUID are
|
|
31
|
+
* preserved.
|
|
27
32
|
*/
|
|
28
33
|
private handleLegacyMigration;
|
|
29
34
|
private addFailureSensor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Platform.HAP.d.ts","sourceRoot":"","sources":["../src/Platform.HAP.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAqB,cAAc,EAAE,MAAM,YAAY,CAAA;AAOxG,qBAAa,oBAAqB,YAAW,qBAAqB;IAChE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,uBAAuB,CAAQ;IACvC,OAAO,CAAC,sBAAsB,CAAC,CAAmB;IAClD,qFAAqF;IACrF,OAAO,CAAC,2BAA2B,CAAC,CAAmB;IACvD,mFAAmF;IACnF,OAAO,CAAC,kBAAkB,CAAQ;gBAEtB,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG;IAkB1D
|
|
1
|
+
{"version":3,"file":"Platform.HAP.d.ts","sourceRoot":"","sources":["../src/Platform.HAP.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAqB,cAAc,EAAE,MAAM,YAAY,CAAA;AAOxG,qBAAa,oBAAqB,YAAW,qBAAqB;IAChE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IAC1C,OAAO,CAAC,uBAAuB,CAAQ;IACvC,OAAO,CAAC,sBAAsB,CAAC,CAAmB;IAClD,qFAAqF;IACrF,OAAO,CAAC,2BAA2B,CAAC,CAAmB;IACvD,6GAA6G;IAC7G,OAAO,CAAC,4BAA4B,CAAC,CAAmB;IACxD,mFAAmF;IACnF,OAAO,CAAC,kBAAkB,CAAQ;gBAEtB,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG;IAkB1D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,gBAAgB;IAuBxB,kBAAkB,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;CAmCzC"}
|
package/dist/Platform.HAP.js
CHANGED
|
@@ -15,6 +15,8 @@ export class PluginUpdatePlatform {
|
|
|
15
15
|
cachedFailureAccessory;
|
|
16
16
|
/** Cached accessory with the legacy v2.x UUID — resolved in handleLegacyMigration */
|
|
17
17
|
cachedLegacyUpdateAccessory;
|
|
18
|
+
/** Cached accessory with the current UUID — tracked so it can be replaced by the legacy one in Scenario B */
|
|
19
|
+
cachedCurrentUpdateAccessory;
|
|
18
20
|
/** True when a v3 update-sensor accessory was found in the cache (current UUID) */
|
|
19
21
|
updateSensorCached = false;
|
|
20
22
|
constructor(log, config, api) {
|
|
@@ -41,18 +43,27 @@ export class PluginUpdatePlatform {
|
|
|
41
43
|
* 1. Only the legacy UUID is in the cache (fresh v2→v3 migration): configure the
|
|
42
44
|
* update sensor on the legacy accessory so that {@link UpdateSensor.addUpdateSensor}
|
|
43
45
|
* sees `registered = true` and does NOT create a duplicate.
|
|
44
|
-
* 2. Both legacy and current UUIDs are in the cache (user already ran
|
|
45
|
-
*
|
|
46
|
+
* 2. Both legacy and current UUIDs are in the cache (user already ran a newer version
|
|
47
|
+
* once before this migration existed, creating a duplicate): remove the newer
|
|
48
|
+
* empty accessory and promote the legacy one so that the user's HomeKit
|
|
49
|
+
* customisations (room, name, automations) that are tied to the legacy UUID are
|
|
50
|
+
* preserved.
|
|
46
51
|
*/
|
|
47
52
|
handleLegacyMigration() {
|
|
48
53
|
if (!this.cachedLegacyUpdateAccessory) {
|
|
49
54
|
return;
|
|
50
55
|
}
|
|
51
56
|
if (this.updateSensorCached) {
|
|
52
|
-
//
|
|
53
|
-
|
|
57
|
+
// Both UUIDs found — the current-UUID accessory was created empty when the legacy
|
|
58
|
+
// one was first ignored. Prefer the legacy accessory so that any HomeKit
|
|
59
|
+
// customisations the user applied to it are retained.
|
|
60
|
+
if (this.cachedCurrentUpdateAccessory) {
|
|
61
|
+
this.api.unregisterPlatformAccessories(PLUGIN_NAME, PLATFORM_NAME, [this.cachedCurrentUpdateAccessory]);
|
|
62
|
+
this.cachedCurrentUpdateAccessory = undefined;
|
|
63
|
+
}
|
|
64
|
+
this.updateSensor.configureAccessory(this.cachedLegacyUpdateAccessory);
|
|
54
65
|
this.cachedLegacyUpdateAccessory = undefined;
|
|
55
|
-
this.log.info('
|
|
66
|
+
this.log.info('Migrated update sensor to legacy cached accessory (preserved HomeKit customisations)');
|
|
56
67
|
return;
|
|
57
68
|
}
|
|
58
69
|
// Only the legacy accessory exists — use it for the update sensor so no duplicate is created
|
|
@@ -92,6 +103,7 @@ export class PluginUpdatePlatform {
|
|
|
92
103
|
if (accessory.UUID === this.updateSensorUuid) {
|
|
93
104
|
this.updateSensor.configureAccessory(accessory);
|
|
94
105
|
this.updateSensorCached = true;
|
|
106
|
+
this.cachedCurrentUpdateAccessory = accessory;
|
|
95
107
|
return;
|
|
96
108
|
}
|
|
97
109
|
// Restore for failure sensor
|
package/dist/Platform.HAP.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Platform.HAP.js","sourceRoot":"","sources":["../src/Platform.HAP.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,aAAa,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAC1I,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAEnD,MAAM,OAAO,oBAAoB;IACd,GAAG,CAAS;IACZ,MAAM,CAAgB;IACtB,GAAG,CAAK;IACjB,YAAY,CAAc;IAC1B,aAAa,CAAe;IACnB,gBAAgB,CAAQ;IACxB,sBAAsB,CAAQ;IAC9B,iBAAiB,CAAQ;IAClC,uBAAuB,GAAG,KAAK,CAAA;IAC/B,sBAAsB,CAAoB;IAClD,qFAAqF;IAC7E,2BAA2B,CAAoB;IACvD,mFAAmF;IAC3E,kBAAkB,GAAG,KAAK,CAAA;IAElC,YAAY,GAAY,EAAE,MAAsB,EAAE,GAAQ;QACxD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA;QACrE,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAA;QAClF,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAA;QACvE,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QACtG,uFAAuF;QACvF,GAAG,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACnE,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACrD,QAAQ,EAAE,KAAK;YACf,oBAAoB,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;SACnH,CAAC,CAAA;QACF,wCAAwC;QACxC,GAAG,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChE,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"Platform.HAP.js","sourceRoot":"","sources":["../src/Platform.HAP.ts"],"names":[],"mappings":"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"}
|
|
@@ -71,12 +71,14 @@ describe('PluginUpdatePlatform legacy UUID migration', () => {
|
|
|
71
71
|
const updateSensorUuid = mockApi.hap.uuid.generate(UPDATE_SENSOR_UUID_KEY);
|
|
72
72
|
const legacyUpdateSensorUuid = mockApi.hap.uuid.generate(LEGACY_UPDATE_SENSOR_UUID_KEY);
|
|
73
73
|
let cachedLegacyUpdateAccessory = undefined;
|
|
74
|
+
let cachedCurrentUpdateAccessory = undefined;
|
|
74
75
|
let updateSensorCached = false;
|
|
75
76
|
// Simulate configureAccessory for each cached accessory
|
|
76
77
|
for (const accessory of cachedAccessories) {
|
|
77
78
|
if (accessory.UUID === updateSensorUuid) {
|
|
78
79
|
mockUpdateSensor.configureAccessory(accessory);
|
|
79
80
|
updateSensorCached = true;
|
|
81
|
+
cachedCurrentUpdateAccessory = accessory;
|
|
80
82
|
continue;
|
|
81
83
|
}
|
|
82
84
|
if (accessory.UUID === legacyUpdateSensorUuid) {
|
|
@@ -91,9 +93,15 @@ describe('PluginUpdatePlatform legacy UUID migration', () => {
|
|
|
91
93
|
if (!cachedLegacyUpdateAccessory)
|
|
92
94
|
return;
|
|
93
95
|
if (updateSensorCached) {
|
|
94
|
-
|
|
96
|
+
// Both UUIDs found — remove the newer empty accessory, promote the legacy one
|
|
97
|
+
// so the user's HomeKit customisations are preserved.
|
|
98
|
+
if (cachedCurrentUpdateAccessory) {
|
|
99
|
+
mockApi.unregisterPlatformAccessories(PLUGIN_NAME, PLATFORM_NAME, [cachedCurrentUpdateAccessory]);
|
|
100
|
+
cachedCurrentUpdateAccessory = undefined;
|
|
101
|
+
}
|
|
102
|
+
mockUpdateSensor.configureAccessory(cachedLegacyUpdateAccessory);
|
|
95
103
|
cachedLegacyUpdateAccessory = undefined;
|
|
96
|
-
mockLog.info('
|
|
104
|
+
mockLog.info('Migrated update sensor to legacy cached accessory (preserved HomeKit customisations)');
|
|
97
105
|
return;
|
|
98
106
|
}
|
|
99
107
|
mockUpdateSensor.configureAccessory(cachedLegacyUpdateAccessory);
|
|
@@ -130,18 +138,21 @@ describe('PluginUpdatePlatform legacy UUID migration', () => {
|
|
|
130
138
|
expect(mockLog.warn).not.toHaveBeenCalled();
|
|
131
139
|
expect(registered).toBe(true);
|
|
132
140
|
});
|
|
133
|
-
it('Scenario B: both legacy and current UUID in cache — must
|
|
141
|
+
it('Scenario B: both legacy and current UUID in cache — must preserve legacy accessory and remove the newer empty duplicate', () => {
|
|
134
142
|
const { mockLog, mockApi, mockUpdateSensor, uuidMap } = buildMocks();
|
|
135
143
|
const v3Accessory = { UUID: uuidMap[UPDATE_SENSOR_UUID_KEY], displayName: 'PluginUpdate' };
|
|
136
144
|
const legacyAccessory = { UUID: uuidMap[LEGACY_UPDATE_SENSOR_UUID_KEY], displayName: 'Plugin Update Check' };
|
|
137
145
|
runMigrationSimulation(mockApi, mockLog, mockUpdateSensor, uuidMap, [v3Accessory, legacyAccessory]);
|
|
138
|
-
//
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
expect(
|
|
142
|
-
|
|
146
|
+
// configureAccessory called exactly twice: once for the v3 (during restore) then
|
|
147
|
+
// again for the legacy during migration — legacy must be the final (last) call.
|
|
148
|
+
expect(mockUpdateSensor.configureAccessory).toHaveBeenCalledTimes(2);
|
|
149
|
+
expect(mockUpdateSensor.configureAccessory).toHaveBeenNthCalledWith(1, v3Accessory);
|
|
150
|
+
expect(mockUpdateSensor.configureAccessory).toHaveBeenLastCalledWith(legacyAccessory);
|
|
151
|
+
// Current-UUID empty duplicate is removed
|
|
152
|
+
expect(mockApi.unregisterPlatformAccessories).toHaveBeenCalledWith(PLUGIN_NAME, PLATFORM_NAME, [v3Accessory]);
|
|
153
|
+
// No new accessory created
|
|
143
154
|
expect(mockApi.registerPlatformAccessories).not.toHaveBeenCalled();
|
|
144
|
-
expect(mockLog.info).toHaveBeenCalledWith(expect.stringContaining('
|
|
155
|
+
expect(mockLog.info).toHaveBeenCalledWith(expect.stringContaining('Migrated update sensor to legacy cached accessory'));
|
|
145
156
|
});
|
|
146
157
|
it('Scenario B (legacy processed first): same result regardless of configureAccessory order', () => {
|
|
147
158
|
const { mockLog, mockApi, mockUpdateSensor, uuidMap } = buildMocks();
|
|
@@ -149,8 +160,12 @@ describe('PluginUpdatePlatform legacy UUID migration', () => {
|
|
|
149
160
|
const legacyAccessory = { UUID: uuidMap[LEGACY_UPDATE_SENSOR_UUID_KEY], displayName: 'Plugin Update Check' };
|
|
150
161
|
// Legacy accessory arrives first in configureAccessory order
|
|
151
162
|
runMigrationSimulation(mockApi, mockLog, mockUpdateSensor, uuidMap, [legacyAccessory, v3Accessory]);
|
|
152
|
-
|
|
153
|
-
|
|
163
|
+
// Only the v3 accessory is processed during restore (legacy is held), then the
|
|
164
|
+
// migration promotes the legacy one — so configureAccessory is still called twice
|
|
165
|
+
// and the legacy accessory is always the last call.
|
|
166
|
+
expect(mockUpdateSensor.configureAccessory).toHaveBeenCalledTimes(2);
|
|
167
|
+
expect(mockUpdateSensor.configureAccessory).toHaveBeenLastCalledWith(legacyAccessory);
|
|
168
|
+
expect(mockApi.unregisterPlatformAccessories).toHaveBeenCalledWith(PLUGIN_NAME, PLATFORM_NAME, [v3Accessory]);
|
|
154
169
|
expect(mockApi.registerPlatformAccessories).not.toHaveBeenCalled();
|
|
155
170
|
});
|
|
156
171
|
it('Scenario C: normal v3 operation — no legacy accessory, no side effects', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Platform.HAP.test.js","sourceRoot":"","sources":["../src/Platform.HAP.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Platform.HAP.test.js","sourceRoot":"","sources":["../src/Platform.HAP.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@homebridge-plugins/homebridge-updater",
|
|
3
3
|
"displayName": "Homebridge Updater",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"version": "3.1.
|
|
5
|
+
"version": "3.1.3",
|
|
6
6
|
"description": "A Homebridge plugin for checking for updates to Homebridge and plugins",
|
|
7
7
|
"author": "David Maher",
|
|
8
8
|
"license": "BSD-2-Clause",
|