style: erlfmt all `rebar.config` files and `bin/nodetool`

This commit is contained in:
JimMoen 2023-12-28 17:28:39 +08:00
parent 0f10d9a8bb
commit 5e100f52b8
No known key found for this signature in database
GPG Key ID: 87A520B4F76BA86D
69 changed files with 483 additions and 323 deletions

View File

@ -1,10 +1,9 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, {deps, [
[
{minirest, {git, "https://github.com/emqx/minirest.git", {tag, "1.3.7"}}} {minirest, {git, "https://github.com/emqx/minirest.git", {tag, "1.3.7"}}}
]}. ]}.
{shell, [ {shell, [
% {config, "config/sys.config"}, % {config, "config/sys.config"},

View File

@ -47,8 +47,10 @@
{bbmustache, "1.10.0"}, {bbmustache, "1.10.0"},
{emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.0"}}} {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.0"}}}
]}, ]},
{extra_src_dirs, [{"test", [recursive]}, {extra_src_dirs, [
{"integration_test", [recursive]}]} {"test", [recursive]},
{"integration_test", [recursive]}
]}
]}, ]},
{standalone_test, [ {standalone_test, [
{deps, [ {deps, [

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,6 +1,7 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},
{emqx_auth, {path, "../emqx_auth"}} {emqx_auth, {path, "../emqx_auth"}}
]}. ]}.

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,9 +1,11 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},
{emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_resource, {path, "../../apps/emqx_resource"}}
]}. ]}.
{shell, [ {shell, [
% {config, "config/sys.config"}, % {config, "config/sys.config"},

View File

@ -1,14 +1,16 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}} {deps, [
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}} {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}} {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}} {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
, {snappyer, "1.2.9"} {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
, {emqx_connector, {path, "../../apps/emqx_connector"}} {snappyer, "1.2.9"},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_azure_event_hub]} {apps, [emqx_bridge_azure_event_hub]}

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {ecql, {git, "https://github.com/emqx/ecql.git", {tag, "v0.5.2"}}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {ecql, {git, "https://github.com/emqx/ecql.git", {tag, "v0.5.2"}}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_cassandra]} {apps, [emqx_bridge_cassandra]}

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3.1"}}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {clickhouse, {git, "https://github.com/emqx/clickhouse-client-erl", {tag, "0.3.1"}}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_clickhouse]} {apps, [emqx_bridge_clickhouse]}

View File

@ -1,14 +1,16 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}} {deps, [
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}} {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}} {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}} {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
, {snappyer, "1.2.9"} {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
, {emqx_connector, {path, "../../apps/emqx_connector"}} {snappyer, "1.2.9"},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_confluent]} {apps, [emqx_bridge_confluent]}

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_dynamo]} {apps, [emqx_bridge_dynamo]}

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [ {erl_opts, [
warn_unused_vars, warn_unused_vars,
warn_shadow_vars, warn_shadow_vars,

View File

@ -1,6 +1,6 @@
{erl_opts, [ %% -*- mode: erlang; -*-
debug_info
]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx_connector, {path, "../../apps/emqx_connector"}}, {emqx_connector, {path, "../../apps/emqx_connector"}},

View File

@ -1,7 +1,9 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{hstreamdb_erl, {git, "https://github.com/hstreamdb/hstreamdb_erl.git", {tag, "0.4.5+v0.16.1"}}}, {hstreamdb_erl,
{git, "https://github.com/hstreamdb/hstreamdb_erl.git", {tag, "0.4.5+v0.16.1"}}},
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},
{emqx_utils, {path, "../../apps/emqx_utils"}} {emqx_utils, {path, "../../apps/emqx_utils"}}
]}. ]}.

View File

@ -1,9 +1,11 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_http]} {apps, [emqx_bridge_http]}

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,14 +1,16 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}} {deps, [
, {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}} {wolff, {git, "https://github.com/kafka4beam/wolff.git", {tag, "1.9.1"}}},
, {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}} {kafka_protocol, {git, "https://github.com/kafka4beam/kafka_protocol.git", {tag, "4.1.3"}}},
, {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}} {brod_gssapi, {git, "https://github.com/kafka4beam/brod_gssapi.git", {tag, "v0.1.1"}}},
, {snappyer, "1.2.9"} {brod, {git, "https://github.com/kafka4beam/brod.git", {tag, "3.16.8"}}},
, {emqx_connector, {path, "../../apps/emqx_connector"}} {snappyer, "1.2.9"},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_kafka]} {apps, [emqx_bridge_kafka]}

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_kinesis]} {apps, [emqx_bridge_kinesis]}

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
, {emqx_mongodb, {path, "../../apps/emqx_mongodb"}} {emqx_bridge, {path, "../../apps/emqx_bridge"}},
]}. {emqx_mongodb, {path, "../../apps/emqx_mongodb"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_mongodb]} {apps, [emqx_bridge_mongodb]}

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}} {emqx, {path, "../../apps/emqx"}}
]}. ]}.

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
, {emqx_mysql, {path, "../../apps/emqx_mysql"}} {emqx_bridge, {path, "../../apps/emqx_bridge"}},
]}. {emqx_mysql, {path, "../../apps/emqx_mysql"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_mysql]} {apps, [emqx_bridge_mysql]}

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,11 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_oracle, {path, "../../apps/emqx_oracle"}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {emqx_oracle, {path, "../../apps/emqx_oracle"}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
% {config, "config/sys.config"}, % {config, "config/sys.config"},

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,9 +1,11 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
%% The following two are dependencies of rabbit_common %% The following two are dependencies of rabbit_common
{thoas, {git, "https://github.com/emqx/thoas.git", {tag, "v1.0.0"}}} {thoas, {git, "https://github.com/emqx/thoas.git", {tag, "v1.0.0"}}},
, {credentials_obfuscation, {git, "https://github.com/emqx/credentials-obfuscation.git", {tag, "v3.2.0"}}} {credentials_obfuscation,
{git, "https://github.com/emqx/credentials-obfuscation.git", {tag, "v3.2.0"}}},
%% The v3.11.13.2 (v3.11.13_with_app_src branch), employed in the next two dependencies, %% The v3.11.13.2 (v3.11.13_with_app_src branch), employed in the next two dependencies,
%% represents a fork of the official RabbitMQ v3.11.13 tag. This fork diverges %% represents a fork of the official RabbitMQ v3.11.13 tag. This fork diverges
%% from the official version as it includes app and hrl files %% from the official version as it includes app and hrl files
@ -15,18 +17,16 @@
%% of rabbit_common and amqp_client. There are hex packages for rabbit_common and %% of rabbit_common and amqp_client. There are hex packages for rabbit_common and
%% amqp_client, but they are not used here as we don't want to depend on %% amqp_client, but they are not used here as we don't want to depend on
%% packages that we don't have control over. %% packages that we don't have control over.
, {rabbit_common, {git_subdir, {rabbit_common,
"https://github.com/emqx/rabbitmq-server.git", {git_subdir, "https://github.com/emqx/rabbitmq-server.git", {tag, "v3.11.13.2"},
{tag, "v3.11.13.2"}, "deps/rabbit_common"}},
"deps/rabbit_common"}} {amqp_client,
, {amqp_client, {git_subdir, {git_subdir, "https://github.com/emqx/rabbitmq-server.git", {tag, "v3.11.13.2"},
"https://github.com/emqx/rabbitmq-server.git", "deps/amqp_client"}},
{tag, "v3.11.13.2"}, {emqx_connector, {path, "../../apps/emqx_connector"}},
"deps/amqp_client"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
, {emqx_connector, {path, "../../apps/emqx_connector"}} {emqx_bridge, {path, "../../apps/emqx_bridge"}}
, {emqx_resource, {path, "../../apps/emqx_resource"}} ]}.
, {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_rabbitmq]} {apps, [emqx_bridge_rabbitmq]}

View File

@ -1,10 +1,12 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
, {emqx_redis, {path, "../../apps/emqx_redis"}} {emqx_bridge, {path, "../../apps/emqx_bridge"}},
]}. {emqx_redis, {path, "../../apps/emqx_redis"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_redis]} {apps, [emqx_bridge_redis]}

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,9 +1,11 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.
{shell, [ {shell, [
{apps, [emqx_bridge_sqlserver]} {apps, [emqx_bridge_sqlserver]}

View File

@ -1,6 +1,8 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {emqx_bridge, {path, "../../apps/emqx_bridge"}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {emqx_bridge, {path, "../../apps/emqx_bridge"}}
]}.

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [

View File

@ -1,2 +1,4 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, []}. {deps, []}.

View File

@ -1,3 +1,3 @@
%% -*- mode:erlang -*- %% -*- mode:erlang -*-
{deps,
[{emqx_utils, {path, "../emqx_utils"}}]}. {deps, [{emqx_utils, {path, "../emqx_utils"}}]}.

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, []}. {deps, []}.

View File

@ -1,2 +1,4 @@
%% -*- mode: erlang; -*-
{deps, [{emqx, {path, "../../apps/emqx"}}]}. {deps, [{emqx, {path, "../../apps/emqx"}}]}.
{project_plugins, [erlfmt]}. {project_plugins, [erlfmt]}.

View File

@ -1,4 +1,5 @@
%%-*- mode: erlang -*- %%-*- mode: erlang -*-
{plugins, [ {plugins, [
rebar3_proper, rebar3_proper,
{grpc_plugin, {git, "https://github.com/HJianBo/grpc_plugin", {tag, "v0.10.2"}}} {grpc_plugin, {git, "https://github.com/HJianBo/grpc_plugin", {tag, "v0.10.2"}}}

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},

View File

@ -1,5 +1,7 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},
{emqx_utils, {path, "../emqx_utils"}}, {emqx_utils, {path, "../emqx_utils"}},

View File

@ -1,5 +1,7 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx, {path, "../../apps/emqx"}}, {deps, [
{emqx, {path, "../../apps/emqx"}},
{emqx_gateway, {path, "../../apps/emqx_gateway"}} {emqx_gateway, {path, "../../apps/emqx_gateway"}}
]}. ]}.

View File

@ -1,4 +1,7 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx, {path, "../../apps/emqx"}}, {deps, [
{emqx, {path, "../../apps/emqx"}},
{emqx_gateway, {path, "../../apps/emqx_gateway"}} {emqx_gateway, {path, "../../apps/emqx_gateway"}}
]}. ]}.

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{deps, [ {deps, [
{jesse, "1.7.0"}, {jesse, "1.7.0"},
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},

View File

@ -1,4 +1,5 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {deps, [
{emqx, {path, "../emqx"}}, {emqx, {path, "../emqx"}},

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},
{emqx_utils, {path, "../emqx_utils"}} {emqx_utils, {path, "../emqx_utils"}}

View File

@ -1,7 +1,8 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {emqx_connector, {path, "../../apps/emqx_connector"}} {deps, [
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
, {mongodb, {git, "https://github.com/emqx/mongodb-erlang", {tag, "v3.0.22"}}} {emqx_resource, {path, "../../apps/emqx_resource"}},
]}. {mongodb, {git, "https://github.com/emqx/mongodb-erlang", {tag, "v3.0.22"}}}
]}.

View File

@ -1,2 +1,4 @@
%% -*- mode: erlang; -*-
{deps, [{emqx, {path, "../../apps/emqx"}}]}. {deps, [{emqx, {path, "../../apps/emqx"}}]}.
{project_plugins, [erlfmt]}. {project_plugins, [erlfmt]}.

View File

@ -1,16 +1,26 @@
%% -*- mode: erlang -*- %% -*- mode: erlang -*-
{deps, {deps, [
[{emqx, {path, "../emqx"}} {emqx, {path, "../emqx"}},
%% trace %% trace
, {opentelemetry_api, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_api"}} {opentelemetry_api,
, {opentelemetry, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry"}} {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
"apps/opentelemetry_api"}},
{opentelemetry,
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
"apps/opentelemetry"}},
%% logs, metrics %% logs, metrics
, {opentelemetry_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_experimental"}} {opentelemetry_experimental,
, {opentelemetry_api_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_api_experimental"}} {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
"apps/opentelemetry_experimental"}},
{opentelemetry_api_experimental,
{git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
"apps/opentelemetry_api_experimental"}},
%% export %% export
, {opentelemetry_exporter, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"}, "apps/opentelemetry_exporter"}} {opentelemetry_exporter,
]}. {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.7-emqx"},
"apps/opentelemetry_exporter"}}
]}.
{edoc_opts, [{preprocess, true}]}. {edoc_opts, [{preprocess, true}]}.
{erl_opts, [ {erl_opts, [

View File

@ -1,7 +1,8 @@
%% -*- mode: erlang; -*- %% -*- mode: erlang; -*-
{erl_opts, [debug_info]}. {erl_opts, [debug_info]}.
{deps, [ {jamdb_oracle, {git, "https://github.com/emqx/jamdb_oracle", {tag, "0.4.9.5"}}} {deps, [
, {emqx_connector, {path, "../../apps/emqx_connector"}} {jamdb_oracle, {git, "https://github.com/emqx/jamdb_oracle", {tag, "0.4.9.5"}}},
, {emqx_resource, {path, "../../apps/emqx_resource"}} {emqx_connector, {path, "../../apps/emqx_connector"}},
]}. {emqx_resource, {path, "../../apps/emqx_resource"}}
]}.

View File

@ -1,3 +1,5 @@
%% -*- mode: erlang; -*-
{deps, [ {deps, [
{emqx, {path, "../../apps/emqx"}}, {emqx, {path, "../../apps/emqx"}},
{erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}}, {erlcloud, {git, "https://github.com/emqx/erlcloud", {tag, "3.7.0.3"}}},

View File

@ -12,7 +12,8 @@
main(Args) -> main(Args) ->
case os:type() of case os:type() of
{win32, nt} -> ok; {win32, nt} ->
ok;
_nix -> _nix ->
case init:get_argument(start_epmd) of case init:get_argument(start_epmd) of
{ok, [["true"]]} -> {ok, [["true"]]} ->
@ -44,22 +45,31 @@ do(Args) ->
ok = do_with_halt(Args, "mnesia_dir", fun create_mnesia_dir/2), ok = do_with_halt(Args, "mnesia_dir", fun create_mnesia_dir/2),
ok = do_with_halt(Args, "chkconfig", fun("-config", X) -> chkconfig(X) end), ok = do_with_halt(Args, "chkconfig", fun("-config", X) -> chkconfig(X) end),
ok = do_with_halt(Args, "chkconfig", fun chkconfig/1), ok = do_with_halt(Args, "chkconfig", fun chkconfig/1),
Args1 = do_with_ret(Args, "-name", Args1 = do_with_ret(
Args,
"-name",
fun(TargetName) -> fun(TargetName) ->
ThisNode = this_node_name(longnames, TargetName), ThisNode = this_node_name(longnames, TargetName),
{ok, _} = net_kernel:start([ThisNode, longnames]), {ok, _} = net_kernel:start([ThisNode, longnames]),
put(target_node, nodename(TargetName)) put(target_node, nodename(TargetName))
end), end
Args2 = do_with_ret(Args1, "-sname", ),
Args2 = do_with_ret(
Args1,
"-sname",
fun(TargetName) -> fun(TargetName) ->
ThisNode = this_node_name(shortnames, TargetName), ThisNode = this_node_name(shortnames, TargetName),
{ok, _} = net_kernel:start([ThisNode, shortnames]), {ok, _} = net_kernel:start([ThisNode, shortnames]),
put(target_node, nodename(TargetName)) put(target_node, nodename(TargetName))
end), end
RestArgs = do_with_ret(Args2, "-setcookie", ),
RestArgs = do_with_ret(
Args2,
"-setcookie",
fun(Cookie) -> fun(Cookie) ->
erlang:set_cookie(node(), list_to_atom(Cookie)) erlang:set_cookie(node(), list_to_atom(Cookie))
end), end
),
[application:start(App) || App <- [crypto, public_key, ssl]], [application:start(App) || App <- [crypto, public_key, ssl]],
TargetNode = get(target_node), TargetNode = get(target_node),
@ -95,9 +105,11 @@ do(Args) ->
ok -> ok ->
ok; ok;
{badrpc, timeout} -> {badrpc, timeout} ->
io:format("EMQX is still shutting down, it failed to stop gracefully " io:format(
"EMQX is still shutting down, it failed to stop gracefully "
"within the configured timeout of: ~ps\n", "within the configured timeout of: ~ps\n",
[erlang:convert_time_unit(?SHUTDOWN_TIMEOUT_MS, millisecond, second)]), [erlang:convert_time_unit(?SHUTDOWN_TIMEOUT_MS, millisecond, second)]
),
halt(1); halt(1);
{badrpc, nodedown} -> {badrpc, nodedown} ->
%% nodetool commands are always executed after a ping %% nodetool commands are always executed after a ping
@ -106,8 +118,15 @@ do(Args) ->
ok ok
end; end;
["rpc", Module, Function | RpcArgs] -> ["rpc", Module, Function | RpcArgs] ->
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function), case
[RpcArgs], 60000) of rpc:call(
TargetNode,
list_to_atom(Module),
list_to_atom(Function),
[RpcArgs],
60000
)
of
ok -> ok ->
ok; ok;
{error, cmd_not_found} -> {error, cmd_not_found} ->
@ -122,7 +141,11 @@ do(Args) ->
halt(1) halt(1)
end; end;
["rpc_infinity", Module, Function | RpcArgs] -> ["rpc_infinity", Module, Function | RpcArgs] ->
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function), [RpcArgs], infinity) of case
rpc:call(
TargetNode, list_to_atom(Module), list_to_atom(Function), [RpcArgs], infinity
)
of
ok -> ok ->
ok; ok;
{badrpc, Reason} -> {badrpc, Reason} ->
@ -132,8 +155,15 @@ do(Args) ->
halt(1) halt(1)
end; end;
["rpcterms", Module, Function | ArgsAsString] -> ["rpcterms", Module, Function | ArgsAsString] ->
case rpc:call(TargetNode, list_to_atom(Module), list_to_atom(Function), case
consult(lists:flatten(ArgsAsString)), 60000) of rpc:call(
TargetNode,
list_to_atom(Module),
list_to_atom(Function),
consult(lists:flatten(ArgsAsString)),
60000
)
of
{badrpc, Reason} -> {badrpc, Reason} ->
io:format("RPC to ~p failed: ~p\n", [TargetNode, Reason]), io:format("RPC to ~p failed: ~p\n", [TargetNode, Reason]),
halt(1); halt(1);
@ -153,7 +183,9 @@ do(Args) ->
end; end;
Other -> Other ->
io:format("Other: ~p~n", [Other]), io:format("Other: ~p~n", [Other]),
io:format("Usage: nodetool chkconfig|getpid|ping|stop|rpc|rpc_infinity|rpcterms|eval|cold_eval [Terms] [RPC]\n") io:format(
"Usage: nodetool chkconfig|getpid|ping|stop|rpc|rpc_infinity|rpcterms|eval|cold_eval [Terms] [RPC]\n"
)
end, end,
net_kernel:stop(). net_kernel:stop().
@ -174,7 +206,7 @@ parse_eval_args(Args) ->
% spaces, so this converts all of that to a single string to parse % spaces, so this converts all of that to a single string to parse
String = binary_to_list( String = binary_to_list(
list_to_binary( list_to_binary(
join(Args," ") join(Args, " ")
) )
), ),
@ -188,7 +220,7 @@ parse_eval_args(Args) ->
% then scan and parse the string % then scan and parse the string
{ok, Scanned, _} = erl_scan:string(Normalized), {ok, Scanned, _} = erl_scan:string(Normalized),
{ok, Parsed } = erl_parse:parse_exprs(Scanned), {ok, Parsed} = erl_parse:parse_exprs(Scanned),
Parsed. Parsed.
do_with_ret(Args, Name, Handler) -> do_with_ret(Args, Name, Handler) ->
@ -207,7 +239,8 @@ do_with_halt(Args, Name, Handler) ->
false -> false ->
ok; ok;
{Args1, _Rest} -> {Args1, _Rest} ->
erlang:apply(Handler, Args1), %% should halt %% should halt
erlang:apply(Handler, Args1),
io:format(standard_error, "~s handler did not halt", [Name]), io:format(standard_error, "~s handler did not halt", [Name]),
halt(?LINE) halt(?LINE)
end. end.
@ -218,7 +251,9 @@ take_args(Args, OptName, 0) ->
take_args(Args, OptName, OptArity) -> take_args(Args, OptName, OptArity) ->
take_args(Args, OptName, OptArity, _Scanned = []). take_args(Args, OptName, OptArity, _Scanned = []).
take_args([], _, _, _) -> false; %% no such option %% no such option
take_args([], _, _, _) ->
false;
take_args([Name | Rest], Name, Arity, Scanned) -> take_args([Name | Rest], Name, Arity, Scanned) ->
length(Rest) >= Arity orelse error({not_enough_args_for, Name}), length(Rest) >= Arity orelse error({not_enough_args_for, Name}),
{Result, Tail} = lists:split(Arity, Rest), {Result, Tail} = lists:split(Arity, Rest),
@ -282,16 +317,24 @@ chkconfig(File) ->
{error, Problems} -> {error, Problems} ->
lists:foreach(fun print_issue/1, Problems), lists:foreach(fun print_issue/1, Problems),
%% halt(1) if any problems were errors %% halt(1) if any problems were errors
halt(case [x || {error, _} <- Problems] of halt(
case [x || {error, _} <- Problems] of
[] -> 0; [] -> 0;
_ -> 1 _ -> 1
end) end
)
end; end;
{error, {Line, Mod, Term}} -> {error, {Line, Mod, Term}} ->
io:format(standard_error, ["Error on line ", file:format_error({Line, Mod, Term}), "\n"], []), io:format(
standard_error, ["Error on line ", file:format_error({Line, Mod, Term}), "\n"], []
),
halt(1); halt(1);
{error, Error} -> {error, Error} ->
io:format(standard_error, ["Error reading config file: ", File, " ", file:format_error(Error), "\n"], []), io:format(
standard_error,
["Error reading config file: ", File, " ", file:format_error(Error), "\n"],
[]
),
halt(1) halt(1)
end. end.
@ -304,7 +347,8 @@ check_license(Config) ->
%% start but will not be able to receive connections due to connection limits. %% start but will not be able to receive connections due to connection limits.
%% It may receive license updates from the cluster further. %% It may receive license updates from the cluster further.
case emqx_license:read_license(Config) of case emqx_license:read_license(Config) of
{ok, _} -> ok; {ok, _} ->
ok;
{error, Error} -> {error, Error} ->
io:format(standard_error, "Error reading license: ~p~n", [Error]), io:format(standard_error, "Error reading license: ~p~n", [Error]),
halt(1) halt(1)
@ -315,7 +359,7 @@ check_license(Config) ->
%% %%
consult(Str) when is_list(Str) -> consult(Str) when is_list(Str) ->
consult([], Str, []); consult([], Str, []);
consult(Bin) when is_binary(Bin)-> consult(Bin) when is_binary(Bin) ->
consult([], binary_to_list(Bin), []). consult([], binary_to_list(Bin), []).
consult(Cont, Str, Acc) -> consult(Cont, Str, Acc) ->
@ -349,7 +393,7 @@ validate([Terms]) ->
%% Some initial and basic checks for the app.config file %% Some initial and basic checks for the app.config file
get_validation_funs() -> get_validation_funs() ->
[ ]. [].
print_issue({warning, Warning}) -> print_issue({warning, Warning}) ->
io:format(standard_error, "Warning in app.config: ~s~n", [Warning]); io:format(standard_error, "Warning in app.config: ~s~n", [Warning]);
@ -363,7 +407,7 @@ print_issue({error, Error}) ->
%% for most unicode use cases anyway. %% for most unicode use cases anyway.
join([], Sep) when is_list(Sep) -> join([], Sep) when is_list(Sep) ->
[]; [];
join([H|T], Sep) -> join([H | T], Sep) ->
H ++ lists:append([Sep ++ X || X <- T]). H ++ lists:append([Sep ++ X || X <- T]).
add_libs_dir() -> add_libs_dir() ->
@ -377,7 +421,9 @@ add_libs_dir() ->
lists:foreach( lists:foreach(
fun({Name, Vsn, _}) -> fun({Name, Vsn, _}) ->
add_lib_dir(RootDir, Name, Vsn) add_lib_dir(RootDir, Name, Vsn)
end, Libs); end,
Libs
);
{error, Reason} -> {error, Reason} ->
%% rel file was been deleted by release handler %% rel file was been deleted by release handler
error({failed_to_read_RELEASES_file, RelFile, Reason}) error({failed_to_read_RELEASES_file, RelFile, Reason})
@ -405,7 +451,8 @@ add_lib_dir(RootDir, Name, Vsn) ->
%% See `emqx_gateway_schema:fields(gateway)` %% See `emqx_gateway_schema:fields(gateway)`
is_emqx_application(Name) andalso ensure_application_load(Name), is_emqx_application(Name) andalso ensure_application_load(Name),
ok; ok;
{error, _} -> error(LibDir) {error, _} ->
error(LibDir)
end. end.
is_emqx_application(Name) when is_atom(Name) -> is_emqx_application(Name) when is_atom(Name) ->

View File

@ -7,28 +7,40 @@
%% with rebar.config.erl module. Final result is written to %% with rebar.config.erl module. Final result is written to
%% rebar.config.rendered if environment DEBUG is set. %% rebar.config.rendered if environment DEBUG is set.
{edoc_opts, [{preprocess,true}]}. {edoc_opts, [{preprocess, true}]}.
{erl_opts, [warn_unused_vars,warn_shadow_vars,warn_unused_import, {erl_opts, [
warn_obsolete_guard,compressed, nowarn_unused_import, warn_unused_vars,
warn_shadow_vars,
warn_unused_import,
warn_obsolete_guard,
compressed,
nowarn_unused_import,
{d, snk_kind, msg} {d, snk_kind, msg}
]}. ]}.
{xref_checks,[undefined_function_calls,undefined_functions,locals_not_used, {xref_checks, [
deprecated_function_calls,warnings_as_errors,deprecated_functions]}. undefined_function_calls,
undefined_functions,
locals_not_used,
deprecated_function_calls,
warnings_as_errors,
deprecated_functions
]}.
%% Check the forbidden mnesia calls: %% Check the forbidden mnesia calls:
{xref_queries, {xref_queries, [
[ {"E || \"mnesia\":\"dirty_delete.*\"/\".*\" : Fun", []} {"E || \"mnesia\":\"dirty_delete.*\"/\".*\" : Fun", []},
, {"E || \"mnesia\":\"transaction\"/\".*\" : Fun", []} {"E || \"mnesia\":\"transaction\"/\".*\" : Fun", []},
, {"E || \"mnesia\":\"async_dirty\"/\".*\" : Fun", []} {"E || \"mnesia\":\"async_dirty\"/\".*\" : Fun", []},
, {"E || \"mnesia\":\"clear_table\"/\".*\" : Fun", []} {"E || \"mnesia\":\"clear_table\"/\".*\" : Fun", []},
, {"E || \"mnesia\":\"create_table\"/\".*\" : Fun", []} {"E || \"mnesia\":\"create_table\"/\".*\" : Fun", []},
, {"E || \"mnesia\":\"delete_table\"/\".*\" : Fun", []} {"E || \"mnesia\":\"delete_table\"/\".*\" : Fun", []}
]}. ]}.
{dialyzer, [ {dialyzer, [
{warnings, [unmatched_returns, error_handling]}, {warnings, [unmatched_returns, error_handling]},
{exclude_mods, [emqx_exproto_v_1_connection_unary_handler_bhvr, {exclude_mods, [
emqx_exproto_v_1_connection_unary_handler_bhvr,
emqx_exproto_v_1_connection_handler_client, emqx_exproto_v_1_connection_handler_client,
emqx_exproto_v_1_connection_handler_bhvr, emqx_exproto_v_1_connection_handler_bhvr,
emqx_exproto_v_1_connection_adapter_client, emqx_exproto_v_1_connection_adapter_client,
@ -41,13 +53,13 @@
{plt_prefix, "emqx_dialyzer"}, {plt_prefix, "emqx_dialyzer"},
{plt_apps, all_apps}, {plt_apps, all_apps},
{statistics, true} {statistics, true}
] ]}.
}.
{cover_opts, [verbose]}. {cover_opts, [verbose]}.
{cover_export_enabled, true}. {cover_export_enabled, true}.
{cover_excl_mods, {cover_excl_mods,
[ %% generated protobuf modules %% generated protobuf modules
[
emqx_exproto_pb, emqx_exproto_pb,
emqx_exhook_pb, emqx_exhook_pb,
%% taken almost as-is from OTP %% taken almost as-is from OTP
@ -56,70 +68,71 @@
%{provider_hooks, [{pre, [{release, {relup_helper, gen_appups}}]}]}. %{provider_hooks, [{pre, [{release, {relup_helper, gen_appups}}]}]}.
{post_hooks,[]}. {post_hooks, []}.
{deps, {deps, [
[ {lc, {git, "https://github.com/emqx/lc.git", {tag, "0.3.2"}}} {lc, {git, "https://github.com/emqx/lc.git", {tag, "0.3.2"}}},
, {redbug, {git, "https://github.com/emqx/redbug", {tag, "2.0.10"}}} {redbug, {git, "https://github.com/emqx/redbug", {tag, "2.0.10"}}},
, {covertool, {git, "https://github.com/zmstone/covertool", {tag, "2.0.4.1"}}} {covertool, {git, "https://github.com/zmstone/covertool", {tag, "2.0.4.1"}}},
, {gpb, "4.19.9"} {gpb, "4.19.9"},
, {typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.9.1"}}} {typerefl, {git, "https://github.com/ieQu1/typerefl", {tag, "0.9.1"}}},
, {gun, {git, "https://github.com/emqx/gun", {tag, "1.3.10"}}} {gun, {git, "https://github.com/emqx/gun", {tag, "1.3.10"}}},
, {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.4.12"}}} {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.4.12"}}},
, {gproc, {git, "https://github.com/emqx/gproc", {tag, "0.9.0.1"}}} {gproc, {git, "https://github.com/emqx/gproc", {tag, "0.9.0.1"}}},
, {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.6"}}} {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.6"}}},
, {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.9.2"}}} {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.9.2"}}},
, {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.11.1"}}} {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.11.1"}}},
, {rocksdb, {git, "https://github.com/emqx/erlang-rocksdb", {tag, "1.8.0-emqx-2"}}} {rocksdb, {git, "https://github.com/emqx/erlang-rocksdb", {tag, "1.8.0-emqx-2"}}},
, {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.17.0"}}} {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.17.0"}}},
, {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "3.3.1"}}} {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "3.3.1"}}},
, {grpc, {git, "https://github.com/emqx/grpc-erl", {tag, "0.6.12"}}} {grpc, {git, "https://github.com/emqx/grpc-erl", {tag, "0.6.12"}}},
, {minirest, {git, "https://github.com/emqx/minirest", {tag, "1.3.15"}}} {minirest, {git, "https://github.com/emqx/minirest", {tag, "1.3.15"}}},
, {ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.7"}}} {ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.7"}}},
, {replayq, {git, "https://github.com/emqx/replayq.git", {tag, "0.3.7"}}} {replayq, {git, "https://github.com/emqx/replayq.git", {tag, "0.3.7"}}},
, {pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {tag, "2.0.4"}}} {pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {tag, "2.0.4"}}},
, {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.1"}}} {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.10.1"}}},
, {rulesql, {git, "https://github.com/emqx/rulesql", {tag, "0.1.7"}}} {rulesql, {git, "https://github.com/emqx/rulesql", {tag, "0.1.7"}}},
, {observer_cli, "1.7.1"} % NOTE: depends on recon 2.5.x % NOTE: depends on recon 2.5.x
, {system_monitor, {git, "https://github.com/ieQu1/system_monitor", {tag, "3.0.3"}}} {observer_cli, "1.7.1"},
, {getopt, "1.0.2"} {system_monitor, {git, "https://github.com/ieQu1/system_monitor", {tag, "3.0.3"}}},
, {snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "1.0.8"}}} {getopt, "1.0.2"},
, {hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.40.3"}}} {snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "1.0.8"}}},
, {emqx_http_lib, {git, "https://github.com/emqx/emqx_http_lib.git", {tag, "0.5.3"}}} {hocon, {git, "https://github.com/emqx/hocon.git", {tag, "0.40.3"}}},
, {esasl, {git, "https://github.com/emqx/esasl", {tag, "0.2.0"}}} {emqx_http_lib, {git, "https://github.com/emqx/emqx_http_lib.git", {tag, "0.5.3"}}},
, {jose, {git, "https://github.com/potatosalad/erlang-jose", {tag, "1.11.2"}}} {esasl, {git, "https://github.com/emqx/esasl", {tag, "0.2.0"}}},
, {telemetry, "1.1.0"} {jose, {git, "https://github.com/potatosalad/erlang-jose", {tag, "1.11.2"}}},
, {hackney, {git, "https://github.com/emqx/hackney.git", {tag, "1.18.1-1"}}} {telemetry, "1.1.0"},
{hackney, {git, "https://github.com/emqx/hackney.git", {tag, "1.18.1-1"}}},
%% to keep in sync with mix.exs %% to keep in sync with mix.exs
, {ssl_verify_fun, "1.1.7"} {ssl_verify_fun, "1.1.7"},
%% in conflict by erlavro and rocketmq %% in conflict by erlavro and rocketmq
, {jsone, {git, "https://github.com/emqx/jsone.git", {tag, "1.7.1"}}} {jsone, {git, "https://github.com/emqx/jsone.git", {tag, "1.7.1"}}},
, {uuid, {git, "https://github.com/okeuday/uuid.git", {tag, "v2.0.6"}}} {uuid, {git, "https://github.com/okeuday/uuid.git", {tag, "v2.0.6"}}},
, {ssl_verify_fun, "1.1.7"} {ssl_verify_fun, "1.1.7"},
, {rfc3339, {git, "https://github.com/emqx/rfc3339.git", {tag, "0.2.3"}}} {rfc3339, {git, "https://github.com/emqx/rfc3339.git", {tag, "0.2.3"}}},
, {bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.1"}}} {bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.1"}}}
]}. ]}.
{xref_ignores, {xref_ignores,
[ %% schema registry is for enterprise %% schema registry is for enterprise
{emqx_schema_registry,get_all_schemas,0}, [
{emqx_schema_api,format_schema,1}, {emqx_schema_registry, get_all_schemas, 0},
{emqx_schema_api,make_schema_params,1}, {emqx_schema_api, format_schema, 1},
{emqx_schema_parser,decode,3}, {emqx_schema_api, make_schema_params, 1},
{emqx_schema_parser,encode,3}, {emqx_schema_parser, decode, 3},
{emqx_schema_registry,add_schema,1}, {emqx_schema_parser, encode, 3},
{emqx_schema_registry, add_schema, 1},
{emqx_audit, log, 2}, {emqx_audit, log, 2},
emqx_exhook_pb, % generated code for protobuf % generated code for protobuf
emqx_exproto_pb % generated code for protobuf emqx_exhook_pb,
]}. % generated code for protobuf
emqx_exproto_pb
{eunit_opts,
[ verbose
]}. ]}.
{project_plugins, {eunit_opts, [verbose]}.
[ erlfmt,
{project_plugins, [
erlfmt,
{rebar3_hex, "7.0.2"}, {rebar3_hex, "7.0.2"},
{rebar3_sbom, {rebar3_sbom, {git, "https://github.com/emqx/rebar3_sbom.git", {tag, "v0.6.1-1"}}}
{git, "https://github.com/emqx/rebar3_sbom.git", {tag, "v0.6.1-1"}}}
]}. ]}.