@matterbridge/thread 3.9.3-dev-20260630-684e0d2 → 3.9.3-dev-20260630-9b4b673

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.
@@ -1,7 +1,7 @@
1
1
  import type { ApiPlugin, SharedMatterbridge } from '@matterbridge/types';
2
2
  import { AnsiLogger } from 'node-ansi-logger';
3
- import { BroadcastServer } from './broadcastServer.js';
4
- export declare function checkUpdates(matterbridge: SharedMatterbridge): Promise<void>;
3
+ import type { BroadcastServer } from './broadcastServer.js';
4
+ export declare function checkUpdates(matterbridge: SharedMatterbridge, server: BroadcastServer): Promise<void>;
5
5
  export declare function checkUpdatesAndLog(matterbridge: SharedMatterbridge, log: AnsiLogger, server: BroadcastServer): Promise<void>;
6
6
  export declare function getMatterbridgeLatestVersion(matterbridge: SharedMatterbridge, log: AnsiLogger, server: BroadcastServer): Promise<string | undefined>;
7
7
  export declare function getMatterbridgeDevVersion(matterbridge: SharedMatterbridge, log: AnsiLogger, server: BroadcastServer): Promise<string | undefined>;
@@ -4,33 +4,28 @@ import { getErrorMessage } from '@matterbridge/utils/error';
4
4
  import { logModuleLoaded } from '@matterbridge/utils/loader';
5
5
  import { isValidString } from '@matterbridge/utils/validate';
6
6
  import { AnsiLogger, db, debugStringify, nt, wr } from 'node-ansi-logger';
7
- import { BroadcastServer } from './broadcastServer.js';
8
7
  logModuleLoaded('CheckUpdates');
9
8
  let noUpdatesAvailable = true;
10
- export async function checkUpdates(matterbridge) {
9
+ export async function checkUpdates(matterbridge, server) {
11
10
  const log = new AnsiLogger({ logName: 'MatterbridgeUpdates', logTimestampFormat: 4, logLevel: matterbridge.logLevel });
12
- const server = new BroadcastServer('updates', log);
13
11
  noUpdatesAvailable = true;
14
- const checkUpdatePromise = checkUpdatesAndLog(matterbridge, log, server);
15
- const latestVersionPromise = getMatterbridgeLatestVersion(matterbridge, log, server);
16
- const devVersionPromise = getMatterbridgeDevVersion(matterbridge, log, server);
17
- const pluginsVersionPromises = [];
18
- const pluginsDevVersionPromises = [];
12
+ let plugins = [];
19
13
  try {
20
- const plugins = (await server.fetch({ type: 'plugins_apipluginarray', src: server.name, dst: 'plugins' }, 1000)).result.plugins;
21
- for (const plugin of plugins) {
22
- pluginsVersionPromises.push(getPluginLatestVersion(log, server, plugin));
23
- pluginsDevVersionPromises.push(getPluginDevVersion(log, server, plugin));
24
- }
14
+ plugins = (await server.fetch({ type: 'plugins_apipluginarray', src: server.name, dst: 'plugins' }, 1000)).result.plugins;
25
15
  }
26
16
  catch (error) {
27
17
  log.debug(`Error fetching plugins for update check: ${getErrorMessage(error)}`);
28
18
  }
29
- await Promise.all([checkUpdatePromise, latestVersionPromise, devVersionPromise, ...pluginsVersionPromises, ...pluginsDevVersionPromises]);
19
+ await checkUpdatesAndLog(matterbridge, log, server);
20
+ await getMatterbridgeLatestVersion(matterbridge, log, server);
21
+ await getMatterbridgeDevVersion(matterbridge, log, server);
22
+ for (const plugin of plugins) {
23
+ await getPluginLatestVersion(log, server, plugin);
24
+ await getPluginDevVersion(log, server, plugin);
25
+ }
30
26
  if (noUpdatesAvailable) {
31
27
  server.request({ type: 'frontend_snackbarmessage', src: server.name, dst: 'frontend', params: { message: 'No updates available', timeout: 5, severity: 'info' } });
32
28
  }
33
- server.close();
34
29
  }
35
30
  export async function checkUpdatesAndLog(matterbridge, log, server) {
36
31
  const { getGitHubUpdate } = await import('@matterbridge/utils/github-version');
@@ -32,6 +32,7 @@ export async function spawnCommand(command, args, packageCommand, packageName) {
32
32
  (command === 'npm' || command === 'bun') &&
33
33
  !hasParameter('docker') &&
34
34
  !hasParameter('nosudo') &&
35
+ !isBun() &&
35
36
  !process.env.PATH?.includes('/.nvm/versions/node/'))) {
36
37
  args.unshift(command === 'npm' && isBun() ? 'bun' : command);
37
38
  command = 'sudo';
@@ -213,6 +213,7 @@ export class ThreadsManager {
213
213
  const candidates = [
214
214
  path.join(currentModuleDirectory, fileName),
215
215
  path.join(currentModuleDirectory, '..', 'dist', fileName),
216
+ path.join(currentModuleDirectory, '..', 'src', fileName.replace(/\.js$/, '.ts')),
216
217
  path.join(currentModuleDirectory, 'workers', fileName),
217
218
  ];
218
219
  for (const candidate of candidates) {
@@ -8,7 +8,7 @@ export default new WorkerWrapper('CheckUpdates', async (worker) => {
8
8
  let success = false;
9
9
  try {
10
10
  const shared = (await worker.server.fetch({ type: 'matterbridge_shared', src: `matterbridge`, dst: 'matterbridge' }, 5000)).result.data;
11
- await checkUpdates(shared);
11
+ await checkUpdates(shared, worker.server);
12
12
  worker.logger("info", `Check updates succeeded`);
13
13
  success = true;
14
14
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matterbridge/thread",
3
- "version": "3.9.3-dev-20260630-684e0d2",
3
+ "version": "3.9.3-dev-20260630-9b4b673",
4
4
  "description": "Matterbridge thread library",
5
5
  "author": "https://github.com/Luligu",
6
6
  "homepage": "https://matterbridge.io/",
@@ -69,8 +69,8 @@
69
69
  "CHANGELOG.md"
70
70
  ],
71
71
  "dependencies": {
72
- "@matterbridge/types": "3.9.3-dev-20260630-684e0d2",
73
- "@matterbridge/utils": "3.9.3-dev-20260630-684e0d2",
72
+ "@matterbridge/types": "3.9.3-dev-20260630-9b4b673",
73
+ "@matterbridge/utils": "3.9.3-dev-20260630-9b4b673",
74
74
  "@zip.js/zip.js": "2.8.26",
75
75
  "node-ansi-logger": "3.3.0"
76
76
  }