# EMQX Edge

## v1.4.0

Release Date: 2026-04-13

### Enhancements

- Renamed the binary from `nanomq` to `emqx-edge`.
- Added support for multiple Dashboard accounts. Additional accounts can be created and managed from the Dashboard UI.
- Passwords in the HTTP server configuration are now stored in encrypted form.
- Added TLS/HTTPS support for the HTTP server.
- Added support for setting ALPN for OpenSSL and MbedTLS TLS layers.
- Added support for creating a per-topic LMQ for each Bridge topic.
- Added fuzzing support for MQTT-Stream.
- Updated `l8w8jwt` from 2.1.0 to 2.5.0.
- Updated EMQX Edge Dashboard to 0.0.7.
  - Moved superuser configuration from Authentication to Authorization.
  - Added support for multiple Dashboard login accounts.
  - Added support for `access` and `topic` parameters in HTTP ACL requests.
  - Added support for configuring ACL cache TTL for ACL and superuser HTTP requests.

### Fixes

- Fixed an error where argument parsing stopped when reading the configuration file path.
- Fixed incorrect retain flags when a message was not delivered.
- Fixed incorrect keepalive behavior when a client set keepalive to 0.
- Fixed an incorrect mutex guard range in the WebSocket transport layer.
- Fixed a compatibility issue with the POSIX `send` interface on macOS when `no_local` was enabled.
- Fixed a missing pipe ID property in retained messages.
- Fixed a TLS alert and PSA API error when accessing the HTTPS server.
- Fixed extra usernames and passwords appearing in the configuration.
- Fixed an error that caused Will message encoding to fail for MQTT v5.
- Fixed potential memory leaks in Parquet search and message concatenation/splitting.
- Fixed a potential memory leak in HTTP response handling in the Webhook AIO callback.
- Fixed a CI error related to base62 encoding.
- Fixed several typos and CI issues.

## v1.3.0

Release Date: 2025-01-29

### Enhancements
- Updated license policy. EMQX Edge will stop accepting new MQTT connections rather than exit when the license expires.
- Added MQTT over QUIC bridge for secure and low-latency bridging over QUIC transport.
- Added shared tag for different Docker platforms.
- Optimized the process of message resend and check logic of the MQTT bridge.
- Optimized the GitHub workflow to streamline Docker image builds, reducing image size and build time.
- Updated EMQX Edge Dashboard to 0.0.6.
  - Added Subscription Topic Tree to Dashboard for hierarchical visualization of MQTT subscription topics.
  - Enhanced the usability of authentication and authorization configurations.
  - Added support for MQTT over QUIC bridge.
  - Added license expiration reminder.

### Fixes
- Fixed missing UTF-8 string length validation when handling MQTT v3.1.1 SUBSCRIBE packets.
- Updated the configuration file path in the Docker image.
- Fixed configuration errors related to SNI and SQLite.
- Fixed memory address security issues in WebSocket layer.
- Fixed memory address security issues in Rule Engine.
- Fixed an issue where QUIC bridge metrics did not work correctly.
- Fixed an issue where the built-in MQTT client hook trigger kept reconnecting when ACL was enabled.
- Fixed an issue where Super Request did not work when ACL cache was enabled.
- Fixed an error where Dashboard could not retrieve the QUIC bridge status after reloading.
- Fixed an error when reading configuration items with millisecond (`ms`) units.
- Fixed errors when performing Parquet history queries.
- Fixed an issue where a null QUIC connection was closed during QUIC bridge reload.
- Reset `max_ack_delay` to the default maximum value when an invalid value was configured.
- Fixed an issue where the Dashboard failed to access `quic_handshake_timeout`.
- Fixed incorrect QUIC bridge behavior when certificates were set to null.
- Fixed an error when parsing a null encrypted password.
- Fixed incorrect default values for some QUIC options.

## v1.2.0
Release Date: 2025-11-14

### Enhancements
- EMQX Edge Docker Image is available now.
- Added support for publishing Base64-decoded binary payloads via the HTTP API.
- Added support for configuring SNI for TLS bridges through the configuration file.
- Added the ability to download all logs on Windows.
- Updated the Dashboard to version 0.0.5.

### Fixes
- Fixed an issue where Windows release packages were not correctly updated on the Home page.
- Fixed the name of the release package.
- Fixed a heap use-after-free error triggered when reloading a bridge.
- Fixed misleading log outputs that displayed TLS-related logs even when using a TCP bridge.

### Note
- In this version, the SQLite feature is enabled by default. This may affect the performance of the Broker and the Bridge. Follow the instructions in the [Global Settings](../config-description/broker.md) to disable it if necessary.

## v1.1.1
Release Date: 2025-10-27

### Enhancements
- Adjusted the heartbeat log print interval.
- Added support for configuring Server Name Indication (SNI) in MQTT Bridge connections.
- Added support for outputting logs without line numbers, allowing for cleaner log formatting when needed.
- Refactored the Linux CI workflow to use a Dockerfile-based approach.

### Fixes
- Fixed an issue where the ee package was not correctly uploaded to the website.
- Fixed an issue where the ee release notes were not properly synchronized to the website.

## v1.1.0
Release Date: 2025-09-19

### Summary
- EMQX Edge can now be installed and run on Windows systems.
- Introduced encrypted password support in configuration files to enhance security.
- Added new REST APIs for retrieving system and application logs.
- Implemented a new HTTP framework and integrated an AES encryption module for improved performance and security.
- Upgraded Dashboard to version v0.0.4, providing a smoother user experience.
- Fixed multiple issues to improve overall reliability and performance.

### Enhancements

#### Security

- Introduced a new AES encryption module.
- Added support for AES-encrypted data through new REST APIs.
- Added support for encrypted bridge passwords in configuration files.
- Replaced plain-text passwords in authentication with Base64-decoded encrypted passwords.

#### REST APIs

- Added REST APIs to retrieve the latest log entries.
- Added REST APIs to download a tarball archive containing all log files.
- Added REST APIs to enable or disable ACL rules and bridge cache.
- Enhanced authorization REST APIs to access the client’s IP address.
- Expanded the metrics REST API with additional metrics.

#### Windows Support

- Released EMQX Edge packages for Windows.
- Added a dedicated configuration file for Windows deployments.
- Enabled TLS, SQLite caching, and JWT authentication support on Windows.

#### Configuration and Protocols

- Updated configuration files to reflect new features and options.
- Updated the default maximum packet size to comply with MQTT protocol-defined limits.

#### Performance and Observability

- Implemented a new HTTP request-handling framework with better performance.
- Improved online/offline notification messages for client events.
- Added heartbeat log messages to monitor runtime activity.

#### Dashboard

- Upgraded the Dashboard to version 0.0.4, delivering UI and stability improvements.

### Fixes

#### Installation

- Fixed the start command on Windows to match Linux behavior, unifying the startup process across platforms.

#### Connectivity and Bridging

- Fixed a potential data race condition in the QUIC layer.
- Fixed an issue where local WebSocket and TLS clients couldn't receive subscription messages.
- Fixed a bug where the built-in MQTT client kept reconnecting when `auth.http` was enabled.
- Fixed an issue where `resend aio` could be `null` in hybrid bridging mode.

#### Observability

- Fixed incorrect byte counters for sent and received traffic.
- Fixed inaccurate CPU and memory usage statistics on Windows.
- Fixed incorrect bridge cache byte statistics in hybrid bridging mode.

#### Dashboard

- Fixed mismatches between the Dashboard and available API endpoints.
- Fixed an issue where the Dashboard couldn't fetch the latest logs on Windows.
- Fixed a bug preventing the Dashboard from switching log pages on Windows.

## v1.0.0
Release Date: 2025-08-19

### Enhancements
- Added support for dashboard, including monitoring, security settings, data bridge settings, and MQTT client tools.
- Added enterprise license support.
- Added a separate configuration file for EMQX Edge.
- Added REST APIs to get all the informations of the license.
- Added REST APIs to get active MQTT connections.
- Enable MQTT Over WebSocket by default.
- Added support for multiple platforms, including armhf arm64 and amd64 (x86\_64).

### Fixes
- Improved logging messages when the broker starts.
- Fixed an issue where NanoMQ fails to start when adding an HTTP authentication header.
- Fixed an issue where the default TLS value for bridge creation is false, but changes to true after restart.
- Fixed an issue where NanoMQ doesn't response when received a invalid reload request.
- Fixed an issue where updating enable field in authentication and authorization by REST APIs doesn't work.
- Fixed the wrong placeholder of password in authorization in configuration file.
- Fixed an issue where clicking Save button twice causes a double free of a field in bridge node.
- Updated the package name.
- Fixed an issue where NanoMQ access a null pointer when there are no params set in authorization.

