Skip to content

Commit f310f06

Browse files
authored
Release 3.10.1
## [3.10.1] - 2026-07-24 ### Added - [devcontainer]: Add a double Node/Bun Dev Container setup where VS Code lets you choose one profile or the other. - [devcontainer]: The Bun Dev Container profile builds in a fraction of the time compared to the Node profile, confirming how impressive the Bun runtime is. - [devcontainer]: Add dedicated `.devcontainer/node` and `.devcontainer/bun` profiles with their own Dockerfile, docker-compose, and create/start scripts. - [devices]: Add `tagList` support to the `ClosureOptions` used by the `Closure` device constructor. Thanks Ludovic BOUÉ. - [closure]: Add `countdownTime`, `mainState`, `currentErrorList`, `overallCurrentState`, `overallTargetState`, and `latchControlModes` support to the `ClosureOptions` used by the `Closure` device constructor. - [devices]: Add `addPanel()` to the `Closure` device and `tagList` support to `ClosurePanelOptions` to compose closures with multiple closure panels (e.g. a venetian blind with `ClosurePanelTag.Lift` and `ClosurePanelTag.Tilt` panels). Thanks Ludovic BOUÉ. ### Changed - [matterbridge]: Bump `matterbridge` version to v.3.10.1. - [matterbridge]: Update dependencies. - [matterbridge]: Bump `@matter/main` to v.0.17.6. - [matterbridge]: Bump `oxlint-tsgolint` to v.0.25.0. - [frontend]: Bump `frontend` version to v.3.5.4. - [frontend]: Update dependencies. - [frontend]: Bump `@rjsf` packages to v.6.7.0. - [frontend]: Bump `vite` to v.8.1.5. - [frontend]: Bump `oxlint-tsgolint` to v.0.25.0. - [chip-test]: Update chip-test Dockerfile. ### Fixed - [tags]: Fix `ClosureTag` export shadowing. - [frontend]: Local plugins are detected, and both update actions and available-version checks are skipped. <a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="80"></a>
1 parent 6d1e6ba commit f310f06

72 files changed

Lines changed: 1836 additions & 881 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devcontainer/bun/create.sh

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ set -euo pipefail
44

55
# Ensure required directories exist and are owned by the current user
66
workspace_paths=("$PWD/node_modules" "$PWD/apps/frontend/node_modules" "$PWD/.cache")
7-
home_paths=("$HOME/Matterbridge" "$HOME/.matterbridge" "$HOME/.mattercert" "$HOME/.claude" "$HOME/.codex" "$HOME/.bash_history_volume")
7+
home_paths=("$HOME/Matterbridge" "$HOME/.matterbridge" "$HOME/.mattercert" "$HOME/.claude" "$HOME/.codex")
88

99
sudo mkdir -p "${workspace_paths[@]}" "${home_paths[@]}" # Create directories if they don't exist
1010
sudo chown -R "$(id -u):$(id -g)" "${workspace_paths[@]}" "${home_paths[@]}" # Transfer ownership to the current user
@@ -15,13 +15,3 @@ touch "$HOME/.bashrc"
1515
if ! grep -Fqx "$prompt_config" "$HOME/.bashrc"; then
1616
printf '\n%s\n' "$prompt_config" >> "$HOME/.bashrc"
1717
fi
18-
19-
# Persist bash history in the volume-backed directory
20-
history_config='export HISTFILE="$HOME/.bash_history_volume/.bash_history"
21-
export HISTSIZE=10000
22-
export HISTFILESIZE=20000
23-
export HISTCONTROL=ignoreboth
24-
stty -ixon 2>/dev/null || true'
25-
if ! grep -q 'HISTFILE.*bash_history_volume' "$HOME/.bashrc"; then
26-
printf '\n%s\n' "$history_config" >> "$HOME/.bashrc"
27-
fi

.devcontainer/bun/devcontainer.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
"source=${localWorkspaceFolderBasename}-bun-node_modules,target=${containerWorkspaceFolder}/node_modules,type=volume",
1414
"source=${localWorkspaceFolderBasename}-bun-frontend-node_modules,target=${containerWorkspaceFolder}/apps/frontend/node_modules,type=volume",
1515
"source=${localWorkspaceFolderBasename}-bun-cache,target=${containerWorkspaceFolder}/.cache,type=volume",
16-
"source=${localWorkspaceFolderBasename}-bun-bash-history,target=/home/bun/.bash_history_volume,type=volume",
1716
"source=${localWorkspaceFolderBasename}-plugins,target=/home/bun/Matterbridge,type=volume",
1817
"source=${localWorkspaceFolderBasename}-storage,target=/home/bun/.matterbridge,type=volume",
1918
"source=${localWorkspaceFolderBasename}-cert,target=/home/bun/.mattercert,type=volume",

.devcontainer/node/create.sh

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ set -euo pipefail
44

55
# Ensure required directories exist and are owned by the current user
66
workspace_paths=("$PWD/node_modules" "$PWD/apps/frontend/node_modules" "$PWD/.cache")
7-
home_paths=("$HOME/Matterbridge" "$HOME/.matterbridge" "$HOME/.mattercert" "$HOME/.claude" "$HOME/.codex" "$HOME/.bash_history_volume")
7+
home_paths=("$HOME/Matterbridge" "$HOME/.matterbridge" "$HOME/.mattercert" "$HOME/.claude" "$HOME/.codex")
88

99
sudo mkdir -p "${workspace_paths[@]}" "${home_paths[@]}" # Create directories if they don't exist
1010
sudo chown -R "$(id -u):$(id -g)" "${workspace_paths[@]}" "${home_paths[@]}" # Transfer ownership to the current user
@@ -15,13 +15,3 @@ touch "$HOME/.bashrc"
1515
if ! grep -Fqx "$prompt_config" "$HOME/.bashrc"; then
1616
printf '\n%s\n' "$prompt_config" >> "$HOME/.bashrc"
1717
fi
18-
19-
# Persist bash history in the volume-backed directory
20-
history_config='export HISTFILE="$HOME/.bash_history_volume/.bash_history"
21-
export HISTSIZE=10000
22-
export HISTFILESIZE=20000
23-
export HISTCONTROL=ignoreboth
24-
stty -ixon 2>/dev/null || true'
25-
if ! grep -q 'HISTFILE.*bash_history_volume' "$HOME/.bashrc"; then
26-
printf '\n%s\n' "$history_config" >> "$HOME/.bashrc"
27-
fi

.devcontainer/node/devcontainer.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
"source=${localWorkspaceFolderBasename}-node-node_modules,target=${containerWorkspaceFolder}/node_modules,type=volume",
1414
"source=${localWorkspaceFolderBasename}-node-frontend-node_modules,target=${containerWorkspaceFolder}/apps/frontend/node_modules,type=volume",
1515
"source=${localWorkspaceFolderBasename}-node-cache,target=${containerWorkspaceFolder}/.cache,type=volume",
16-
"source=${localWorkspaceFolderBasename}-node-bash-history,target=/home/node/.bash_history_volume,type=volume",
1716
"source=${localWorkspaceFolderBasename}-plugins,target=/home/node/Matterbridge,type=volume",
1817
"source=${localWorkspaceFolderBasename}-storage,target=/home/node/.matterbridge,type=volume",
1918
"source=${localWorkspaceFolderBasename}-cert,target=/home/node/.mattercert,type=volume",

.dockerbuild.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"version": "3.10.0",
2+
"version": "3.10.1",
33
"sha": "local",
44
"sha7": "local",
55
"event": "local_script",

.github/workflows/docker-buildx-s6-rc-legacy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
-f docker/Dockerfile.s6-rc-legacy \
7878
-t luligu/matterbridge:s6-rc-legacy \
7979
-t luligu/matterbridge:s6-rc-legacy-${{ steps.meta.outputs.VERSION }} \
80-
-t luligu/matterbridge:2026.7.3-legacy \
80+
-t luligu/matterbridge:2026.7.4-legacy \
8181
--build-arg VERSION=${{ steps.meta.outputs.VERSION }} \
8282
--build-arg VCS_REF=${{ steps.meta.outputs.VCS_REF }} \
8383
--build-arg BUILD_DATE=${{ steps.meta.outputs.BUILD_DATE }} \

.github/workflows/docker-buildx-s6-rc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
-f docker/Dockerfile.s6-rc \
7878
-t luligu/matterbridge:s6-rc \
7979
-t luligu/matterbridge:s6-rc-${{ steps.meta.outputs.VERSION }} \
80-
-t luligu/matterbridge:2026.7.3 \
80+
-t luligu/matterbridge:2026.7.4 \
8181
--build-arg VERSION=${{ steps.meta.outputs.VERSION }} \
8282
--build-arg VCS_REF=${{ steps.meta.outputs.VCS_REF }} \
8383
--build-arg BUILD_DATE=${{ steps.meta.outputs.BUILD_DATE }} \

CHANGELOG.md

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
[![tested with Vitest](https://img.shields.io/badge/tested_with-Vitest-6E9F18.svg?logo=vitest&logoColor=white)](https://vitest.dev)
1313
[![styled with Oxc](https://img.shields.io/badge/styled_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/formatter.html)
1414
[![linted with Oxc](https://img.shields.io/badge/linted_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/linter.html)
15-
[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
1615
[![TypeScript Native](https://img.shields.io/badge/TypeScript_Native-3178C6?logo=typescript&logoColor=white)](https://github.com/microsoft/typescript-go)
1716
[![ESM](https://img.shields.io/badge/ESM-Node.js-339933?logo=node.js&logoColor=white)](https://nodejs.org)
1817
[![ESM](https://img.shields.io/badge/ESM-Bun-000000?logo=bun&logoColor=white)](https://bun.com)
@@ -58,6 +57,37 @@ These classes will run as threads in the next releases:
5857
- all plugins in bridge mode;
5958
- each plugin in childbridge mode;
6059

60+
## [3.10.1] - 2026-07-24
61+
62+
### Added
63+
64+
- [devcontainer]: Add a double Node/Bun Dev Container setup where VS Code lets you choose one profile or the other.
65+
- [devcontainer]: The Bun Dev Container profile builds in a fraction of the time compared to the Node profile, confirming how impressive the Bun runtime is.
66+
- [devcontainer]: Add dedicated `.devcontainer/node` and `.devcontainer/bun` profiles with their own Dockerfile, docker-compose, and create/start scripts.
67+
- [devices]: Add `tagList` support to the `ClosureOptions` used by the `Closure` device constructor. Thanks Ludovic BOUÉ.
68+
- [closure]: Add `countdownTime`, `mainState`, `currentErrorList`, `overallCurrentState`, `overallTargetState`, and `latchControlModes` support to the `ClosureOptions` used by the `Closure` device constructor.
69+
- [devices]: Add `addPanel()` to the `Closure` device and `tagList` support to `ClosurePanelOptions` to compose closures with multiple closure panels (e.g. a venetian blind with `ClosurePanelTag.Lift` and `ClosurePanelTag.Tilt` panels). Thanks Ludovic BOUÉ.
70+
71+
### Changed
72+
73+
- [matterbridge]: Bump `matterbridge` version to v.3.10.1.
74+
- [matterbridge]: Update dependencies.
75+
- [matterbridge]: Bump `@matter/main` to v.0.17.6.
76+
- [matterbridge]: Bump `oxlint-tsgolint` to v.0.25.0.
77+
- [frontend]: Bump `frontend` version to v.3.5.4.
78+
- [frontend]: Update dependencies.
79+
- [frontend]: Bump `@rjsf` packages to v.6.7.0.
80+
- [frontend]: Bump `vite` to v.8.1.5.
81+
- [frontend]: Bump `oxlint-tsgolint` to v.0.25.0.
82+
- [chip-test]: Update chip-test Dockerfile.
83+
84+
### Fixed
85+
86+
- [tags]: Fix `ClosureTag` export shadowing.
87+
- [frontend]: Local plugins are detected, and both update actions and available-version checks are skipped.
88+
89+
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="80"></a>
90+
6191
## [3.10.0] - 2026-07-17
6292

6393
### Breaking changes

README-DEV.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
[![tested with Vitest](https://img.shields.io/badge/tested_with-Vitest-6E9F18.svg?logo=vitest&logoColor=white)](https://vitest.dev)
1414
[![styled with Oxc](https://img.shields.io/badge/styled_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/formatter.html)
1515
[![linted with Oxc](https://img.shields.io/badge/linted_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/linter.html)
16-
[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
1716
[![TypeScript Native](https://img.shields.io/badge/TypeScript_Native-3178C6?logo=typescript&logoColor=white)](https://github.com/microsoft/typescript-go)
1817
[![ESM](https://img.shields.io/badge/ESM-Node.js-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
1918
[![ESM](https://img.shields.io/badge/ESM-Bun-000000?logo=bun&logoColor=white)](https://bun.com)

README-DOCKER.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
[![tested with Vitest](https://img.shields.io/badge/tested_with-Vitest-6E9F18.svg?logo=vitest&logoColor=white)](https://vitest.dev)
1313
[![styled with Oxc](https://img.shields.io/badge/styled_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/formatter.html)
1414
[![linted with Oxc](https://img.shields.io/badge/linted_with-Oxc-9BE4E0.svg?logo=oxc&logoColor=white)](https://oxc.rs/docs/guide/usage/linter.html)
15-
[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
1615
[![TypeScript Native](https://img.shields.io/badge/TypeScript_Native-3178C6?logo=typescript&logoColor=white)](https://github.com/microsoft/typescript-go)
1716
[![ESM](https://img.shields.io/badge/ESM-Node.js-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
1817
[![ESM](https://img.shields.io/badge/ESM-Bun-000000?logo=bun&logoColor=white)](https://bun.com)

0 commit comments

Comments
 (0)