73 lines
5.4 KiB
Markdown
73 lines
5.4 KiB
Markdown
# v5.0.14
|
|
|
|
## Enhancements
|
|
|
|
- [#9593](https://github.com/emqx/emqx/pull/9593) Obfuscated sensitive data in the response when querying `bridges` information by API.
|
|
|
|
- [#9614](https://github.com/emqx/emqx/pull/9614) Make possible to configure `host:port` from environment variables without quotes.
|
|
Prior to this change, when overriding a `host:port` config value from environment variable, one has to quote it as:
|
|
`env EMQX_BRIDGES__MQTT__XYZ__SERVER='"localhost:1883"'`.
|
|
Now it's possible to set it without quote as `env EMQX_BRIDGES__MQTT__XYZ__SERVER='localhost:1883'`.
|
|
|
|
- [#9642](https://github.com/emqx/emqx/pull/9642) Deprecates `enable_batch` and `enable_queue` options for bridges/resources. After this change, queuing is always enabled for bridges, and batching is controlled by the `batch_size` option: `batch_size > 1` means batching will be enabled.
|
|
|
|
- [#9671](https://github.com/emqx/emqx/pull/9671) Implement sliding window average metrics.
|
|
|
|
- [#9674](https://github.com/emqx/emqx/pull/9674) Made rule engine behavior more consistent with bridge behavior regarding metrics: if a rule engine is disabled, its metrics are now reset
|
|
|
|
- [#9675](https://github.com/emqx/emqx/pull/9675) HTTP client library `ehttpc` upgraded from `0.4.2` to `0.4.3`.
|
|
Library `eredis_cluster` which manages clients to redis clusters upgraded from `0.7.1` to `0.7.5`.
|
|
|
|
- [#9691](https://github.com/emqx/emqx/pull/9691) The MongoDB library has been upgraded to support MongoDB 5.1+
|
|
|
|
- [#9713](https://github.com/emqx/emqx/pull/9713) Introduce `api_key.bootstrap_file` to initialize the api key at boot time.
|
|
Deprecate `dashboard.bootstrap_users_file`.
|
|
Limit the maximum number of api keys to 100 instead of 30.
|
|
|
|
## Bug fixes
|
|
|
|
- [#9637](https://github.com/emqx/emqx/pull/9637) Fix the expiry_interval fields of the clients HTTP API to measure in seconds.
|
|
|
|
- [#9638](https://github.com/emqx/emqx/pull/9638) Fix the problem of data loss and bad match when the MySQL driver is disconnected.
|
|
|
|
- [#9641](https://github.com/emqx/emqx/pull/9641) Fix an issue where testing the GCP PubSub could leak memory, and an issue where its JWT token would fail to refresh a second time.
|
|
|
|
- [#9642](https://github.com/emqx/emqx/pull/9642) Fix some issues that could lead to wrong bridge metrics.
|
|
Fix and issue that could lead to message loss and wrong metrics with Kafka Producer bridge when Kafka or the connection to it is down.
|
|
Fix some issues that could lead to the same message being delivered more than once when using batching for bridges and when the batch was retried.
|
|
|
|
- [#9667](https://github.com/emqx/emqx/pull/9667) Remove possibility to set `clientid` for `/publish` and `/publish/bulk` HTTP APIs. This is to reduce the risk for security confusion.
|
|
|
|
- [#9672](https://github.com/emqx/emqx/pull/9672) Fix the problem that the bridge is not available when the Payload template is empty in the MQTT bridge.
|
|
|
|
- [#9678](https://github.com/emqx/emqx/pull/9678) When deleting a non-existing bridge the server gave a success response. This has been fixed so that the server instead gives an error response when the user attempts to delete a non-existing bridge.
|
|
|
|
- [#9687](https://github.com/emqx/emqx/pull/9687) Fix the problem that sending messages to data-bridges failed because of incorrect handling of some data-bridges without `local_topic` field configured.
|
|
Before this change, if some bridges have configured the `local_topic` field but others have not, a `function_clause` error will occur when forwarding messages to the data-bridges.
|
|
|
|
- [#9689](https://github.com/emqx/emqx/pull/9689) Fix handling of HTTP authorization result when a request failure (e.g.: HTTP resource is down) would cause a `function_clause` error.
|
|
|
|
- [#9703](https://github.com/emqx/emqx/pull/9703) Set the default value of the `qos` field of the HTTP API `/clients/:clientid/subscribe` to 0.
|
|
Before this fix, the `qos` field have no default value, which leads to a `function_clause` error
|
|
when querying this API.
|
|
|
|
- [#9705](https://github.com/emqx/emqx/pull/9705) Remove the default value of Webhook.
|
|
Before this repair, the default value of the `body` field of Webhook is `${payload}`,
|
|
but there is no `payload` field in the available fields of other events except message
|
|
publishing in the rule, so in this case, the webhook will send a string with the
|
|
message body as "undefined" to the HTTP service.
|
|
This fix removes the default value of the `body` field. When the `body` field is
|
|
not configured, Webhook will send all available fields of the current event in
|
|
the format of JSON object.
|
|
|
|
- [#9712](https://github.com/emqx/emqx/pull/9712) Fixed the problem of '404 Not Found' when calling the HTTP API '/clients/:clientid/subscribe/bulk'
|
|
from the plug-ins and data-bridges on handling the 'client.connected' event.
|
|
|
|
- [#9714](https://github.com/emqx/emqx/pull/9714) Fix `/mqtt/auto_subscribe` API's bad swagger schema, and make sure swagger always checks if the schema is correct.
|
|
|
|
- [#9716](https://github.com/emqx/emqx/pull/9716) MQTT bridge config compatibility fix. The config created from before v5.0.12 may encounter a compatibility issue after upgraded to v5.0.13.
|
|
|
|
- [#9717](https://github.com/emqx/emqx/pull/9717) Prior to this fix, if it always times out when trying to connect a bridge server, it's not possible to change other configs even when the bridge is disabled.
|
|
|
|
- [#9730](https://github.com/emqx/emqx/pull/9730) Potential leaks of atoms that could lead to a crash if a lot of resources were created have been removed.
|