Release Note 🎉
🌳 Introducing Topic Tree visualization - A new way to organize and visualize your MQTT topics hierarchically, making managing and monitoring your message flows easier.
📊 Added Avro Schema and Message Pack support, bringing more efficient ways to handle complex data with MQTTX.
Features 🌈
Note: Topic Tree visualization is currently in
Beta
. You may encounter some instability or incomplete features. We appreciate your feedback to help us improve this functionality.
- Desktop: Topic Tree visualization
- Desktop: Message Pack format support
- Desktop: Avro data format support
- Desktop: Ignore QoS 0 messages option
- CLI: Message Pack format support
- CLI: Avro Schema support
- CLI: Custom WebSocket headers support
- Desktop, CLI: Allow empty client ID
Improvements 💫
- Desktop: Enhanced MQTT wildcard topic matching for '#'.
- Desktop: Better Avro format user experience
- Desktop: Session expiry now defaults to 7200
- Desktop: Synchronization between topic tree and massage table
- Desktop: Persistence for topic tree data
- CLI: Optimized configuration loading logic
- CLI: Using built-in fetch instead of Axios
- CLI: MQTT version notation changed from 5 to 5.0
- Desktop, CLI, Web: Added .nvmrc file for Node.js version specification
- Copilot: Changed to GPT-4o as the default model
Fixes 🛠
- Desktop: Fixed connection name style issue
- Desktop: Improved handling of '#' wildcard in topic filtering
- Desktop: Enhanced file extension handling in scripts
- Desktop: Fixed typos in various places
- CLI: Removed bench sub-topics log
Preview 🖼️
The data display comes from the public MQTT Broker:
broker.emqx.io
.
What's Changed
- fix(desktop): fix the style issue of connection name by @XL-YiBai in #1724
- feat(cli): custom ws headers support by @ysfscream in #1729
- refactor(cli): using built-in fetch instead of axios by @ysfscream in #1730
- feat(cli): add avro support by @LAST7 in #1735
- chore(cli&web): add .nvmrc file to specify node.js version by @Red-Asuka in #1738
- chore(cli): optimize configuration loading logic by @Red-Asuka in #1739
- fix(desktop): improve MQTT wildcard topic matching for '#' by @ysfscream in #1741
- fix(desktop): correct handling of '#' wildcard in topic filtering by @Red-Asuka in #1742
- feat(desktop): support enable ignore qos 0 messages by @ysfscream in #1743
- refactor(deskop): session expriy default to 7200 by @ysfscream in #1744
- fix(cli): mqtt version 5 -> 5.0 by @ysfscream in #1745
- feat(cli): test support by @ysfscream in #1747
- feat(desktop): test support by @ysfscream in #1748
- test(desktop): add more utils test cases by @ysfscream in #1749
- test(cli): add more utils test cases by @ysfscream in #1750
- test(cli): convert paylaod test case support by @ysfscream in #1751
- test(cli): add avro util test cases by @LAST7 in #1752
- test(cli): add protobuf test cases by @ysfscream in #1753
- test(cli): add conn pub sub command test cases by @ysfscream in #1754
- fix(cli): remove bench sub topics log by @ysfscream in #1756
- chore(config): add experimental option in tsconfig to fit modern lsp by @LAST7 in #1758
- feat(desktop): add avro support by @LAST7 in #1757
- test(desktop): add avro util test cases by @LAST7 in #1759
- improve(desktop): improve experience with avro by @LAST7 in #1762
- feat(copilot): change to gpt-4o to default model by @ysfscream in #1765
- fix(desktop): improve file extension handling in script by @ysfscream in #1764
- feat(client): allow client id empty by @ysfscream in #1766
- feat(desktop): Msg pack support by @lantica in #1760
- fix(desktop): fix typo by @ysfscream in #1768
- feat(cli): message pack format support by @ysfscream in #1769
- Topics Tree by @ysfscream in #1771
- feat(desktop): support expand and collapse all tree nodes by @ysfscream in #1775
- fix(desktop): add id for tree node by @ysfscream in #1776
- feat(desktop): sync tree data to message table by @ysfscream in #1777
- Persist Topic Tree Data by @ysfscream in #1778
- feat(desktop): visualize topic tree support by @ysfscream in #1779
New Contributors
Full Changelog: v1.10.1...v1.11.0