@matterbridge/core 3.9.2-dev-20260621-75283ba → 3.9.2-dev-20260622-2bad6bf

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.
@@ -85,6 +85,7 @@ export declare class Matterbridge extends EventEmitter<MatterbridgeEvents> {
85
85
  private readonly environment;
86
86
  matterStorageService: StorageService | undefined;
87
87
  matterStorageManager: StorageManager | undefined;
88
+ private serverNodeStorageManagers;
88
89
  matterbridgeContext: StorageContext | undefined;
89
90
  controllerContext: StorageContext | undefined;
90
91
  mdnsInterface: string | undefined;
@@ -117,6 +117,7 @@ export class Matterbridge extends EventEmitter {
117
117
  environment = Environment.default;
118
118
  matterStorageService;
119
119
  matterStorageManager;
120
+ serverNodeStorageManagers = new Map();
120
121
  matterbridgeContext;
121
122
  controllerContext;
122
123
  mdnsInterface;
@@ -831,6 +832,7 @@ export class Matterbridge extends EventEmitter {
831
832
  const storageContext = storageManager?.createContext('persist');
832
833
  await storageContext?.set('serialNumber', this.aggregatorSerialNumber);
833
834
  await storageContext?.set('uniqueId', this.aggregatorUniqueId);
835
+ await storageManager.close();
834
836
  }
835
837
  }
836
838
  catch (error) {
@@ -855,6 +857,7 @@ export class Matterbridge extends EventEmitter {
855
857
  await matterStorageManager.createContext('root')?.clearAll();
856
858
  await matterStorageManager.createContext('sessions')?.clearAll();
857
859
  await matterStorageManager.createContext('persist')?.clearAll();
860
+ await matterStorageManager.close();
858
861
  this.log.notice(`Reset commissioning for plugin ${plg}${plugin.name}${nt} done! Remove the device from the controller.`);
859
862
  }
860
863
  else {
@@ -1299,6 +1302,7 @@ export class Matterbridge extends EventEmitter {
1299
1302
  await storageManager?.createContext('fabrics')?.clearAll();
1300
1303
  await storageManager?.createContext('root')?.clearAll();
1301
1304
  await storageManager?.createContext('sessions')?.clearAll();
1305
+ await storageManager?.close();
1302
1306
  }
1303
1307
  }
1304
1308
  for (const device of this.devices.array()) {
@@ -1309,6 +1313,7 @@ export class Matterbridge extends EventEmitter {
1309
1313
  await storageManager?.createContext('fabrics')?.clearAll();
1310
1314
  await storageManager?.createContext('root')?.clearAll();
1311
1315
  await storageManager?.createContext('sessions')?.clearAll();
1316
+ await storageManager?.close();
1312
1317
  }
1313
1318
  }
1314
1319
  this.log.info('Matter storage reset done! Remove the bridge from the controller.');
@@ -1697,6 +1702,11 @@ export class Matterbridge extends EventEmitter {
1697
1702
  async stopMatterStorage() {
1698
1703
  this.log.info('Closing matter node storage...');
1699
1704
  await this.matterStorageManager?.close();
1705
+ for (const [storeId, storageManager] of this.serverNodeStorageManagers) {
1706
+ this.log.debug(`Closing server node storage context manager for ${plg}${storeId}${db}...`);
1707
+ await storageManager.close();
1708
+ }
1709
+ this.serverNodeStorageManagers.clear();
1700
1710
  this.matterStorageService = undefined;
1701
1711
  this.matterStorageManager = undefined;
1702
1712
  this.matterbridgeContext = undefined;
@@ -1710,6 +1720,8 @@ export class Matterbridge extends EventEmitter {
1710
1720
  this.log.info(`Creating server node storage context "${storeId}.persist" for ${storeId}...`);
1711
1721
  await createDirectory(path.join(this.matterbridgeDirectory, MATTER_STORAGE_DIR, storeId), `Matter node storage directory for ${storeId}`, this.log);
1712
1722
  const storageManager = await this.matterStorageService.open(storeId);
1723
+ await this.serverNodeStorageManagers.get(storeId)?.close();
1724
+ this.serverNodeStorageManagers.set(storeId, storageManager);
1713
1725
  const storageContext = storageManager.createContext('persist');
1714
1726
  const random = randomBytes(8).toString('hex');
1715
1727
  await storageContext.set('storeId', storeId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matterbridge/core",
3
- "version": "3.9.2-dev-20260621-75283ba",
3
+ "version": "3.9.2-dev-20260622-2bad6bf",
4
4
  "description": "Matterbridge core library",
5
5
  "author": "https://github.com/Luligu",
6
6
  "homepage": "https://matterbridge.io/",
@@ -129,11 +129,11 @@
129
129
  "CHANGELOG.md"
130
130
  ],
131
131
  "dependencies": {
132
- "@matter/main": "0.17.3",
133
- "@matterbridge/dgram": "3.9.2-dev-20260621-75283ba",
134
- "@matterbridge/thread": "3.9.2-dev-20260621-75283ba",
135
- "@matterbridge/types": "3.9.2-dev-20260621-75283ba",
136
- "@matterbridge/utils": "3.9.2-dev-20260621-75283ba",
132
+ "@matter/main": "0.17.4-alpha.0-20260621-81ba50a6a",
133
+ "@matterbridge/dgram": "3.9.2-dev-20260622-2bad6bf",
134
+ "@matterbridge/thread": "3.9.2-dev-20260622-2bad6bf",
135
+ "@matterbridge/types": "3.9.2-dev-20260622-2bad6bf",
136
+ "@matterbridge/utils": "3.9.2-dev-20260622-2bad6bf",
137
137
  "escape-html": "1.0.3",
138
138
  "express": "5.2.1",
139
139
  "express-rate-limit": "8.5.2",