Release 0.11 from 29.10.2024 #1337
Apollon77
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Enhanced Controllers, Project Skeleton Generator, and New Package Structure
We’re excited to announce the release of matter.js 0.11!
What’s New in Version 0.11
This release brings significant upgrades, particularly in improving the Matter Controller APIs. Here’s a quick overview:
npm init @matter help
if you have Node.js installed!Additionally, improvements across the library ensure enhanced stability and robustness.
Breaking Changes
Some minor breaking changes exist, particularly in types (e.g. ByteArray removal and adjustments to generic types). We recommend reviewing the changelog and resolving any build errors.
In line with the upcoming Matter 1.4, we have removed the EventList global attribute and certain methods in ClusterClient.
Users of the Shell application should also review the updated storage information.
Legacy API Notice
If you’re still using the “Legacy Device Building API,” we encourage you to upgrade. The new API is faster, feature-rich, and will be the focus of future enhancements. Reach out if you need support with the migration.
Get Involved
Update to matter.js 0.11 on npm, and share your experiences, feedback, and questions on GitHub or Discord. Our team is here to help!
For a complete list of changes, see the Release Notes below.
0.11.0 (2024-10-29)
IMPORTANT: As of 0.10.0 the @project-chip/matter.js module has grown quite large. This release includes major refactoring that moves functional areas into independent NPM packages under the "@matter" org. We have added exports to maintain backwards compatibility but these are not exhaustive. In some cases you may need to update imports to reference new code locations.
Cross-module changes
package.json
"imports" field. This is an internal change that simplifies imports but should not affect consumers@matter/general:
@project-chip/matter.js
. It now lives in@matter/general
ObserverGroup
class simplifies binding management for multiple observables@matter/main:
@matter/model:
@project-chip/matter.js/model
now resides in@matter/model
@matter/node:
@project-chip/matter.js
now reside in@matter/node
. The Node API includes node management, behavior definitions and endpoint definitions@matter/node/behaviors
or individually (e.g.@matter/node/behaviors/on-off
)@matter/node/endpoints
and@matter/node/devices
respectively. You may also import these via index or individually@matter/nodejs:
@project-chip/matter-node.js
remains as a compatibility import.@matter/nodejs-ble
@project-chip/matter-node-ble.js
remains as a compatibility import.@matter/nodejs-shell:
@matter/protocol:
@project-chip/matter.js
now resides in@matter/protocol
. This includes network communication, fabric management and cluster invocation, read/write, events, etc.DeviceCommissioner
,DeviceAdvertiser
,NodeFinder
andSubscription
now perform functions that previously were in the (deprecated) MatterDevice class@matter/types:
@project-chip/matter.js
now reside in@matter/types
. This includes most TLV structures, cluster definitions, and various support types@project-chip/matter.js
. You can import via@project-chip/types/clusters
or individually (e.g.@project-chip/types/clusters/window-covering
)@matter/examples:
@matter/cli-tool:
@matter/create
npm init @matter help
anywhere you have Node.js installedMatter-Core functionality:
matter.js clusters:
matter.js Controller API:
Beta Was this translation helpful? Give feedback.
All reactions