Commit Graph

589 Commits

Author SHA1 Message Date
Shawn c6c314de1a fix(hocon): update hocon to 0.19.6 2021-10-14 15:09:37 +08:00
William Yang b0c27c74fd feat(olp): bump lc to 0.1.1 2021-10-12 00:00:20 +02:00
William Yang 9ecb7821f9 feat(olp): use tagged deps libs 2021-10-06 10:38:39 +02:00
William Yang e9710ade14 feat(olp): first commit for overload protection
- add lc app
- add alarm handler for lc runq alarm
- backoff when handling CONNECT message
- close new connswhen overload
2021-10-01 16:14:38 +02:00
Shawn a9185f964e
fix(rules): improve specs and logs (#5821)
Co-authored-by: Zaiming Shi <zmstone@gmail.com>
2021-09-27 21:10:48 +02:00
zhongwencool 5280f83651
Merge pull request #5784 from zhongwencool/delayed-api-schema
feat(delayed_api): support hocon schema
2021-09-27 13:45:17 +08:00
zhongwencool 776604a90b chore(dashboard): make dirty operation into ekka_mnesia transation 2021-09-26 21:42:26 +08:00
JianBo He f3c675b139 chore(deps): upgrade esockd to 5.8.3 2021-09-26 15:19:55 +08:00
zhongwencool 8c441673c2 feat(delayed_api): support hocon schema 2021-09-24 15:22:05 +08:00
Zaiming Shi 4f638b8242 fix(schema): upgrade to hocon 0.19.5
renamed no_conversion option to only_fill_defaults
2021-09-23 16:57:15 +02:00
Zaiming Shi fbd5701989 fix(emqx_schema): make ssl config schema right 2021-09-23 16:56:02 +02:00
zhongwencool dab5fbf285 feat(swagger): swagger support hocon schema 2021-09-21 21:41:16 +08:00
JianBo He cfabb8549e build(deps): upgrade emqx_http_lib to 0.4.1 2021-09-17 18:13:57 +08:00
Zaiming Shi 16c652586b fix(deps): pin typerefl verison from root rebar.configs 2021-09-16 23:16:31 +02:00
JimMoen deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
Shawn cb8dabe579 feat(bridges): add CRUD HTTP APIs for bridges 2021-09-15 17:46:42 +08:00
Zaiming Shi 6b7d3bcf98 chore(hocon): upgrade to 0.17.0 2021-09-10 07:27:01 +02:00
zhouzb e998770f2e refactor(authn): refactor to support global and listener authentication 2021-09-06 18:46:08 +08:00
DDDHuang f514f0c89b
feat: minirest support swagger UI new version (#5658) 2021-09-06 11:36:56 +08:00
Zaiming Shi ec13463f4a refactor(schema): prepare for hocon schema doc generation 2021-09-03 11:02:31 +02:00
DDDHuang c4e279bb76
fix: support https (#5606)
* fix: support https
2021-09-01 16:44:34 +08:00
Zaiming Shi 9e4c7b5f76 chore(config): upgrade to hocon 0.14.0 2021-08-30 09:56:03 +08:00
William Yang 341df69166
Merge pull request #5584 from qzhuyan/dev/william/5.0-quic-support-2
quicer 0.0.8
2021-08-27 10:29:42 +02:00
zhanghongtong 6f8c87001f chore(authz): add default config
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-27 15:08:56 +08:00
William Yang 6186fa29a0 feat(quic): bump to emqtt 1.4.3 2021-08-27 08:36:43 +02:00
zhongwencool f02a554502 fix: ctrl+c break cause badarg, bump observer_cli to 1.7.1 2021-08-27 13:55:49 +08:00
zhongwencool 468102f462 chore: replace recon by obsserver_cli 1.7.0 2021-08-27 13:55:49 +08:00
zhongwencool 6957445554 chore(recon): add observer_cli to emqx_ctl 2021-08-27 13:55:49 +08:00
Turtle e4f5e9332e feat: support array bridge_mqtt conf 2021-08-25 13:34:00 +08:00
Turtle e0c05242a7 refactor(minirest-callback): refactor minirest callback function 2021-08-24 18:19:21 +08:00
k32 2b976af9ea chore(ekka): Bump version to 0.10.8 2021-08-23 14:10:26 +02:00
k32 53a0c8b8a8 chore(ekka): Bump version to 0.10.7 2021-08-21 17:47:34 +02:00
zhouzb d409cb83ff chore(authn): update tag of esasl 2021-08-19 16:01:55 +08:00
Shawn 1c86bd6199 feat(emqx_config): add emqx_config:fill_defaults/1 2021-08-12 17:20:05 +08:00
k32 5abec37098 chore(build): Globally set snk_kind macro to msg 2021-08-11 14:03:41 +02:00
DDDHuang b50afba5b9 feat: add dash board metrics 2021-08-09 16:20:02 +08:00
tigercl 40a9932167
Merge pull request #5427 from tigercl/feat/redis-authn
feat(authn redis): support authn with redis
2021-08-09 11:11:37 +08:00
zhouzb 3761db0525 feat(authn redis): support authn with redis 2021-08-06 14:05:31 +08:00
Zaiming Shi 255d97ae1e build: update few dependencies for otp 24 build 2021-08-04 12:38:51 +02:00
Zaiming Shi df69a9c031 chore: upgrade to hocon 0.11.0 2021-08-01 09:36:59 +02:00
Turtle 6673f62c5e chore: update minirest version 2021-07-30 11:48:03 +08:00
Zaiming Shi cf1246f026 feat(emqx_config): allow loading configs from binary
This will be helpful for tests
2021-07-30 09:18:43 +08:00
Zaiming Shi 0ab713050d fix(emqx_schema): call new hocon_schema API to get field value 2021-07-27 09:26:37 +02:00
tigercl 4dea41f8a2
Merge pull request #5319 from tigercl/feat/authn-http-api
feat(authn): provide http api and improve update mechanism
2021-07-27 11:16:59 +08:00
Turtle b2b9847c0e chore: upgrade minirest to 1.1.6 2021-07-26 21:35:28 +08:00
Turtle 5b83193413 chore: upgrade minirest to 1.1.5 2021-07-26 18:38:26 +08:00
zhouzb 7d2aac7e24 feat(http pipelining): support to switch http pipelining 2021-07-26 14:41:15 +08:00
DDDHuang 2b12fa1c05 chore: api code format; fix: atom refname; update minirest version 2021-07-23 16:40:19 +08:00
Zaiming Shi 051ac91299 fix(rebar.config): upgrade to ekka 0.10.4 2021-07-21 11:54:32 +02:00
Shawn 1d2cb6cb81
Merge branch 'master' into emqx_config 2021-07-17 15:53:12 +08:00
zhanghongtong bb417e4498 feat(authz): support http
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-17 15:48:29 +08:00
Shawn 4d279e47d8 chore(merge): merge code from master 2021-07-17 01:20:57 +08:00
turtleDeng fc13c59d7b
chore: use hocon to replace cuttlefish 2021-07-16 23:52:43 +08:00
DDDHuang 92ae5663a6 feat: update to openapi 3.0.0 2021-07-16 23:26:56 +08:00
turtleDeng cde4b9092a
chore: update hocon tag 2021-07-16 20:00:18 +08:00
Shawn bb6d7c4e0b
Merge branch 'master' into emqx_config 2021-07-16 16:49:50 +08:00
k32 9d9d9f2ce3
Merge pull request #5227 from k32/dev/bump_ekka
chore(ekka): Bump version to 0.10.3
2021-07-15 17:09:59 +02:00
Shawn ba166967c9
Merge branch 'master' into emqx_config 2021-07-15 18:44:56 +08:00
zhouzb 5ecc992944 chore(authn): fix coap authn and update tag for esasl 2021-07-15 14:25:23 +08:00
Shawn f6702b020e fix(hocon): update hocon version to 0.10.1 2021-07-15 13:57:24 +08:00
Shawn 533f4cf63e fix(dialyzer): some dialyzer complains 2021-07-15 13:52:06 +08:00
Shawn 7d66760c1e fix(hocon): start emqx failed using os env configs 2021-07-15 11:55:31 +08:00
k32 3bb41ae367 chore(ekka): Bump version to 0.10.3 2021-07-14 17:49:31 +02:00
zhouzb 6a8e35ce3a feat(one authn): merge simple authn and enhanced authn 2021-07-14 16:54:13 +08:00
Shawn 8e32d5314d
Merge branch 'master' into emqx_config 2021-07-14 09:33:58 +08:00
zhanghongtong 9081a22b8c chore(deps): deps in rebar must not be use branch
Can use tags or commit ids in rebar deps

Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-07-12 18:28:47 +08:00
tigercl df92a60085
feat(http connector): support http connector (#5192)
- support http connector
- support http authn
2021-07-12 15:35:06 +08:00
DDDHuang d04e1c6f54
refactor: clients api; status api; adapter minirest v1
The serious influence:
authn:
api
authz:
api; api test suit
dashboard:
all closed
lwm2m:
api;
modules:
api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
api
retainer:
api; api test suit
rule_engine:
api: api test suit
telemetry:
api
2021-07-12 10:05:51 +08:00
Zaiming (Stone) Shi 6b3cfd7c5d
fix(boot): boot exit on config error (#5200)
* fix(hocon): fail on hocon command errors

call_hocon bash function respects exit code

* fix(bin/emax): get dist_port config from hocon

after config file refactoring (to hocon format) the grep pattern
no longer works

* fix(bin/emqx): set -o pipefail

* feat(bin/emqx): add a DEBUG option
2021-07-10 08:51:35 +08:00
DDDHuang c11a8c6db6 refactor: clients api; status api; adapter minirest v1
The serious influence:

authn:
    api
authz:
    api; api test suit
dashboard:
    all closed
lwm2m:
    api;
modules:
    api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
    api
retainer:
    api; api test suit
rule_engine:
    api: api test suit
telemetry:
    api
2021-07-09 18:09:07 +08:00
William Yang 79d169b3ff chore(quic): bump emqtt vsn to 1.4.2 2021-07-07 13:41:47 +02:00
William Yang 1f20bae392 feat(quic): conditionally build/start quicer app 2021-07-07 13:41:47 +02:00
William Yang 6adb76cf27 ci: try 32bit fix from quicer 2021-07-07 13:41:43 +02:00
Shawn 477097c062 chore(project): merge code from master 2021-07-07 19:32:52 +08:00
Shawn a884d215e1 fix(connection): start connection failed 2021-07-05 13:50:37 +08:00
William Yang 72117f3f1d feat(quic): bump emqtt and quicer version
emqtt: 1.4.1
quicer: 0.0.5
2021-07-02 17:10:56 +08:00
k32 cc5bc4f7ca build(rlog): Add xref check for forbidden mnesia APIs 2021-06-29 00:27:53 +02:00
William Yang 5571c54607
Merge pull request #5002 from qzhuyan/dev/william/quic-support-centos7
Quic support part 1
2021-06-28 10:49:44 +02:00
Rory Z e949cdca98 chore: delete import and export feature 2021-06-28 11:44:01 +08:00
Rory Z 6f0f670550 feat(redis connector): redis connector support cluster (#5074) 2021-06-28 11:43:48 +08:00
Shawn 36c7785fd0 The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-28 11:43:48 +08:00
k32 198e3c03e0 feat(emqx_management): mqtt_app shard 2021-06-28 11:43:48 +08:00
Rory Z 39e4d348f6 feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-28 11:43:48 +08:00
Shawn e2d96e46a0 change resource,connectors,data_bridges as normal apps (#5034) 2021-06-28 11:43:31 +08:00
Zaiming Shi 1fca3cd1b5 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-28 11:43:31 +08:00
Shawn 501b9c9435 fix(minirest): encode response message failed (#4965) 2021-06-28 11:39:50 +08:00
Rory Z 4157524910
feat(redis connector): redis connector support cluster (#5074) 2021-06-25 11:47:57 +08:00
Shawn 704af9f3b1
The config handler phase2 (#5052)
* refator(config_handler): handle and validate the updates to raw_configs

* fix(hocon): update hocon to 0.8.0

* refactor(config_handler): check and apply envs only in top-level handler

* refactor(config_handler): update config from top level to bottom level

* refactor(emqx_data_bridge): move configs to emqx.conf

* fix(emqx_schema): remove the extra config path

* fix(config_handler): load the emqx.conf when starting emqx_config_handler

* fix(data_bridge): API not working

* feat(config_handler): save updated configs to emqx_override.conf

* fix(config_handler): cannot find the emqx.conf and emqx_override.conf

* fix(emqx_config): cannot find the correct path for etc dir

* fix(test): load load emqx_schema foreign refereced apps

* refactor(emqx_plugin): do not generate configs before load plugins

All configs (including the configs for plugins) now should go into
the `emqx.conf`.

* fix(tests): update the test cases for plugins

* fix(tests): don't include schema from apps when testing

* fix(tests): use emqx-ct-helper branch hocon
2021-06-25 11:47:18 +08:00
k32 a14ab5f90a
Merge pull request #5053 from k32/dev/mgmt-shard
feat(emqx_management): mqtt_app shard
2021-06-23 19:42:47 +02:00
Rory Z 263aaff6d6
feat: add authz (#4852)
* feat(authorization): add authorization api

* feat(authorization): add check function

* feat(authorization): use hocon config file

* feat(authz): add mysql connector

* feat(authz): support pgsql

* feat(connector): support redis

* chore(authz): use "publish/subscribe/all" instead of "pub/sub/pubsub"
2021-06-23 10:55:38 +08:00
k32 239255f251 feat(emqx_management): mqtt_app shard 2021-06-21 18:02:11 +02:00
Shawn 8978464269
change resource,connectors,data_bridges as normal apps (#5034) 2021-06-19 16:27:21 +08:00
Zaiming Shi 6865f36d90 chore(rebar.config): use hocon 0.6.0
hocon 0.6.0 added supports for sensitive config flagging
sub-struct type checking, and remote struct referencing
2021-06-18 09:02:25 +08:00
William Yang fd785240f5 feat(quic): bump quicer to 0.0.3 2021-06-17 09:03:10 +02:00
William Yang af2faed107 feat(quic): switch to deps on emqx quicer repo 2021-06-17 09:03:10 +02:00
k32 6505340cb8 feat(rlog): Introduce routing RLOG shard 2021-06-16 16:05:10 +02:00
turtleDeng 0515ef6e45
feat(connector): add more connector (#4985) 2021-06-16 11:28:26 +08:00
William Yang 3200bbb301 fix(build): test with centos branch 2021-06-15 15:36:04 +02:00
William Yang 14057c033d feat(quic): support stop/start quic listeners. 2021-06-15 15:36:03 +02:00
William Yang 9570d01792 fix(quic): error handling for getstats.
- return {error, closed} instead
- quicer demo/3 branch.
2021-06-15 15:36:03 +02:00
William Yang 087aa1dd53 feat(quic): handle stream close. 2021-06-15 15:36:03 +02:00
William Yang 899ba579fc feat(quic): compile and start quicer listener. 2021-06-15 15:36:03 +02:00
Zaiming Shi 909814a34d fix(hocon): pin hocon 0.5.1 2021-06-15 12:35:07 +02:00
k32 13803f9159 feat(rlog): Add RLOG to EMQX 2021-06-14 15:05:36 +02:00
zhanghongtong 3b21ad7225 Merge branch master into main-v4.3 2021-06-11 09:27:46 +08:00
zhouzb 2769eb7751 fix(ehttpc): update ehttpc tag to fix bad log 2021-06-10 10:49:12 +08:00
Zaiming Shi 1715b87dce chore: move root level src, test, include, priv and etc to apps/emqx 2021-06-07 09:09:28 +02:00
Zaiming (Stone) Shi 65a660aaea
Merge pull request #4903 from emqx/resolve-master-dev/v5.0-conflict-release-version
Auto-pull-request-on-2021-05-31
2021-06-05 15:31:21 +02:00
Zaiming (Stone) Shi ee48c961d0
Merge branch 'dev/v5.0' into license-conf 2021-06-05 13:18:58 +02:00
Zaiming (Stone) Shi 5dab6985c1
Merge branch 'dev/v5.0' into resolve-master-dev/v5.0-conflict-release-version 2021-06-05 11:51:02 +02:00
Zaiming Shi da6a8e3991 chore(http_lib): use lib app 2021-06-05 10:45:38 +02:00
z8674558 9c6276a654 chore(bin/emqx): support license conf option 2021-06-04 22:10:16 +09:00
z8674558 b4eb0c4df6 chore(bin/emqx): use hocon get 2021-06-03 17:03:08 +09:00
Zaiming Shi f7bd206b9b chore: pin cuttlefish 4.0.1 2021-06-02 14:18:00 +02:00
z8674558 52e69b20b4 chore(rebar.config): bump hocon; no more unused import 2021-06-02 16:55:26 +09:00
z8674558 9cb2facfe1 chore(emqx_resource): unify dependency hocon to root rebar.config 2021-06-01 21:05:04 +09:00
Zaiming Shi b485c75266 fix: emqtt performance
emqtt 1.2.3.1 has the fix for big binary concatenation performance
2021-06-01 17:29:16 +08:00
z8674558 4b174b0277 feat(conf): use hocon schema 2021-06-01 17:05:52 +09:00
Zaiming (Stone) Shi 913420588d
Merge branch 'dev/v5.0' into resolve-conflict-to-5.0 2021-05-31 09:17:21 +02:00
DDDHuang 9d1f6ccc4b chore: ekka support etcd v3 2021-05-31 09:07:52 +08:00
Zaiming Shi f2262469cc build: pin gpb 4.11.2
gpb is only to compile protobuf,
it is not included in release tarball.
for some reason rebar3 fetches an unknown version without this pin
2021-05-27 19:38:51 +02:00
k32 812faf08a1 chore(logger): Update snabbkaffe to 0.13.0 2021-05-25 21:15:59 +02:00
z8674558 31cbb7aa97 Merge branch 'master' of github.com:emqx/emqx into merge-master 2021-05-25 12:50:50 +09:00
Zaiming Shi e82e24d21f fix: pin cuttlefish v3.3.5
this cuttlefish release has only changes in a test module
2021-05-24 15:15:37 +02:00
zhouzb 09f51e51bd chore(update dep): update right tag for ehttpc 2021-05-14 19:27:04 +08:00
zhouzb c6771a57b6 chore(update dep): update dep of ehttpc 2021-05-14 19:27:04 +08:00
Zaiming Shi 814588d1c8 Merge remote-tracking branch 'origin/master' into resolve-conflict-master-to-v5.0 2021-05-07 22:24:38 +02:00
Zaiming Shi ec69e51386 build: pin cuttlefish v4.0.0 (hocon) 2021-05-07 21:46:04 +02:00
zhanghongtong 6595d53962 build(relup): update build script for support relup 2021-05-07 21:25:10 +02:00
Zaiming Shi 30c214d64b build: fix relup hook point name 2021-05-07 14:04:15 +02:00
z8674558 3c4e95a246 chore(rebar.config): cuttlefish 3.3.3 -> 3.3.4 2021-05-07 10:41:03 +00:00
Zaiming Shi d904a1048b Merge remote-tracking branch 'origin/master' into merge-master-to-dev/v5.0 2021-04-30 15:09:31 +02:00
wwhai 4facf4afe0 fix(deps): change ecpool to 0.5.1 2021-04-28 09:50:31 +08:00
k32 6d4da4a01a chore(snabbkaffe): Update version to 0.12.0 2021-04-26 14:20:52 +02:00
wwhai 92e8ba574c fix(deps): update ecpool to 0.5.2 2021-04-26 15:15:30 +08:00
Shawn ab5b4beffe fix(gen_rpc): the port discovery not working on a large offset 2021-04-25 13:58:33 +08:00
Zaiming Shi dad7d9c597 fix(config): pin cuttlefish 3.3.3
to be backward compatible to 4.2.x
cuttlefish 3.3.3 includes a fix to handle empty string
environment variable translated to 'undefined', but not `""`
2021-04-19 08:39:26 +02:00
zhouzb 9bedd1bb4f chore(ehttpc): update tag of ehttpc 2021-04-15 21:47:20 +08:00
Zaiming Shi 0a092c8ba0 chore(build): pin ekka 0.8.1
wait mnesia table
2021-04-13 19:38:34 +02:00
zhanghongtong be36e51f6e feat(redis): redis sentinel support ssl connect 2021-04-13 14:42:08 +08:00
z8674558 b0c3c713b5 Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-13 00:09:17 +09:00
z8674558 d010830de8 chore(rebar.config): bump cuttlefish 2021-04-12 07:30:02 +00:00
Zaiming Shi 2a9a5e74d7 fix(bin/emqx): print cuttlefish error 2021-04-10 08:48:13 +00:00
Yudai Kiyofuji e3a5f65c88
feat(config): print override env (#4517) 2021-04-09 16:28:01 +02:00
Zaiming Shi d033d71982 chore(build): Pin snabbkaffe 0.10.0 2021-04-08 00:02:27 +02:00
z8674558 62f1bd8120 chore(rebar.config): use z8674558/cuttlefish temporalily 2021-04-07 20:29:53 +09:00
z8674558 971e6ca90e Merge branch 'master' of github.com:emqx/emqx into merge-master-to-v5 2021-04-07 20:29:08 +09:00
z8674558 9db5452b6c refactor(emqx.schema): use override_env to support alternative env 2021-04-05 17:04:01 +09:00
z8674558 299d489ef9 refactor(bin/emqx): use cuttlefish `get` to get values from .conf 2021-04-02 08:42:58 +02:00
Zaiming Shi 236f75b33b chore(rebar.config): Snabbkaffee should be a default dependency 2021-03-30 10:08:13 +02:00
Karol Kaczmarek ac7d097f16 chore(deps): minirest 0.3.5 2021-03-20 15:21:31 +01:00
Zaiming Shi 8e45fa1c8b feat(observer_cli): Add observer_cli 2021-03-13 18:50:18 +01:00
Zaiming Shi 5f064a8e42 chore(test): enable cover only when necessary
So that ad-hoc ./rebar3 eunit and ct can run faster
2021-03-11 19:06:03 +01:00
z8674558 efd4ef8091 Merge branch 'dev/v5.0' of private:emqx/emqx into fix-merge-conflict-master-to-5.0 2021-03-04 22:12:09 +09:00
Zaiming Shi 6fb5c9de42 chore(deps): upgrade replayq to version 0.3.2 2021-03-02 18:10:26 +01:00
Zaiming Shi dd06d70bce refactor(build): Move parse_transform module to root app
So we do not have to workaround the compile order issue
2021-03-02 08:40:19 +08:00
Zaiming Shi 5edef84332
Merge branch 'dev/v5.0' into fix-merge-conflict-master-to-5.0 2021-03-01 19:58:16 +01:00
Zaiming Shi ddadece0b2 chore(build): include emqx version as compile info 2021-02-28 21:56:47 +01:00
Zaiming Shi c54636b6c2 chore(build): inject emqx_vsn to all modules as attribute 2021-02-26 22:26:19 +01:00
z8674558 74b7ea34d9 feat(bin): let cuttlefish read env var 2021-02-19 01:09:06 +09:00
Zaiming Shi d4a43aa85c
Merge pull request #4189 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-02-13
2021-02-13 21:36:01 +01:00
JianBo He e3d19b03c5 chore(deps): upgrade cowboy to 2.8.2 2021-02-13 18:29:39 +08:00
Zaiming Shi 55253f914c
Merge pull request #4149 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-02-04
2021-02-04 23:17:10 +01:00
JianBo He 52c747ca6b chore(cover): add coverall back 2021-02-04 14:22:17 +08:00
z8674558 e8729fb00e Merge branch 'dev/v5.0' of private:emqx/emqx into merge430 2021-01-29 17:11:12 +09:00
JianBo He 9d465ac81f chore(deps): upgrade replayq to 0.3.1 2021-01-28 16:24:42 +08:00
Zaiming Shi c422b200be
Merge pull request #4088 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-27
2021-01-27 22:02:52 +01:00
JianBo He 02cb8d0211 chore(style): set warnings_as_errors compile option 2021-01-27 18:02:12 +08:00
Zaiming Shi 937390fe0f
Merge pull request #4072 from emqx/dev/v4.3.0
Auto-pull-request-on-2021-01-25
2021-01-25 22:05:03 +01:00
Zaiming Shi 17d70772a8 refactor(emqx_recon): Use latest version recon
Moved recon dependency from emqx_recon to root
2021-01-23 11:42:28 +01:00
Zaiming Shi b9071394c4 Merge remote-tracking branch 'origin/dev/v4.3.0' into chore-merge-v430-to-v50 2021-01-21 23:53:12 +01:00
Yudai Kiyofuji 455f210b4c
feat(cuttlefish): use hocon as a parsing function (#4008)
* chore(conf): add quotation for hocon

* chore(conf): fix paths incompatible with hocon

* chore(conf): use hocon as parsing function

* chore(docker): add quotation to some env variables for hocon
2021-01-19 19:52:17 +09:00
JianBo He 7df1dea4db
perf(esockd): upgrade esockd to 5.8.0 (#4018)
To better support hot upgrades, in esockd 5.8.0 we
avoid saving anonymous functions in state.
2021-01-15 18:54:43 +08:00
Zaiming Shi 765e37ea26 fix(ekka): Upgrade to 0.8.0 to allow remsh
Before ekka 0.8.0, when epmd is not used, ekka_dist would calculate
a port number from node name. This does not work for remote consoles
because a remsh node name is like remsh81random0-<target-node>
i.e. the calculated port number is always the same as the target node.

The fix in 0.8.0 allows remsh prefixed nodes to use a range of
ports to listen.
2021-01-15 08:59:20 +01:00
ayodele.akingbule 50981a976d chore(minirest): dependency update 2020-12-25 07:42:01 +08:00
ayodele.akingbule 61d73ea530 chore(dialyzer): optimize dialyzer run 2020-12-23 11:33:02 +01:00
Zaiming Shi 0fe86341af chore(build): mod_vsn parse_transform is not for default profile
Since plugins are compile as default profile, the parse_transform
provided by relup_helper may not present when compiling other plugins
2020-12-16 14:29:03 +01:00
Zaiming Shi 59346a1103 chore(build): remove relup_helper untar post hook for now 2020-12-16 09:22:47 +01:00
Zaiming Shi 4fbc64d84e chore(release): Add OTP_VERSION file to release dir 2020-12-14 10:58:44 +01:00
Shawn 10dbb5bc96
Fix testcases warns (#3906) 2020-12-11 18:54:48 +08:00
Zaiming Shi 7bdd093ef5 Merge remote-tracking branch 'origin/dev/v4.3.0' into umbrella-fix-build 2020-12-11 08:55:57 +01:00
Zaiming Shi de233bc234 chore(build): Ensure etc dirs are copied to build dir 2020-12-11 08:19:26 +01:00
Zaiming Shi d4fb3f99fe chore(xref): Ignore xref checks for enterprise and generated modules
Schema registry is so far only used in enterprise edition.
Ignore xref for generated modules for protobuf
2020-12-11 08:19:26 +01:00
Zaiming Shi b2d3358368 chore(rebar): Move no_debug_info to per-profile config 2020-12-10 11:43:28 +01:00
Zaiming Shi 4cfe4e9940 fix(eqmx_sasl): Dialyzer warning 2020-12-10 11:22:38 +01:00
Zaiming Shi 8a86593cae fix(xref): Ignore xref for generated modules for protobuf 2020-12-10 09:24:19 +01:00
Zaiming Shi 75645950f9 chore(xref): Ignore xref checks for enterprise modules
Schema registry is so far only used in enterprise edition.
2020-12-10 09:24:10 +01:00
tigercl 83fc76586c
fix(ekka): update ekka version to fix oom (#3871) 2020-12-10 15:04:19 +08:00
JianBo He bc8ddb7213 chore(deps): update some deps version 2020-12-09 14:21:54 +08:00
Zaiming Shi 8fe889dd14 refactor(rebar.config): make use of rebar.config.erl 2020-12-06 23:38:14 +01:00
Zaiming Shi a6fde38d45 chore(bbmustache): upgrade to 0.10.0 as what rebar3 uses 2020-12-06 16:06:04 +01:00
Zaiming Shi 82c14c75e2 refactor(build): Delete _checkouts
The `_checkouts` directory was handy when we had to git clone
rebar dependencies in a release project and make changes inside

Now since this is an umbrella project, there is no reason to keep it
2020-12-05 19:48:44 +01:00
Zaiming Shi 036eda27f6 chore(rebar): Delete profiles from apps' rebar.config
otherwise rebar3 crashes
2020-12-05 13:36:56 +01:00
Zaiming Shi 0fb5fb31a5 refactor(proj) sync 4.3.0 plugins with tracked files 2020-12-05 02:43:04 +01:00
Zaiming Shi 73d02beace refactor(apps): Merge emqx_libs back to emqx
And move emqx app back to root level

After realising the challenges of developing plugins in standalone
rebar projects. it is perhaps more smooth to keep using emqx as
a rebar dependency
2020-12-04 19:58:58 +01:00
Zaiming Shi e236196fa6 refactor(emqx_auth_mnesia): use tag e4.2.2
Removed emqx_auth_clientid and emqx_auth_username
because the new version emqx_auth_mnesia has all the features included
2020-12-03 12:52:59 +01:00
Zaiming Shi dab57b0f0f chore(build): Update rebar3
This rebar3 puts a stamp to app build output dir
skips re-build if alreay built
2020-11-27 21:41:11 +01:00
Zaiming Shi 36c9360c04 refactor(build): Merge all plugins
Otherwise rebar runs in a dead-loop
2020-11-27 01:03:40 +01:00
terry-xiaoyu 0cd1c57a54 Migrate plugins from tag 4.2.2 2020-10-31 12:10:19 +08:00
Zaiming Shi 84d31a1d7a feat(build): deterministic compile option 2020-10-31 11:08:54 +08:00
terry-xiaoyu 151d820058 feature(project): change to rebar3 umbrella project 2020-10-31 11:07:25 +08:00
JianBo He 485bffadd6 refactor(exhook): improve the exhook implementation 2020-10-31 10:24:28 +08:00
JianBo He bcd98bda1c chore(esockd): upgrade esockd to 5.7.4 2020-10-24 15:49:15 +08:00
JianBo He 06b9b6e6b0 chore: update esockd version to fix ssl:getstat/2 for dtls connection 2020-09-29 15:35:16 +08:00
terry-xiaoyu 2b603bfd11 feature(gen_rpc): support a stateless port discovery 2020-08-28 17:10:26 +08:00
JianBo He 3c7ef74a7a chore(deps): upgrade ekka to 0.7.4 2020-08-14 16:58:08 +08:00
JianBo He 83a2af812f feat(ratelimit): refactor ratelimit 2020-07-31 18:07:20 +08:00
Rory Z 492d224728
Auto-pull-request-on-2020-07-17 (#3600)
* refactor(channel): skip the ACL checking for inner subscribe
* fix(props): fix the prop_emqx_sys results of judgment
* Update esockd to 5.7.1
* test(topic-metrics): add test cases for topic metrics
* perf(emqx_vm): make emqx_vm:get_memory/0 more efficiency
2020-07-17 18:25:46 +08:00
terry-xiaoyu 66144629bf feature(json) update jiffy to 1.0.5 2020-06-20 15:00:24 +08:00
JianBo He 9a8859a44c refactor(topic): move triples/1 func into emqx_trie module 2020-06-18 17:38:34 +08:00
JianBo He 1700a7a98a refactor(test): put all property cases to test/props directory 2020-06-18 17:38:34 +08:00
JianBo He ee757402ad chore(deps): upgrade esockd to 5.6.2
esockd: avoid the `ssl_close_timeout` send to channel
2020-06-04 10:37:05 +08:00
JianBo He 639d0ca25e Upgrade ekka to 0.7.3 2020-05-22 09:27:23 +08:00
zhouzb b3505c6799 Update minimum erlang/otp version 2020-04-30 16:33:53 +08:00
turtled 5f4417c193 Update rebar.config 2020-04-26 20:55:18 +08:00
JianBo He 4bb2497118 Update jiffy to 1.0.4 2020-04-12 11:38:07 +08:00
JianBo He e492260fe8 Change travis-ci to github action 2020-03-21 13:40:16 +08:00
JianBo He 3c459e8e74
Compatible jsx encode/decode (#3230) 2020-02-04 16:18:19 +08:00
Feng Lee 462e3974ad no_debug_info > debug_info 2020-01-19 19:45:46 +08:00
Feng Lee f278a07190 Upgrade emqtt and emqx-ct-helper deps
- Upgrade emqtt to v1.2.0
- Upgrade emqx-ct-helpers to v1.2.2
2020-01-19 19:31:36 +08:00
Feng Lee d8c3c86dca Upgrade esockd and ekka deps
- Upgrade esockd to 5.6.1
- Upgrade ekka to 0.7.2
2020-01-19 18:54:36 +08:00
Feng Lee 35354a3451 Change the 'override' to 'add' 2020-01-19 18:38:52 +08:00
Feng Lee cce6b462b4 Update erl_opts and add 'compressed' opt for edge 2020-01-19 18:38:52 +08:00
Feng Lee b3e2cc5a18 Replace 'jsx' with 'jiffy' to optimize json encode/decode 2020-01-19 16:58:51 +08:00
Feng Lee 635c3f75fe Improve the 'emqx_connection' module for CT 2019-12-16 11:25:47 +08:00
Feng Lee 27fec04ec9 Depends on 'emqx/cowboy' v2.8.1 2019-12-16 11:25:47 +08:00
Feng Lee adf785ac46 Upgrade deps to ekka v0.7.1 2019-11-18 11:01:30 +08:00
Feng Lee 4935ba11a8 Upgrade deps to ekka v0.7.0 and esockd v5.6.0 2019-11-18 10:40:53 +08:00
Feng Lee 480a9f9e92 Add 'minimum_otp_vsn' option 2019-11-14 20:41:48 +08:00
terry-xiaoyu 7df8d0246c Update esockd to v5.5.2 2019-11-01 18:39:46 +08:00
Feng Lee 1a5c10bd6f Depends on 'develop' branch of emqtt 2019-09-24 15:47:36 +08:00
turtleDeng de37d62054
Update rebar.config (#2877) 2019-09-06 20:42:26 +08:00
Zhiwei Yu 8710df31b2 Monitor cluster partition event (#2814) 2019-08-23 09:42:55 +08:00
Gilbert 79744af681 Wrapper proper test cases into common test cases (#2785)
* Wrapper proper test cases into common test cases

* Improve test cases for reason code module (#2789)

* Split 3 proper tests into 3 ct cases

* Improve test cases for client, rpc and request-response

* Add psk suites to increase coverage

* Add sys test cases
2019-08-16 18:07:12 +08:00
turtled dcefcd16ab Fix conflicts 2019-08-09 16:41:56 +08:00
turtled 91a8dbda56 Fix conflicts 2019-08-09 16:41:11 +08:00
GilbertWong 9268d23b92 Use ekka 0.6.0 2019-08-09 16:34:42 +08:00
Gilbert 96b341fde5
Add proper tests for base62 (#2761)
* Add proper tests for base62

* Delete useless comment
2019-08-07 09:24:03 +08:00
GilbertWong 3230c25b56 Delete replayq from emqx 2019-08-06 10:38:58 +08:00
Feng Lee 19a9e30768
Merge branch 'develop' into introduce-proper-testing-framework 2019-08-06 10:14:21 +08:00
GilbertWong 4e0aeee93d Import emqtt library into emqx for test cases 2019-08-06 09:43:10 +08:00
Feng Lee f60f127681 Improve the moudules and fix the bugs found in new test cases
- Fix the bug that emqx_mountpoint:unmount/2 will throw exception
- Add emqx_banned:info/1 for test cases
- Rename macro TRIE in emqx_trie module to TRIE_TAB
- Rename macro TRIE_NODE in emqx_trie module to TRIE_NODE_TAB
- Rename macro ROUTE in emqx_router module to ROUTE_TAB
2019-08-06 09:05:55 +08:00
terry-xiaoyu c5ff902974 Update gen_rpc to 2.4.1 2019-07-26 14:46:24 +08:00
GilbertWong 07d815b3f7 Update gen_rpc tag to 2.4.0 2019-07-23 14:45:24 +08:00
turtled 49afbdabda Update ekka tag 2019-07-19 18:03:53 +08:00
turtled caf6dab808 Support K8S hostname auto discovery cluster 2019-07-19 18:03:53 +08:00
GilbertWong c23be3e15d Update ekka tag 2019-07-11 15:41:36 +08:00
Gilbert 20188f9189 Optimize develop workflow and support make run and code hot swapping (#2644)
* Optimize develop workflow and support make run and code hot swapping
2019-06-21 20:52:27 +08:00
GilbertWong bcae452e42 Fix the flapping bug
Prior to this change, the banned until value will not be set
correctly because of wrong spell of config entry name .

This change fix this bug
2019-06-20 10:59:42 +08:00
terry-xiaoyu ebeb2c5545 Compile emqx_logger first 2019-06-18 14:37:32 +08:00
Gilbert Wong e7cd32edb7 Update esockd deps and fix compile warning 2019-05-31 15:21:59 +08:00
terry-xiaoyu e29cde60a9 Update ekka to v0.5.5 2019-05-30 18:58:37 +08:00
spring2maz ac0e637a4b Delete APPLICATION macro from erl-opts in rebar.config 2019-05-24 10:16:10 +08:00
spring2maz d0131ec663 Pin emqx-ct-helpers v1.1 (#2495)
* Pin emqx-ct-helpers v1.1.1

* Fix loaded_plugins touch command
2019-05-04 04:41:08 +08:00
spring2maz 97476b8bde Build with rebar3 (#2475)
* Pin cuttlefish rebar3 branch

* No shallow clone for rebar3

* Replace timer:sleep with receive after for deterministic

* Build with only rebar3

* bbmustache as a test dependency

* Change to plain deps

* Use shallow clone by default

* Add ct-helpers as test dep
2019-04-28 09:40:39 +08:00
Gilbert Wong 3b0f232961 Workaround for dep-vsn-check in travis-ci 2019-04-25 16:25:28 +08:00
Gilbert Wong b3927ff730 Add emqx_ct_helpers as deps and refactor test suites 2019-04-25 13:41:22 +08:00
terry-xiaoyu 8be2defb6b Update ekka to v0.5.4 2019-03-30 10:41:48 +08:00
Gilbert 2534b8dc64 Support to pass ws compressing options (#2356)
Add new config entries about websocket
2019-03-27 10:19:35 +08:00
turtleDeng b902ff3656 Update gen_rpc to v2.3.1 (#2315)
Update gen_rpc to v2.3.1
2019-03-15 10:30:14 +08:00
spring2maz 48450d1d37 Move request response out of emqx client (#2293)
* Delete response_topic_prefix

The Response-Infomation in CONNACK was misinterpreated, it should
not be a broker's global config, instead, it should be per-client
or even per-session prefix/suffix mechanism

* Delete request-response code from emqx_client

* Add request-response test code

* meck as default dependency --- temp workaround for dep-vsn-check
2019-03-13 11:27:25 +08:00
Gilbert 93162c52b6
Fix conf parse bug (#2296)
Prior to this change, there are some config entry which is not parsed
correctly. So if user modify config such as reconnect_interval for
bridge, the new config can not be taken into effect.
2019-03-11 16:31:21 +08:00
spring2maz fbe67e6784 Introduce new bridge impl 2019-02-28 11:17:27 +08:00
turtleDeng 00863acea3
Merge emqx30 (#2181)
* Change the reason code in will topic acl check (#2168)

* Fix bridge bug (#2160)

* Limit bridge QoS less than 1

* Improve shared sub dispatch implementation. (#2144)

* Upgrade ekka, esockd libraries

* Improve the 'try_open_session' function

* Reload config (#2180)
2019-01-25 13:01:48 +08:00
Gilbert 9f83544fce
Fix failed testcase (#2127)
* Fix failed test case
Prior to this change, terry-xiaoyu enhanced the cuttlefish to
support emqx enterprise edtion configuration entries. But it cause 6
test case failed.

* Fix dep-vsn-check
2019-01-06 19:53:01 +08:00
turtleDeng 6a1ebe299a
Merge emqx32 to emqx30 (#2112) 2018-12-28 19:44:41 +08:00
turtled 390fae1134 Rm clique dep 2018-12-21 17:09:15 +08:00
terry-xiaoyu 14abbf96db Update cuttlefish tag 2018-12-14 09:53:13 +08:00
Shawn 93a079752f Update cuttlefish to v2.1.1 (#1978) 2018-11-23 11:04:55 +08:00
tigercl 551d5d99d2 Change 'aquire' to 'acquire' (#1976)
* Change 'aquire' to 'acquire'
2018-11-23 11:00:30 +08:00
turtled faeda253e1 Fix conflicts 2018-11-10 11:44:55 +08:00
terry-xiaoyu f6266eaa93 Bumped the version number of deps 2018-11-02 19:42:51 +08:00
terry-xiaoyu 94dbdffd59 New logger formatter with meta-data 2018-11-02 18:38:07 +08:00
spring2maz 28c8f2dd5c Remove neotoma plugin, build cuttlefish script in sub-dir 2018-10-27 14:21:53 +02:00
HuangDan e5f977d808 Upgrade the esockd library 2018-09-29 22:16:54 +08:00
spring2maz 9b2629e884 Fix dependency version discrepancy between Makefile and rebar.config 2018-09-25 22:09:13 +08:00
spring2maz 35d209f364 Fix travis build 2018-09-14 00:52:03 +08:00
spring2maz 0c39a7620e Rebar3 and erlang.mk dual support. (#1806)
* Rebar3 and erlang.mk dual support.

There was only erlang.mk support prior to this change.
The main reasons for this dual support are:
* Cover report upload can only be done by rebar3 in travis.ci
* We want to prepare for the future to build emqx releases using rebar3
* We do not want to stop supporting erlang.mk in one single step

* Add depencency version consistency check between erlang.mk and rebar.config
2018-09-09 21:51:42 +08:00
Feng Lee 16eef90707 Remove rebar.config 2017-09-13 07:43:02 +08:00
Feng Lee 88f7e71f29 Update rebar.config 2017-08-23 11:08:03 +08:00
Feng Lee 437b26718b Call ekka_autocluster:bootstrap/0 to build the cluster 2017-07-18 18:40:03 +08:00
Feng Lee 9b646d8cbc Integrage with 'ekka' library 2017-06-16 12:30:09 +08:00
turtled 8d6457996c support bcrypt 2017-04-11 16:02:48 +08:00
Feng Lee 783079cb07 Merge emq20 branch 2017-03-24 13:35:43 +08:00
Feng Lee b54fba2a5d Depend on emqtt/pbkdf2 to resovle the building errors of Travis CI 2017-03-24 12:35:39 +08:00
Feng Lee 181ac36171 Remove the 'erlang-pbkdf2' dep to resolve CI building error 2017-03-24 11:26:42 +08:00
Feng Lee 852c671881 Add goldrush dep 2017-03-24 10:46:52 +08:00
Feng Lee a0c60f11cf Depends on 'emq22' branch 2017-03-22 10:49:09 +08:00
Feng Lee 076b3c0068 Upgrade esockd library to v4.2 2017-03-13 17:10:54 +08:00
Feng Lee 056dc747ad Depend on emq20 branch of esockd library 2017-03-13 14:56:59 +08:00
Feng Lee 05396f0ade Add pbkdf2 dependencies and fix the building errors 2017-03-13 13:30:49 +08:00
Feng Lee d310fff532 Add 'lager_syslog' dependency 2017-02-21 18:46:44 +08:00
Feng Lee a5ba86fd1a Update rebar.config 2017-02-16 11:46:21 +08:00
Drew Varner 8e60b8f00a Remove gen_logger references 2017-01-23 20:02:02 -05:00
Feng Lee ed730f6827 Fix issue#814 - Cannot remove a 'DOWN' node from the cluster 2016-12-12 19:25:49 +08:00
Feng eb9c11f321 remove modules 2016-10-31 20:26:56 +08:00
Feng 3406137433 new config 2016-10-08 18:38:33 +08:00
Feng 52403ceb67 update Makefile 2016-10-02 15:02:49 +08:00
Feng a16802d018 session.subscribed, session.unsubscribed hooks and retainer module 2016-09-08 09:10:45 +08:00
Feng 3e77773d04 generated by erlang.mk 2016-07-19 17:58:31 +08:00