Version
0.6.5
Node.js Version
20.18.2
Operating System
Linux (ARM64)
Issue Description
@matter/nodejs-ble is imported statically but declared as optionalDependency, causing crashes when not installed.
File: ws-controller/dist/esm/controller/MatterController.js
import "@matter/nodejs-ble"; // Crashes if module missing
### Steps to Reproduce
1. Install matter-server in an environment where optional dependencies are excluded
2. Run: `node /usr/lib/node_modules/matter-server/dist/esm/MatterServer.js`
3. Error occurs
### Server Logs
```shell
node /usr/lib/node_modules/matter-server/dist/esm/MatterServer.js
node:internal/modules/esm/resolve:854
throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);
^
Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@matter/nodejs-ble' imported from /usr/lib/node_modules/matter-server/node_modules/@matter-server/ws-controller/dist/esm/controller/MatterController.js
at packageResolve (node:internal/modules/esm/resolve:854:9)
at moduleResolve (node:internal/modules/esm/resolve:927:18)
at defaultResolve (node:internal/modules/esm/resolve:1169:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:542:12)
at ModuleLoader.resolve (node:internal/modules/esm/loader:510:25)
at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:239:38)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:96:40)
at link (node:internal/modules/esm/module_job:95:36) {
code: 'ERR_MODULE_NOT_FOUND'
}
Node.js v20.18.2
Device Information
No response
Additional Context
Solution
Use dynamic import
Pre-submission Checklist
Version
0.6.5
Node.js Version
20.18.2
Operating System
Linux (ARM64)
Issue Description
@matter/nodejs-bleis imported statically but declared as optionalDependency, causing crashes when not installed.File:
ws-controller/dist/esm/controller/MatterController.jsDevice Information
No response
Additional Context
Solution
Use dynamic import
Pre-submission Checklist