Bladeren bron

chore: merge release-52 into master

Ivan Dyachkov 2 jaren geleden
bovenliggende
commit
105bebc250
100 gewijzigde bestanden met toevoegingen van 55 en 182 verwijderingen
  1. 2 2
      Makefile
  2. 2 2
      apps/emqx/include/emqx_release.hrl
  3. 1 1
      apps/emqx/rebar.config
  4. 1 1
      apps/emqx/src/emqx.app.src
  5. 1 1
      apps/emqx_conf/src/emqx_conf.app.src
  6. 10 0
      apps/emqx_conf/src/emqx_conf_schema.erl
  7. 1 1
      apps/emqx_durable_storage/src/emqx_durable_storage.app.src
  8. 1 1
      apps/emqx_eviction_agent/src/emqx_eviction_agent.app.src
  9. 1 1
      apps/emqx_management/src/emqx_management.app.src
  10. 1 1
      apps/emqx_management/src/emqx_mgmt_api_clients.erl
  11. 9 5
      apps/emqx_rule_engine/src/emqx_rule_actions.erl
  12. 1 1
      apps/emqx_rule_engine/src/emqx_rule_engine.app.src
  13. 4 0
      apps/emqx_rule_engine/src/emqx_rule_engine_api.erl
  14. 19 3
      apps/emqx_rule_engine/src/emqx_rule_engine_schema.erl
  15. 1 1
      apps/emqx_rule_engine/test/emqx_rule_engine_schema_tests.erl
  16. 0 1
      changes/ce/feat-10022.zh.md
  17. 0 2
      changes/ce/feat-10077.en.md
  18. 0 1
      changes/ce/feat-10077.zh.md
  19. 0 1
      changes/ce/feat-10128.en.md
  20. 0 2
      changes/ce/feat-10139.en.md
  21. 0 2
      changes/ce/feat-10139.zh.md
  22. 0 7
      changes/ce/feat-10156.en.md
  23. 0 1
      changes/ce/feat-10164.en.md
  24. 0 7
      changes/ce/feat-10206.en.md
  25. 0 1
      changes/ce/feat-10207.en.md
  26. 0 4
      changes/ce/feat-10210.en.md
  27. 0 1
      changes/ce/feat-10224.en.md
  28. 0 1
      changes/ce/feat-10263.en.md
  29. 0 1
      changes/ce/feat-10278.en.md
  30. 0 1
      changes/ce/feat-10278.zh.md
  31. 0 3
      changes/ce/feat-10306.en.md
  32. 0 1
      changes/ce/feat-10318.en.md
  33. 0 1
      changes/ce/feat-10318.zh.md
  34. 0 1
      changes/ce/feat-10336.en.md
  35. 0 2
      changes/ce/feat-10354.en.md
  36. 0 1
      changes/ce/feat-10359.en.md
  37. 0 2
      changes/ce/feat-10373.en.md
  38. 0 2
      changes/ce/feat-10389.en.md
  39. 0 7
      changes/ce/feat-10391.en.md
  40. 0 1
      changes/ce/feat-10392.en.md
  41. 0 2
      changes/ce/feat-10404.en.md
  42. 0 4
      changes/ce/feat-10426.en.md
  43. 0 4
      changes/ce/feat-10457.en.md
  44. 0 3
      changes/ce/feat-10458.en.md
  45. 0 1
      changes/ce/feat-10491.en.md
  46. 0 3
      changes/ce/feat-10512.en.md
  47. 0 1
      changes/ce/feat-10568.en.md
  48. 0 2
      changes/ce/feat-10571.en.md
  49. 0 1
      changes/ce/feat-10584.en.md
  50. 0 2
      changes/ce/feat-10588.en.md
  51. 0 1
      changes/ce/feat-10598.en.md
  52. 0 1
      changes/ce/feat-10623.en.md
  53. 0 1
      changes/ce/feat-10667.en.md
  54. 0 4
      changes/ce/feat-10676.en.md
  55. 0 1
      changes/ce/feat-10697.en.md
  56. 0 4
      changes/ce/feat-10702.en.md
  57. 0 3
      changes/ce/feat-10713.en.md
  58. 0 2
      changes/ce/feat-10782.en.md
  59. 0 1
      changes/ce/feat-10858.en.md
  60. 0 1
      changes/ce/feat-10909.en.md
  61. 0 3
      changes/ce/feat-10910.en.md
  62. 0 5
      changes/ce/feat-10926.en.md
  63. 0 1
      changes/ce/feat-10929.en.md
  64. 0 1
      changes/ce/feat-10933.en.md
  65. 0 4
      changes/ce/feat-10948.en.md
  66. 0 3
      changes/ce/feat-10961.en.md
  67. 0 2
      changes/ce/feat-10985.en.md
  68. 0 1
      changes/ce/feat-11034.en.md
  69. 0 1
      changes/ce/feat-11045.en.md
  70. 0 1
      changes/ce/feat-11062.en.md
  71. 0 1
      changes/ce/feat-11115.en.md
  72. 0 1
      changes/ce/feat-11124.en.md
  73. 0 1
      changes/ce/feat-11133.en.md
  74. 0 1
      changes/ce/feat-11137.en.md
  75. 0 4
      changes/ce/feat-11138.en.md
  76. 0 2
      changes/ce/feat-11165.en.md
  77. 0 4
      changes/ce/feat-11166.en.md
  78. 0 1
      changes/ce/feat-11180.en.md
  79. 0 1
      changes/ce/feat-11226.en.md
  80. 0 1
      changes/ce/feat-11249.en.md
  81. 0 3
      changes/ce/feat-11251.en.md
  82. 0 1
      changes/ce/feat-11253.en.md
  83. 0 1
      changes/ce/feat-11289.en.md
  84. 0 1
      changes/ce/feat-11290.en.md
  85. 0 1
      changes/ce/feat-11291.en.md
  86. 0 3
      changes/ce/feat-11390.en.md
  87. 0 1
      changes/ce/feat-11429.en.md
  88. 0 1
      changes/ce/feat-11436.en.md
  89. 0 2
      changes/ce/feat-11438.en.md
  90. 0 1
      changes/ce/feat-11446.en.md
  91. 0 1
      changes/ce/feat-11469.en.md
  92. 0 2
      changes/ce/feat-11487.en.md
  93. 0 1
      changes/ce/feat-11496.en.md
  94. 0 2
      changes/ce/feat-11497.en.md
  95. 0 1
      changes/ce/feat-9986.en.md
  96. 0 1
      changes/ce/fix-10014.en.md
  97. 0 1
      changes/ce/fix-10014.zh.md
  98. 0 1
      changes/ce/fix-10026.en.md
  99. 0 1
      changes/ce/fix-10026.zh.md
  100. 0 0
      changes/ce/fix-10055.en.md

+ 2 - 2
Makefile

@@ -15,8 +15,8 @@ endif
 
 # Dashboard version
 # from https://github.com/emqx/emqx-dashboard5
-export EMQX_DASHBOARD_VERSION ?= v1.3.2
-export EMQX_EE_DASHBOARD_VERSION ?= e1.2.0-beta.9
+export EMQX_DASHBOARD_VERSION ?= v1.4.1
+export EMQX_EE_DASHBOARD_VERSION ?= e1.2.1
 
 # `:=` should be used here, otherwise the `$(shell ...)` will be executed every time when the variable is used
 # In make 4.4+, for backward-compatibility the value from the original environment is used.

+ 2 - 2
apps/emqx/include/emqx_release.hrl

@@ -32,10 +32,10 @@
 %% `apps/emqx/src/bpapi/README.md'
 
 %% Opensource edition
--define(EMQX_RELEASE_CE, "5.1.6").
+-define(EMQX_RELEASE_CE, "5.2.1").
 
 %% Enterprise edition
--define(EMQX_RELEASE_EE, "5.2.0-alpha.4").
+-define(EMQX_RELEASE_EE, "5.2.1").
 
 %% The HTTP API version
 -define(EMQX_API_VERSION, "5.0").

+ 1 - 1
apps/emqx/rebar.config

@@ -28,7 +28,7 @@
     {gproc, {git, "https://github.com/emqx/gproc", {tag, "0.9.0.1"}}},
     {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.9.2"}}},
     {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.9.7"}}},
-    {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.15.13"}}},
+    {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.15.14"}}},
     {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "3.1.0"}}},
     {hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.39.16"}}},
     {emqx_http_lib, {git, "https://github.com/emqx/emqx_http_lib.git", {tag, "0.5.3"}}},

+ 1 - 1
apps/emqx/src/emqx.app.src

@@ -2,7 +2,7 @@
 {application, emqx, [
     {id, "emqx"},
     {description, "EMQX Core"},
-    {vsn, "5.1.9"},
+    {vsn, "5.1.11"},
     {modules, []},
     {registered, []},
     {applications, [

+ 1 - 1
apps/emqx_conf/src/emqx_conf.app.src

@@ -1,6 +1,6 @@
 {application, emqx_conf, [
     {description, "EMQX configuration management"},
-    {vsn, "0.1.27"},
+    {vsn, "0.1.28"},
     {registered, []},
     {mod, {emqx_conf_app, []}},
     {applications, [kernel, stdlib, emqx_ctl]},

+ 10 - 0
apps/emqx_conf/src/emqx_conf_schema.erl

@@ -221,6 +221,16 @@ fields("cluster") ->
             sc(
                 ?R_REF(cluster_k8s),
                 #{}
+            )},
+        {"prevent_overlapping_partitions",
+            sc(
+                boolean(),
+                #{
+                    mapping => "vm_args.-kernel prevent_overlapping_partitions",
+                    desc => ?DESC(prevent_overlapping_partitions),
+                    default => false,
+                    importance => ?IMPORTANCE_HIDDEN
+                }
             )}
     ];
 fields(cluster_static) ->

+ 1 - 1
apps/emqx_durable_storage/src/emqx_durable_storage.app.src

@@ -2,7 +2,7 @@
 {application, emqx_durable_storage, [
     {description, "Message persistence and subscription replays for EMQX"},
     % strict semver, bump manually!
-    {vsn, "0.1.3"},
+    {vsn, "0.1.4"},
     {modules, []},
     {registered, []},
     {applications, [kernel, stdlib, rocksdb, gproc, mria]},

+ 1 - 1
apps/emqx_eviction_agent/src/emqx_eviction_agent.app.src

@@ -1,6 +1,6 @@
 {application, emqx_eviction_agent, [
     {description, "EMQX Eviction Agent"},
-    {vsn, "5.1.1"},
+    {vsn, "5.1.2"},
     {registered, [
         emqx_eviction_agent_sup,
         emqx_eviction_agent,

+ 1 - 1
apps/emqx_management/src/emqx_management.app.src

@@ -2,7 +2,7 @@
 {application, emqx_management, [
     {description, "EMQX Management API and CLI"},
     % strict semver, bump manually!
-    {vsn, "5.0.29"},
+    {vsn, "5.0.30"},
     {modules, []},
     {registered, [emqx_management_sup]},
     {applications, [kernel, stdlib, emqx_plugins, minirest, emqx, emqx_ctl, emqx_bridge_http]},

+ 1 - 1
apps/emqx_management/src/emqx_mgmt_api_clients.erl

@@ -647,7 +647,7 @@ set_keepalive(put, #{bindings := #{clientid := ClientID}, body := Body}) ->
         error ->
             {400, 'BAD_REQUEST', "Interval Not Found"};
         {ok, Interval} ->
-            case emqx_mgmt:set_keepalive(emqx_mgmt_util:urldecode(ClientID), Interval) of
+            case emqx_mgmt:set_keepalive(ClientID, Interval) of
                 ok -> lookup(#{clientid => ClientID});
                 {error, not_found} -> {404, ?CLIENTID_NOT_FOUND};
                 {error, Reason} -> {400, #{code => 'PARAMS_ERROR', message => Reason}}

+ 9 - 5
apps/emqx_rule_engine/src/emqx_rule_actions.erl

@@ -45,11 +45,15 @@
 %%--------------------------------------------------------------------
 parse_action(#{function := ActionFunc} = Action) ->
     {Mod, Func} = parse_action_func(ActionFunc),
-    #{
-        mod => Mod,
-        func => Func,
-        args => pre_process_args(Mod, Func, maps:get(args, Action, #{}))
-    }.
+    Res = #{mod => Mod, func => Func},
+    %% builtin_action_console don't have args field.
+    %% Attempting to save args to the console action config could cause validation issues
+    case Action of
+        #{args := Args} ->
+            Res#{args => pre_process_args(Mod, Func, Args)};
+        _ ->
+            Res
+    end.
 
 %%--------------------------------------------------------------------
 %% callbacks of emqx_rule_action

+ 1 - 1
apps/emqx_rule_engine/src/emqx_rule_engine.app.src

@@ -2,7 +2,7 @@
 {application, emqx_rule_engine, [
     {description, "EMQX Rule Engine"},
     % strict semver, bump manually!
-    {vsn, "5.0.24"},
+    {vsn, "5.0.26"},
     {modules, []},
     {registered, [emqx_rule_engine_sup, emqx_rule_engine]},
     {applications, [kernel, stdlib, rulesql, getopt, emqx_ctl, uuid]},

+ 4 - 0
apps/emqx_rule_engine/src/emqx_rule_engine_api.erl

@@ -525,6 +525,10 @@ do_format_action(#{mod := Mod, func := Func, args := Args}) ->
     #{
         function => printable_function_name(Mod, Func),
         args => maps:remove(preprocessed_tmpl, Args)
+    };
+do_format_action(#{mod := Mod, func := Func}) ->
+    #{
+        function => printable_function_name(Mod, Func)
     }.
 
 printable_function_name(emqx_rule_actions, Func) ->

+ 19 - 3
apps/emqx_rule_engine/src/emqx_rule_engine_schema.erl

@@ -98,10 +98,26 @@ fields("builtin_action_republish") ->
     ];
 fields("builtin_action_console") ->
     [
-        {function, ?HOCON(console, #{desc => ?DESC("console_function")})}
+        {function, ?HOCON(console, #{desc => ?DESC("console_function")})},
         %% we may support some args for the console action in the future
-        %, {args, sc(map(), #{desc => "The arguments of the built-in 'console' action",
-        %    default => #{}})}
+
+        %% "args" needs to be a reserved/ignored field in the schema
+        %% to maintain compatibility with rule data that may contain
+        %% it due to a validation bug in previous versions.
+
+        %% The "args" field was not validated by the HOCON schema before 5.2.0,
+        %% which allowed rules to be created with invalid "args" data.
+        %% In 5.2.1 the validation was added,
+        %% so existing rules saved with invalid "args" would now fail validation
+        %% To maintain backward compatibility for existing rule data that may contain invalid "args",
+        %% the field needs to be included in the schema even though it is not a valid field.
+        {args,
+            ?HOCON(map(), #{
+                deprecated => true,
+                importance => ?IMPORTANCE_HIDDEN,
+                desc => "The arguments of the built-in 'console' action",
+                default => #{}
+            })}
     ];
 fields("user_provided_function") ->
     [

+ 1 - 1
apps/emqx_rule_engine/test/emqx_rule_engine_schema_tests.erl

@@ -30,7 +30,7 @@ rule_engine.rules.my_rule {
   metadata = {created_at = 1693918992079}
   sql = \"select * from \\\"t/topic\\\" \"
   actions = [
-    {function = console}
+    {function = console, args = {test = 1}}
     { function = republish
       args = {
         payload = \"${.}\"

+ 0 - 1
changes/ce/feat-10022.zh.md

@@ -1 +0,0 @@
-开始发布Rocky Linux 9(与Enterprise Linux 9兼容)和 MacOS 12 软件包。

+ 0 - 2
changes/ce/feat-10077.en.md

@@ -1,2 +0,0 @@
-Add support for QUIC TLS password protected certificate file.
-

+ 0 - 1
changes/ce/feat-10077.zh.md

@@ -1 +0,0 @@
-增加对 QUIC TLS 密码保护证书文件的支持。

+ 0 - 1
changes/ce/feat-10128.en.md

@@ -1 +0,0 @@
-Add support for OCSP stapling for SSL MQTT listeners.

+ 0 - 2
changes/ce/feat-10139.en.md

@@ -1,2 +0,0 @@
-Add `extraVolumeMounts` to EMQX Helm Chart, it will have the ability to mount the user-own files into the EMQX instance, for example, ACL rule files as mentioned in [#9052](https://github.com/emqx/emqx/issues/9052)
-Done of [#10116](https://github.com/emqx/emqx/issues/10116)

+ 0 - 2
changes/ce/feat-10139.zh.md

@@ -1,2 +0,0 @@
-将 `extraVolumeMounts` 添加到 EMQX Helm Chart 中,它将能够挂载用户自己的文件到 EMQX 实例中,例如在 [#9052](https://github.com/emqx/emqx/issues/9052) 中提到的 ACL 规则文件。
-修复了 issue [#10116](https://github.com/emqx/emqx/issues/10116)

+ 0 - 7
changes/ce/feat-10156.en.md

@@ -1,7 +0,0 @@
-Change the priority of the configuration:
-1. If it is a new installation of EMQX, the priority of configuration is `ENV > emqx.conf > HTTP API`.
-2. If EMQX is upgraded from an old version (i.e., the cluster-override.conf file still exists in EMQX's data directory), then the configuration priority remains the same as before. That is, `HTTP API > ENV > emqx.conf`.
-
-Deprecated data/configs/local-override.conf.
-
-Stabilizing the HTTP API for hot updates.

+ 0 - 1
changes/ce/feat-10164.en.md

@@ -1 +0,0 @@
-Add CRL check support for TLS MQTT listeners.

+ 0 - 7
changes/ce/feat-10206.en.md

@@ -1,7 +0,0 @@
-Decouple the query mode from the underlying call mode for buffer
-workers.
-
-Prior to this change, setting the query mode of a resource
-such as a bridge to `sync` would force the buffer to call the
-underlying connector in a synchronous way, even if it supports async
-calls.

+ 0 - 1
changes/ce/feat-10207.en.md

@@ -1 +0,0 @@
-Use 'label' from i18n file as 'summary' in OpenAPI spec.

+ 0 - 4
changes/ce/feat-10210.en.md

@@ -1,4 +0,0 @@
-Unregister Mnesia post commit hook when Mria is being stopped.
-This fixes hook failures occasionally occurring on stopping/restarting Mria.
-
-[Mria PR](https://github.com/emqx/mria/pull/133)

+ 0 - 1
changes/ce/feat-10224.en.md

@@ -1 +0,0 @@
-Add the option to customize `clusterIP` in Helm chart, so that a user may set it to a fixed IP.

+ 0 - 1
changes/ce/feat-10263.en.md

@@ -1 +0,0 @@
-Add command 'eval-ex' for Elixir expression evaluation.

+ 0 - 1
changes/ce/feat-10278.en.md

@@ -1 +0,0 @@
-Refactor the directory structure of all gateways.

+ 0 - 1
changes/ce/feat-10278.zh.md

@@ -1 +0,0 @@
-重构所有网关的源码目录结构。

+ 0 - 3
changes/ce/feat-10306.en.md

@@ -1,3 +0,0 @@
-Add support for `async` query mode for most bridges.
-
-Before this change, some bridges (Cassandra, MongoDB, MySQL, Postgres, Redis, RocketMQ, TDengine) were only allowed to be created with a `sync` query mode.

+ 0 - 1
changes/ce/feat-10318.en.md

@@ -1 +0,0 @@
-Now, the rule engine language's FROM clause supports both strings enclosed in double quotes (") and single quotes (').

+ 0 - 1
changes/ce/feat-10318.zh.md

@@ -1 +0,0 @@
-现在,规则引擎语言的 FROM 子句支持使用双引号(")和单引号(')括起来的字符串。

+ 0 - 1
changes/ce/feat-10336.en.md

@@ -1 +0,0 @@
-Add `/rule_engine` API endpoint to manage configuration of rule engine.

+ 0 - 2
changes/ce/feat-10354.en.md

@@ -1,2 +0,0 @@
-More specific error messages when configure with bad max_heap_size value.
-Log current value and the max value when the `message_queue_too_long` error is thrown.

+ 0 - 1
changes/ce/feat-10359.en.md

@@ -1 +0,0 @@
-Metrics now are not implicitly collected in places where API handlers don't make any use of them. Instead, a separate backplane RPC gathers cluster-wide metrics.

+ 0 - 2
changes/ce/feat-10373.en.md

@@ -1,2 +0,0 @@
-Deprecate the trace.payload_encode configuration.
-Add payload_encode=[text,hidden,hex] option when creating a trace via HTTP API.

+ 0 - 2
changes/ce/feat-10389.en.md

@@ -1,2 +0,0 @@
-Unify the config formats for `cluster.core_nodes` and `cluster.statics.seeds`.
-Now they both support formats in array `["emqx1@127.0.0.1", "emqx2@127.0.0.1"]` or semicolon-separated string `"emqx1@127.0.0.1,emqx2@127.0.0.1"`.

+ 0 - 7
changes/ce/feat-10391.en.md

@@ -1,7 +0,0 @@
-Hide a large number of advanced options to simplify the configuration file.
-
-That includes `rewrite`, `topic_metric`, `persistent_session_store`, `overload_protection`,
-`flapping_detect`, `conn_congestion`, `stats,auto_subscribe`, `broker_perf`,
-`shared_subscription_group`, `slow_subs`, `ssl_options.user_lookup_fun` and some advance items
-in `node` and `dashboard` section, [#10358](https://github.com/emqx/emqx/pull/10358),
-[#10381](https://github.com/emqx/emqx/pull/10381), [#10385](https://github.com/emqx/emqx/pull/10385).

+ 0 - 1
changes/ce/feat-10392.en.md

@@ -1 +0,0 @@
-A new function to convert a formatted date to an integer timestamp has been added: date_to_unix_ts/3

+ 0 - 2
changes/ce/feat-10404.en.md

@@ -1,2 +0,0 @@
-Change the default queue mode for buffer workers to `memory_only`.
-Before this change, the default queue mode was `volatile_offload`.  When under high message rate pressure and when the resource is not keeping up with such rate, the buffer performance degraded a lot due to the constant disk operations.

+ 0 - 4
changes/ce/feat-10426.en.md

@@ -1,4 +0,0 @@
-Optimize the configuration priority mechanism to fix the issue where the configuration
-changes made to `etc/emqx.conf` do not take effect after restarting EMQX.
-
-More introduction about the new mechanism: [Configure Override Rules](https://www.emqx.io/docs/en/v5.0/configuration/configuration.html#configure-override-rules)

+ 0 - 4
changes/ce/feat-10457.en.md

@@ -1,4 +0,0 @@
-Deprecates the integration with StatsD.
-
-There seemd to be no user using StatsD integration, so we have decided to hide this feature
-for now. We will either remove or revive it based on requirements in the future.

+ 0 - 3
changes/ce/feat-10458.en.md

@@ -1,3 +0,0 @@
-Set the level of plugin configuration options to low level,
-in most cases, users only need to manage plugins on the dashboard
-without the need for manual modification, so we lowered the level.

+ 0 - 1
changes/ce/feat-10491.en.md

@@ -1 +0,0 @@
-Rename `etcd.ssl` to `etcd.ssl_options` to keep all of SSL options consistent in the configuration file.

+ 0 - 3
changes/ce/feat-10512.en.md

@@ -1,3 +0,0 @@
-Improved the storage format of Unicode characters in data files,
-Now we can store Unicode characters normally.
-For example: "SELECT * FROM \"t/1\" WHERE clientid = \"-测试专用-\""

+ 0 - 1
changes/ce/feat-10568.en.md

@@ -1 +0,0 @@
-Add shutdown counter information to `emqx ctl listeners` command

+ 0 - 2
changes/ce/feat-10571.en.md

@@ -1,2 +0,0 @@
-Do not emit useless crash report when EMQX stops.
-Previously, when EMQX (and `emqx_topic_metrics` in particular) stopped and removed underlying tables, some messages were still being handled and crashed.

+ 0 - 1
changes/ce/feat-10584.en.md

@@ -1 +0,0 @@
-Add log level configuration to SSL communication

+ 0 - 2
changes/ce/feat-10588.en.md

@@ -1,2 +0,0 @@
-Increase the time precision of trace logs from second to microsecond.
-For example, change from `2023-05-02T08:43:50+00:00` to `2023-05-02T08:43:50.237945+00:00`.

+ 0 - 1
changes/ce/feat-10598.en.md

@@ -1 +0,0 @@
-Provide a callback method of Unary type in ExProto to avoid possible message disorder issues.

+ 0 - 1
changes/ce/feat-10623.en.md

@@ -1 +0,0 @@
-Renamed `max_message_queue_len` to `max_mailbox_size` in the `force_shutdown` configuration. Old name is kept as an alias, so this change is backward compatible.

+ 0 - 1
changes/ce/feat-10667.en.md

@@ -1 +0,0 @@
-The MongoDB connector and bridge have been refactored to a separate app to improve code structure.

+ 0 - 4
changes/ce/feat-10676.en.md

@@ -1,4 +0,0 @@
-Implement configuration and user data import/export CLI.
-
-The `emqx ctl export` and `emqx ctl import` commands allow to export configuration and built-in database
-data from a running EMQX cluster and later import it to the same or another running EMQX cluster.

+ 0 - 1
changes/ce/feat-10697.en.md

@@ -1 +0,0 @@
-This change allows to set the minReadySeconds for the StatefulSet. This allows to add a gap between the restarts of each pod by upgrade or restart command.

+ 0 - 4
changes/ce/feat-10702.en.md

@@ -1,4 +0,0 @@
-Introduce a more straightforward configuration option `keepalive_multiplier` and
-deprecate the old `keepalive_backoff` configuration.
-After this enhancement, EMQX checks the client's keepalive timeout status
-period by multiplying the "Client Requested Keepalive Interval" with `keepalive_multiplier`.

+ 0 - 3
changes/ce/feat-10713.en.md

@@ -1,3 +0,0 @@
-We hide the request_timeout in resource_option of the webhook to keep it consistent with the http request_timeout of the webhook.
-From now on, when configuring a webhook through API or configuration files,
-it is no longer necessary to configure the request_timeout of the resource. Only configuring the http request_timeout is sufficient, and the request_timeout in the resource will automatically be consistent with the http request_timeout.

+ 0 - 2
changes/ce/feat-10782.en.md

@@ -1,2 +0,0 @@
-Added a new `deliver_rate` option to the retainer configuration, which can limit the maximum delivery rate per session in the retainer.
-

+ 0 - 1
changes/ce/feat-10858.en.md

@@ -1 +0,0 @@
-A new utility function timezone_to_offset_seconds/1 has been added to the rule engine SQL language. This function converts a timezone string (for example, "+02:00", "Z" and "local") to the corresponding offset in seconds.

+ 0 - 1
changes/ce/feat-10909.en.md

@@ -1 +0,0 @@
-Remove the deprecated HTTP APIs for gateways

File diff suppressed because it is too large
+ 0 - 3
changes/ce/feat-10910.en.md


+ 0 - 5
changes/ce/feat-10926.en.md

@@ -1,5 +0,0 @@
-Allow 'enable' as well as 'enabled' as the state flag for listeners.
-
-Prior to this change, listener can be enable/disabled by setting the 'true' or 'false' on the 'enabled' config.
-This is slightly different naming comparing to other state flags in the system.
-No the 'enable' flag is added as an aliase on listeners.

+ 0 - 1
changes/ce/feat-10929.en.md

@@ -1 +0,0 @@
-Upgrade Erlang/OTP to 25.3.2-1

+ 0 - 1
changes/ce/feat-10933.en.md

@@ -1 +0,0 @@
-Add support for configuring TCP keep-alive in MQTT/TCP and MQTT/SSL listeners

+ 0 - 4
changes/ce/feat-10948.en.md

@@ -1,4 +0,0 @@
-Add `live_connections` field for some HTTP APIs, i.e:
-- `/monitor_current`, `/monitor_current/nodes/{node}`
-- `/monitor/nodes/{node}`, `/monitor`
-- `/node/{node}`, `/nodes`

+ 0 - 3
changes/ce/feat-10961.en.md

@@ -1,3 +0,0 @@
-Adds support for unlimited max connections for gateway listeners by allowing
-infinity as a valid value for the `max_connections` field in the configuration
-and HTTP API

+ 0 - 2
changes/ce/feat-10985.en.md

@@ -1,2 +0,0 @@
-Renamed emqx ctl command 'cluster_call' to 'conf cluster_sync'.
-The old command 'cluster_call' is still a valid command, but not included in usage info.

+ 0 - 1
changes/ce/feat-11034.en.md

@@ -1 +0,0 @@
-Hide the broker and move the `broker.shared_subscription_strategy` to `mqtt.shared_subscription_strategy` as it belongs to `mqtt`.

+ 0 - 1
changes/ce/feat-11045.en.md

@@ -1 +0,0 @@
-The listener's authentication and zone related apis have been officially removed in version `5.1.0`.

+ 0 - 1
changes/ce/feat-11062.en.md

@@ -1 +0,0 @@
-Rename `log.file.to` to `log.file.path`.

+ 0 - 1
changes/ce/feat-11115.en.md

@@ -1 +0,0 @@
-Added info logs to indicate when buffered messages are dropped due to time-to-live (TTL) expiration.

+ 0 - 1
changes/ce/feat-11124.en.md

@@ -1 +0,0 @@
-Release packages for Amazon Linux 2023

+ 0 - 1
changes/ce/feat-11133.en.md

@@ -1 +0,0 @@
-Rename `deliver_rate` to `delivery_rate` in the configuration of `retainer`.

+ 0 - 1
changes/ce/feat-11137.en.md

@@ -1 +0,0 @@
-Refactors the dashboard listener configuration to use a nested `ssl_options` field for ssl settings.

+ 0 - 4
changes/ce/feat-11138.en.md

@@ -1,4 +0,0 @@
-- Change k8s `api_server` default value from `http://127.0.0.1:9091` to `https://kubernetes.default.svc:443`
-- `emqx_ctl conf show cluster` no longer displays irrelevant configuration items, such as when `discovery_strategy=static`,
-it will not display configuration information related to `etcd/k8s/dns`.
-- Remove `zones`(deprecated config key) from `emqx_ctl conf show_keys`

+ 0 - 2
changes/ce/feat-11165.en.md

@@ -1,2 +0,0 @@
-Remove `/configs/limiter` api from `swagger.json`, only the api documentation was removed,
-and the `/configs/limiter` api functionalities have not been changed.

+ 0 - 4
changes/ce/feat-11166.en.md

@@ -1,4 +0,0 @@
-Added 3 random SQL functions to the rule engine. 
-  - random(): Generates a random number between 0 and 1 (0.0 =< X < 1.0).
-  - uuid_v4(): Generates a random UUID (version 4) string.
-  - uuid_v4_no_hyphen(): Generates a random UUID (version 4) string without hyphens.

+ 0 - 1
changes/ce/feat-11180.en.md

@@ -1 +0,0 @@
-Adding a new configuration API `/configs`(GET/PUT) that supports to reload the hocon format configuration file.

+ 0 - 1
changes/ce/feat-11226.en.md

@@ -1 +0,0 @@
-Unify the listener switch to `enable`, while being compatible with the previous `enabled`.

+ 0 - 1
changes/ce/feat-11249.en.md

@@ -1 +0,0 @@
-Support HTTP API for setting alarm watermark of license.

+ 0 - 3
changes/ce/feat-11251.en.md

@@ -1,3 +0,0 @@
-Add `/cluster/topology` HTTP API endpoint
-
-`GET` request to the endpoint returns the cluster topology: connections between RLOG core and replicant nodes.

+ 0 - 1
changes/ce/feat-11253.en.md

@@ -1 +0,0 @@
-The Webhook/HTTP bridge has been refactored to its own Erlang application. This allows for more flexibility in the future, and also allows for the bridge to be run as a standalone application.

+ 0 - 1
changes/ce/feat-11289.en.md

@@ -1 +0,0 @@
-Release packages for Debian 12.

+ 0 - 1
changes/ce/feat-11290.en.md

@@ -1 +0,0 @@
-Updated `jq` dependency to version 0.3.10 which includes `oniguruma` library update to version 6.9.8 with few minor security fixes.

+ 0 - 1
changes/ce/feat-11291.en.md

@@ -1 +0,0 @@
-Updated RocksDB version to 1.8.0-emqx-1 via ekka update to 0.15.6.

+ 0 - 3
changes/ce/feat-11390.en.md

@@ -1,3 +0,0 @@
-Add `node.broker_pool_size`, `node.generic_pool_size`, `node.channel_cleanup_batch_size` options to EMQX configuration.
-
-Tuning these options can significantly improve performance if cluster interconnect network latency is high.

+ 0 - 1
changes/ce/feat-11429.en.md

@@ -1 +0,0 @@
-Added option to configure detection of legacy protocol in MondoDB connectors and bridges.

+ 0 - 1
changes/ce/feat-11436.en.md

@@ -1 +0,0 @@
-Add a new API endpoint `DELETE  /banned` to clear all `banned` data.

+ 0 - 2
changes/ce/feat-11438.en.md

@@ -1,2 +0,0 @@
-Changed the type of the `mqtt.mqx_packet_size` from string to byteSize to better represent the valid numeric range.
-Strings will still be accepted for backwards compatibility.

+ 0 - 1
changes/ce/feat-11446.en.md

@@ -1 +0,0 @@
-Refactored datetime-related modules and functions to simplify the code.

+ 0 - 1
changes/ce/feat-11469.en.md

@@ -1 +0,0 @@
-Added support for specifying username in Redis authentication.

+ 0 - 2
changes/ce/feat-11487.en.md

@@ -1,2 +0,0 @@
-The bcrypt work factor is limited to the range 5-10, because higher values consume too much CPU resources.
-Bcrypt library is updated to allow parallel hash evaluation.

+ 0 - 1
changes/ce/feat-11496.en.md

@@ -1 +0,0 @@
-Disabled the Erlang VM Prometheus exporter by default to improve performance and security.

+ 0 - 2
changes/ce/feat-11497.en.md

@@ -1,2 +0,0 @@
-Enhanced broker metrics collection and export by adding new metrics for messages, overload protection, authorization, authentication,
-and improving naming consistency for OpenTelemetry.

+ 0 - 1
changes/ce/feat-9986.en.md

@@ -1 +0,0 @@
-Add MQTT ingress to helm charts and update helm charts documentation

+ 0 - 1
changes/ce/fix-10014.en.md

@@ -1 +0,0 @@
-Ensure Monitor API `/monitor(_current)/nodes/:node` returns `404` instead of `400` if node does not exist.

+ 0 - 1
changes/ce/fix-10014.zh.md

@@ -1 +0,0 @@
-如果 API 查询的节点不存在,将会返回 `404` 而不再是 `400`。

+ 0 - 1
changes/ce/fix-10026.en.md

@@ -1 +0,0 @@
-Metrics are now only exposed via the /bridges/:id/metrics endpoint. Metrics are no longer returned in other API operations such as getting the list of all bridges, or in the response when a bridge has been created.

+ 0 - 1
changes/ce/fix-10026.zh.md

@@ -1 +0,0 @@
-现在只有显式调用 `/bridges/:id/metrics` 接口时才可以获得指标数据,而其他 API 接口将不再返回相关数据。

+ 0 - 0
changes/ce/fix-10055.en.md


Some files were not shown because too many files changed in this diff