[{"data":1,"prerenderedAt":30},["Reactive",2],{"9CjX7RyquN":3,"F5bXzqPrmH":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 a bug-fix ver of 0.25, recommend all users using previous tag to update, including multiple important bug fixes, such as \u003Ca href=\"https://github.com/nanomq/nanomq/issues/2417\">https://github.com/nanomq/nanomq/issues/2417\u003C/a> &amp; \u003Ca href=\"https://github.com/nanomq/nanomq/issues/2416\">https://github.com/nanomq/nanomq/issues/2416\u003C/a> &amp; \u003Ca href=\"https://github.com/nanomq/nanomq/issues/2410\">https://github.com/nanomq/nanomq/issues/2410\u003C/a>. And a workaround of NNG TLS idle bug.\u003C/p>\n\u003Ch2>What's Changed in NanoMQ\u003C/h2>\n\u003Cul>\n\u003Cli>Bump docker/login-action from 4.4.0 to 4.6.0 by @dependabot[bot] in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2407\">https://github.com/nanomq/nanomq/pull/2407\u003C/a>\u003C/li>\n\u003Cli>Fix NNG bridge adapter and implement unit tests by @alvin1221 in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2413\">https://github.com/nanomq/nanomq/pull/2413\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [bridge] replace MQTT client during reload by @bmiesch in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2409\">https://github.com/nanomq/nanomq/pull/2409\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Fix 2 potential security issues by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2415\">https://github.com/nanomq/nanomq/pull/2415\u003C/a>\u003C/li>\n\u003Cli>base64 consoilidation by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2420\">https://github.com/nanomq/nanomq/pull/2420\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Ch2>New Contributors\u003C/h2>\n\u003Cul>\n\u003Cli>@bmiesch made their first contribution in \u003Ca href=\"https://github.com/nanomq/nanomq/pull/2409\">https://github.com/nanomq/nanomq/pull/2409\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Cp>\u003Cstrong>Full Changelog\u003C/strong>: \u003Ca href=\"https://github.com/nanomq/nanomq/compare/0.25.5...0.25.6\">https://github.com/nanomq/nanomq/compare/0.25.5...0.25.6\u003C/a>\u003C/p>\n\u003Ch2>What's Changed in NanoNNG\u003C/h2>\n\u003Cul>\n\u003Cli>mqtt: reject unsuccessful CONNACK negotiation by @kazazes in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1592\">https://github.com/nanomq/NanoNNG/pull/1592\u003C/a>\u003C/li>\n\u003Cli>fix(mqtt): Unlink receive pipes during session handoff by @reneleonhardt in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1594\">https://github.com/nanomq/NanoNNG/pull/1594\u003C/a>\u003C/li>\n\u003Cli>FIX [mqtt_codec] accept Session Expiry Interval in CONNACK by @bmiesch in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1596\">https://github.com/nanomq/NanoNNG/pull/1596\u003C/a>\u003C/li>\n\u003Cli>Hot fix for 0.25.5 by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1597\">https://github.com/nanomq/NanoNNG/pull/1597\u003C/a>\u003C/li>\n\u003Cli>FIX [http_conn] make connection error cleanup safe by @bmiesch in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1600\">https://github.com/nanomq/NanoNNG/pull/1600\u003C/a>\u003C/li>\n\u003Cli>fix(nmq_mqtt): don't register pipes closed during the unlocked auth window by @kazazes in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1603\">https://github.com/nanomq/NanoNNG/pull/1603\u003C/a>\u003C/li>\n\u003Cli>Restore conn_param ref counter method by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1608\">https://github.com/nanomq/NanoNNG/pull/1608\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>MDF [broker_tcp] restore default max packet size limit by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1609\">https://github.com/nanomq/NanoNNG/pull/1609\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Exact topic match in nng sub0 bridge by @alvin1221 in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1607\">https://github.com/nanomq/NanoNNG/pull/1607\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [property/mqtt_parser] apply strict property checker. avoid mal… by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1610\">https://github.com/nanomq/NanoNNG/pull/1610\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>Scram safety enhancement by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1612\">https://github.com/nanomq/NanoNNG/pull/1612\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>MDF [nmq_mqtt] replacement of PR#1566 by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1613\">https://github.com/nanomq/NanoNNG/pull/1613\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [mqtt_client] actively disconnect when hitting idle TLS stream. by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1614\">https://github.com/nanomq/NanoNNG/pull/1614\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>fix: handle partial MQTT TLS negotiation writes by @kak13amaplus in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1611\">https://github.com/nanomq/NanoNNG/pull/1611\u003C/a>\u003C/li>\n\u003Cli>\u003Cul>\n\u003Cli>FIX [mqtt_client] correct a mistaken log API by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1615\">https://github.com/nanomq/NanoNNG/pull/1615\u003C/a>\u003C/li>\n\u003C/ul>\n\u003C/li>\n\u003Cli>base64 enhancement by @JaylinYu in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1616\">https://github.com/nanomq/NanoNNG/pull/1616\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Ch2>New Contributors\u003C/h2>\n\u003Cul>\n\u003Cli>@kazazes made their first contribution in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1592\">https://github.com/nanomq/NanoNNG/pull/1592\u003C/a>\u003C/li>\n\u003Cli>@reneleonhardt made their first contribution in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1594\">https://github.com/nanomq/NanoNNG/pull/1594\u003C/a>\u003C/li>\n\u003Cli>@bmiesch made their first contribution in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1596\">https://github.com/nanomq/NanoNNG/pull/1596\u003C/a>\u003C/li>\n\u003Cli>@kak13amaplus made their first contribution in \u003Ca href=\"https://github.com/nanomq/NanoNNG/pull/1611\">https://github.com/nanomq/NanoNNG/pull/1611\u003C/a>\u003C/li>\n\u003C/ul>\n\u003Cp>\u003Cstrong>Full Changelog\u003C/strong>: \u003Ca href=\"https://github.com/nanomq/NanoNNG/compare/0.25.5...0.25.6\">https://github.com/nanomq/NanoNNG/compare/0.25.5...0.25.6\u003C/a>\u003C/p>\n","2026-08-19",1789956898782]