github Luligu/matterbridge 3.7.0
Release 3.7.0

7 hours ago

[3.7.0] - 2026-03-19

Dev Breaking Changes

  • [getAttribute]: The overloads of getAttribute() method that take Behavior.Type or ClusterType are now typed.

  • [setAttribute]: The overloads of setAttribute() method that take Behavior.Type or ClusterType are now typed.

  • [updateAttribute]: The overloads of updateAttribute() method that take Behavior.Type or ClusterType are now typed.

  • [subscribeAttribute]: The overloads of subscribeAttribute() method that take Behavior.Type or ClusterType and the handler function are now typed.

  • [addCommandHandler]: The addCommandHandler() method and the handler function are now typed.
    The command must be a string in the format "Cluster.command" (e.g. "OnOff.toggle"). The cluster name and command name should match the Matter specifications.
    For backward compatibility, aliases for the most used cluster commands (e.g. "on" or "off") are also supported ("toggle" is treated as "OnOff.toggle").
    When you require Matterbridge >= 3.7.0 (verifyMatterbridgeVersion('3.7.0')), prefer the fully qualified command name (e.g. "OnOff.toggle" instead of just "toggle") to avoid conflicts with other clusters that have commands with the same name. The short form is deprecated and will be removed in the next releases.

    The attributes property of data (passed to the handler function) is writable inside the handler function.

    YOU CANNOT CALL enpoint.setAttribute() OR endpoint.setCluster() INSIDE THE HANDLER FUNCTION.

At runtime none of these changes will create issues because this is a typing-only change (the runtime signatures didn't change).

At build time (TypeScript compile time), you may see new type errors in plugins that call these overloads, because the types are now more strict/precise.

If you hit build errors:

  • update your code to match the new typings (often it is just adjusting the generic/type argument or the inferred type);
  • change your verifyMatterbridgeVersion('3.7.0') to require Matterbridge >= 3.7.0.

Dev News

  • [DevContainer]: Change base image to mcr.microsoft.com/devcontainers/javascript-node:24-trixie.
  • [DevContainer]: Add postStartCommand.

Added

  • [frontend]: Add support for Hass Ingress project (https://github.com/lovelylain/hass_ingress). Thanks kramttocs (#524).
  • [threads]: Add ArchiveCommand thread.
  • [endpoint]: Add getSnapshot() to create a snapshot of matter cluster state.
  • [endpoint]: Add removeCommandHandler() method.

Changed

  • [package]: Update dependencies.
  • [package]: Update actions versions in workflows.
  • [frontend]: Bump frontend version to v. 3.4.8.
  • [frontend]: Refactor archives creation using threads.
  • [frontend]: Change basePath to pathName for BrowserRouter.
  • [archive]: Use zipjs package.
  • [archive]: Remove archiver and glob packages.

Fixed

  • [frontend]: Fix edge case when more then one device with mode = 'server' is in the same plugin. Thanks Ryan (#528).
  • [thermostat]: Fix Thermostat preset implementation.

Buy me a coffee

Don't miss a new matterbridge release

NewReleases is sending notifications on new releases.