@matterbridge/core 3.7.9-dev-20260514-473c140 → 3.7.9-dev-20260514-c020ec8

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.
@@ -620,7 +620,19 @@ export class Matterbridge extends EventEmitter {
620
620
  this.devices.logLevel = this.log.logLevel;
621
621
  for (const plugin of this.plugins) {
622
622
  this.log.debug(`Parsing plugin ${plg}${plugin.name}${db} from path ${CYAN}${plugin.path}${db} with version ${CYAN}${plugin.version}${db} and type ${CYAN}${plugin.type}${db}.`);
623
- if (!fs.existsSync(plugin.path) && !hasAnyParameter('add', 'remove', 'enable', 'disable', 'reset', 'factoryreset', 'systemcheck')) {
623
+ const globalModulesDirectory = await this.nodeContext.get('globalModulesDirectory', '');
624
+ const isLocal = globalModulesDirectory && !plugin.path.includes(globalModulesDirectory);
625
+ if ((isLocal &&
626
+ fs.existsSync(plugin.path) &&
627
+ !fs.existsSync(path.join(path.dirname(plugin.path), 'node_modules', 'matterbridge')) &&
628
+ !hasAnyParameter('add', 'remove', 'enable', 'disable', 'reset', 'factoryreset', 'systemcheck')) ||
629
+ process.env.MATTERBRIDGE_LINK_LOCAL_PLUGINS === 'jest') {
630
+ const { execSync } = await import('node:child_process');
631
+ execSync('npm link matterbridge --no-fund --no-audit --silent', { cwd: path.dirname(plugin.path), stdio: 'inherit' });
632
+ this.log.info(`Matterbridge linked to plugin ${plg}${plugin.name}${nf}.`);
633
+ }
634
+ if ((!isLocal && !fs.existsSync(plugin.path) && !hasAnyParameter('add', 'remove', 'enable', 'disable', 'reset', 'factoryreset', 'systemcheck')) ||
635
+ process.env.MATTERBRIDGE_REINSTALL_PLUGINS === 'jest') {
624
636
  this.log.info(`Error parsing plugin ${plg}${plugin.name}${nf}. Trying to reinstall it from npm...`);
625
637
  const { execSync } = await import('node:child_process');
626
638
  const sudo = hasParameter('sudo') || (process.platform !== 'win32' && !hasParameter('docker') && !hasParameter('nosudo') && !process.env.PATH?.includes('/.nvm/versions/node/'));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matterbridge/core",
3
- "version": "3.7.9-dev-20260514-473c140",
3
+ "version": "3.7.9-dev-20260514-c020ec8",
4
4
  "description": "Matterbridge core library",
5
5
  "author": "https://github.com/Luligu",
6
6
  "homepage": "https://matterbridge.io/",
@@ -130,10 +130,10 @@
130
130
  ],
131
131
  "dependencies": {
132
132
  "@matter/main": "0.16.11",
133
- "@matterbridge/dgram": "3.7.9-dev-20260514-473c140",
134
- "@matterbridge/thread": "3.7.9-dev-20260514-473c140",
135
- "@matterbridge/types": "3.7.9-dev-20260514-473c140",
136
- "@matterbridge/utils": "3.7.9-dev-20260514-473c140",
133
+ "@matterbridge/dgram": "3.7.9-dev-20260514-c020ec8",
134
+ "@matterbridge/thread": "3.7.9-dev-20260514-c020ec8",
135
+ "@matterbridge/types": "3.7.9-dev-20260514-c020ec8",
136
+ "@matterbridge/utils": "3.7.9-dev-20260514-c020ec8",
137
137
  "escape-html": "1.0.3",
138
138
  "express": "5.2.1",
139
139
  "express-rate-limit": "8.5.1",