[{"data":1,"prerenderedAt":30},["Reactive",2],{"9CjX7RyquN":3,"pepeKX9lXO":27},{"items":4,"meta":23},[5,8,11,14,17,20],{"title":6,"titleUrl":7},"MQTT Topics and Wildcards: A Beginner's Guide","advanced-features-of-mqtt-topics",{"title":9,"titleUrl":10},"MQTT on ESP32: A Beginner's Guide","esp32-connects-to-the-free-public-mqtt-broker",{"title":12,"titleUrl":13},"MQTT QoS 0, 1, 2 Explained: A Quickstart Guide","introduction-to-mqtt-qos",{"title":15,"titleUrl":16},"MQTT in Python with Paho Client: Beginner's Guide 2026","how-to-use-mqtt-in-python",{"title":18,"titleUrl":19},"MQTT Broker: How It Works, Popular Options, and Quickstart","the-ultimate-guide-to-mqtt-broker-comparison",{"title":21,"titleUrl":22},"CAN Bus Uncovered: Basics and Applications in Vehicles","can-bus-how-it-works-pros-and-cons",{"count":24,"limit":25,"page":26},6,7,1,{"changelog":28,"createAt":29},"\u003Cp>This is the first official release of 0.25. Mostly are minor bug fixes. But there is an important fix: the 0.24.14 introduces a new bug that the last-will msg caused conn_param obj leaking, which is essential to patch, recommend all users to update.\nAnother valuable fix coming from @aohanhongzhi, important to update if you are using TLS listenenr in heavy load.\u003C/p>\n\u003Ch2>What's Changed in NanoMQ\u003C/h2>\n\u003Cul>\n\u003Cli>Bump pnpm/action-setup from 5.0.0 to 6.0.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2283\">https://github.com/nanomq/nanomq/pull/2283\u003C/a>\u003C/li>\n\u003Cli>Bump docker/setup-qemu-action from 3.7.0 to 4.0.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2285\">https://github.com/nanomq/nanomq/pull/2285\u003C/a>\u003C/li>\n\u003Cli>Bump emqx/translate-issue-action from 1.0.5 to 1.1.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2287\">https://github.com/nanomq/nanomq/pull/2287\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [rest_api] consolidate the get_subscriptions API by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2327\">https://github.com/nanomq/nanomq/pull/2327\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Update SECURITY.md by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2329\">https://github.com/nanomq/nanomq/pull/2329\u003C/a>\u003C/li>\n\u003Cli>refine pipe id hashing for more secured sesssion keeping by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2331\">https://github.com/nanomq/nanomq/pull/2331\u003C/a>\u003C/li>\n\u003Cli>ACL cache ttl fix by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2339\">https://github.com/nanomq/nanomq/pull/2339\u003C/a>\u003C/li>\n\u003Cli>resolve multiple issues by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2345\">https://github.com/nanomq/nanomq/pull/2345\u003C/a>\u003C/li>\n\u003Cli>0.25.2 release  by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2348\">https://github.com/nanomq/nanomq/pull/2348\u003C/a>\u003C/li>\n\u003Cli>0.25.2 release by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2352\">https://github.com/nanomq/nanomq/pull/2352\u003C/a>\u003C/li>\n\u003Cli>Bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2326\">https://github.com/nanomq/nanomq/pull/2326\u003C/a>\u003C/li>\n\u003Cli>Bump actions/download-artifact from 7.0.0 to 8.0.1 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2322\">https://github.com/nanomq/nanomq/pull/2322\u003C/a>\u003C/li>\n\u003Cli>Bump alpine from 3.23 to 3.24 in /deploy/docker by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2323\">https://github.com/nanomq/nanomq/pull/2323\u003C/a>\u003C/li>\n\u003Cli>Bump docker/build-push-action from 6.19.2 to 7.2.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2321\">https://github.com/nanomq/nanomq/pull/2321\u003C/a>\u003C/li>\n\u003Cli>Bump docker/setup-qemu-action from 4.0.0 to 4.1.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2325\">https://github.com/nanomq/nanomq/pull/2325\u003C/a>\u003C/li>\n\u003Cli>Bump docker/metadata-action from 6.0.0 to 6.1.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2324\">https://github.com/nanomq/nanomq/pull/2324\u003C/a>\u003C/li>\n\u003Cli>Bump codecov/codecov-action from 6.0.0 to 7.0.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2359\">https://github.com/nanomq/nanomq/pull/2359\u003C/a>\u003C/li>\n\u003Cli>Bump actions/checkout from 6.0.1 to 7.0.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2361\">https://github.com/nanomq/nanomq/pull/2361\u003C/a>\u003C/li>\n\u003Cli>Bump docker/login-action from 4.1.0 to 4.4.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2362\">https://github.com/nanomq/nanomq/pull/2362\u003C/a>\u003C/li>\n\u003Cli>Fix a last will msg leaking by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2363\">https://github.com/nanomq/nanomq/pull/2363\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [rest_api] check dialer node before starting. by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2365\">https://github.com/nanomq/nanomq/pull/2365\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>new 0.25.4 release by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2364\">https://github.com/nanomq/nanomq/pull/2364\u003C/a>\u003C/li>\n\u003Cli>#2366 &amp; #2367 by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2374\">https://github.com/nanomq/nanomq/pull/2374\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Cp>\u003Cstrong>Full Changelog\u003C/strong>: \u003Ca href=\"https://github.com/nanomq/nanomq/compare/0.24.14...0.25.3\">https://github.com/nanomq/nanomq/compare/0.24.14...0.25.3\u003C/a>\u003C/p>\n\u003Ch2>What's Changed in NanoNNG\u003C/h2>\n\u003Cul>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [nanolib] code compiler warnings that breaks Docker build by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1532\">https://github.com/nanomq/NanoNNG/pull/1532\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>http server: add modern MIME types to static content map (#2247) by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1534\">https://github.com/nanomq/NanoNNG/pull/1534\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>MDF [mqtt_client] add msg drop log &amp; optimize QoS 0 Prirority in ca… by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1539\">https://github.com/nanomq/NanoNNG/pull/1539\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Fix topic alias maxmium negotiation &amp; Sync fix of nano_qos_db QoS msg resend by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1547\">https://github.com/nanomq/NanoNNG/pull/1547\u003C/a>\u003C/li>\n\u003Cli>introduce siphash with random seed by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1550\">https://github.com/nanomq/NanoNNG/pull/1550\u003C/a>\u003C/li>\n\u003Cli>Fix 2 minor issues by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1552\">https://github.com/nanomq/NanoNNG/pull/1552\u003C/a>\u003C/li>\n\u003Cli>FIX [mqtt] improve TLS recv close mapping and diagnostics by @aohanhongzhi in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1531\">https://github.com/nanomq/NanoNNG/pull/1531\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [auth_http] #2341 by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1553\">https://github.com/nanomq/NanoNNG/pull/1553\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>MDF [trantest] fix CI test, wait enough time for aio work by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1554\">https://github.com/nanomq/NanoNNG/pull/1554\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [mqtt_client] fix a resource finit racing bug found by CI by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1555\">https://github.com/nanomq/NanoNNG/pull/1555\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Fix community report issues by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1558\">https://github.com/nanomq/NanoNNG/pull/1558\u003C/a>\u003C/li>\n\u003Cli>Fix SQLite compatiblity with qos msg cache by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1561\">https://github.com/nanomq/NanoNNG/pull/1561\u003C/a>\u003C/li>\n\u003Cli>be responsive to security workers. by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1563\">https://github.com/nanomq/NanoNNG/pull/1563\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Ch2>New Contributors\u003C/h2>\n\u003Cul>\n\u003Cli>@aohanhongzhi made their first contribution in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1531\">https://github.com/nanomq/NanoNNG/pull/1531\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Cp>\u003Cstrong>Full Changelog\u003C/strong>: \u003Ca href=\"https://github.com/nanomq/NanoNNG/compare/0.24.14...0.25.3\">https://github.com/nanomq/NanoNNG/compare/0.24.14...0.25.3\u003C/a>\u003C/p>\n","2026-07-13",1787538578259]