4.3 KiB
v5.0.12
This version included a refactoring of MQTT bridge config. The older version config file created from v5.0.11 or earlier will be converted to according to the new schema.
Please note, the request body of /bridges API to configure MQTT brdige is changed in a incompatible way.
Enhancements
-
Disable global garbage collection by
node.global_gc_interval = disabled#9418。 -
Improve the CLI to avoid waste atom table when typing erros #9416.
-
Start building MacOS packages for Apple Silicon hadrdware #9423.
-
Remove support for setting shared subscriptions using the non-standard
$queuefeature #9412. Shared subscriptions are now part of the MQTT spec. Use$shareinstead. -
Refactor authn API by replacing
POST /authentication/{id}/movewithPUT /authentication/{id}/position/{position}. #9419. Same is done for/listeners/{listener_id}/authentication/id/.... -
Redesign
/rulesAPI to makemetricsa dedicated resources rather than being included with every response #9461. -
Add more PSK ciphers support #9505.
-
Improve
emqx_retainerwrite performance: get rid of transactions on write #9372. -
HTTP client library
ehttpcupgraded from0.4.0to0.4.2#9520. -
Add
handshake_timeoutoption to MQTT SSL listener #9502. -
Upgrade dashboard to v1.1.3.
-
Users can define the
externalTrafficPolicyof service in EMQX Helm Chart #9527. -
Return
204instead of200forPOST /gateway/lwm2m/clients/{clientid}/{read,write,observe}#9480. -
Make possible to create an authentication entirely from environment variable #9547. As an example, one can now enable MySQL auth with:
env EMQX_AUTHENTICATION__1='{mechanism="password_based",backend="mysql",server="localhost:3306",database="emqx",username="emqx",password="******",query="SELECT password_hash,salt FROM mqtt_user WHERE username=${username} LIMIT 1",enable=true}'. Prior to this change, overrides only work on top of existing authentication, for example, if there is already MySQL auth configured inemqx.confbut we want to disable it, we can do it withenv EMQX_AUTHENTICATION__1__ENABLE=false. -
Start building packages for Amazon Linux 2 #9537.
Bug fixes
-
Fix that the obsolete SSL files aren't deleted after the ExHook config update #9432.
-
Fix doc and schema for
/traceAPI #9468. -
Return
404for/telemetry/datain case it's disabled #9464. -
Fix some potential MQTT packet parse errors #9477.
-
Fixed EMQX Helm Chart deployment error #9509.
- Fixed the
Discovery error: no such serviceerror occurred during helm chart deployment, resulting in an abnormal discovery of cluster nodes. - Fixed issue that caused EMQX Helm Chart to fail when modifying some of EMQX's configuration items via environment variables.
- Fixed the
-
Fix shadowing
'client.authenticate'callbacks byemqx_authenticator. Nowemqx_authenticatorpasses execution to the further callbacks if none of the authenticators matches #9496. -
Return
400if query paramnodeis not a known node in/trace/:id/download?node={node}#9478. -
POST /tracesto return409in case of duplicate #9494. -
Fix bridging function, when both ingress and egress bridges are configured, egress bridge does not work #9523.
-
Fix EMQX Helm Chart using incorrect secret values when custom credentials are provided #9536.