Shawn
e664a3bc30
chore: ping jq v0.3.3
2022-05-31 22:47:59 +08:00
Zaiming (Stone) Shi
ebe4d7c3fb
refactor: stop releasing edge edition
...
Prior to EMQX 5.0, the edge edition's main difference comaring
to standard edition are:
* Less number of plugins in the release (smaller package size)
* Smaller number is vm.args (for lower memory usage)
Starting from 5.0 most of the plugins are included as features,
the tuned vm.args arguments does not justify a special release edition.
Also as nanomq is getting mature,
EMQ's recommendtation for MQTT broker in edge is https://nanomq.io/
2022-05-26 20:05:46 +02:00
ieQu1
9de609224e
fix(logging): Add compile-time overrides for gen_rpc application
2022-05-24 12:42:30 +02:00
Shawn
8650842994
fix: pin jq v0.3.2
2022-05-22 14:14:02 +08:00
Shawn
7bc2d9edbb
fix: remove bison from the required tools when building emqx
2022-05-21 14:17:12 +08:00
Kjell Winblad
402ab7e759
chore: remove unnecessary repeated code
...
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2022-05-18 07:21:16 +02:00
Kjell Winblad
05032467bd
feat(rule_engine): default timeout for jq/2 and jq/3 with timeout
...
This commit adds a default timeout of 10 seconds to the rule engine's
`jq/2` function, and adds a new function `jq/3` (where the last parameter is
a timeout value). The default timeout can be configured with the setting
"rule_engine.jq_function_default_timeout".
Having a timeout when executing jq code in the rule engine is important
as jq code can potentially run forever. Also, the Erlang jq library
limits the number of jq programs that can execute concurrently so a jq
program that loops forever could potentially also prevent a "non-buggy"
jq program from ever starting.
2022-05-17 19:36:32 +02:00
Kjell Winblad
ba5d0f5e03
Merge pull request #7911 from kjellwinblad/kjell/upgrade_jq_v0.2.1
...
fix: update jq to v0.2.1
2022-05-13 13:49:05 +02:00
Kjell Winblad
e107f84d7e
fix: update jq to v0.2.2
...
This commit makes jq compile error reporting better and avoids a crash
when the program contains an include expression.
2022-05-13 10:59:57 +02:00
Zaiming (Stone) Shi
bcd3bbcc61
build: fix port-compiler version tag to 1.14.0
...
1.14.1 was a typo, (not released yet)
2022-05-12 23:22:08 +02:00
Zaiming (Stone) Shi
eb2d73eed3
chore: er_coap_client is a test dependency but not rebar plugin
2022-05-12 13:08:27 +02:00
Zaiming (Stone) Shi
502bfa5529
build(deps): pin port compiler v1.14.1
2022-05-07 10:24:15 +02:00
Shawn
82da4d82be
chore: update jq to v0.2.0
2022-05-06 22:20:35 +08:00
Kjell Winblad
74c33cd4e5
feat(rule_engine): add jq function to the rule engine
...
This commit adds a function to the rule engine that alows users
to transform text or JSON objects using [jq filter programs][1].
[jq][1] is a command line tool that can be used to transform
and filter JSON text using jq's built-in language. The rule engine
function that is added with this commit uses the
[Erlang jq NIF library][2] that wraps the jq C library in an
Erlang NIF function.
[1]: https://stedolan.github.io/jq/
[2]: https://github.com/emqx/jq
2022-05-04 17:09:16 +02:00
Zhongwen Deng
7df21b7dcd
chore: bump er_coap_client to v1.0.4
2022-04-20 11:32:10 +08:00
Zhongwen Deng
868e26cabc
fix: emqx_auto_subscribe emqx_slow_subs don't restart when ekka:join.
2022-04-16 00:34:00 +08:00
zhongwencool
ce915f0bbd
Merge pull request #7590 from zhongwencool/doc-i18n
...
feat: desc/label support i18n
2022-04-15 17:43:16 +08:00
Zhongwen Deng
630cc8ee34
feat: support i18n with desc struct.
2022-04-15 08:42:13 +08:00
Zaiming (Stone) Shi
438be98e15
chore(build): delete unused template-var platform_lib_dir
2022-04-13 13:50:25 +02:00
Zaiming (Stone) Shi
1c50841dea
chore(build): delete unused template var platform_bin_dir
2022-04-13 13:50:25 +02:00
Zaiming (Stone) Shi
c8242816b0
refactor(bin/emqx): no need to template-render RUNNER_ROOT_DIR
2022-04-13 13:50:25 +02:00
Zaiming (Stone) Shi
32694e601a
refactor: rename RUNNER_ETC_DIR to EMQX_ETC_DIR
2022-04-05 23:08:45 +02:00
Zaiming (Stone) Shi
4e64010a3b
build: more structured build info
2022-03-02 21:22:03 +01:00
Zaiming (Stone) Shi
d029a73b99
refactor: make release edition static info at compile time
2022-02-28 16:37:47 +01:00
Zaiming (Stone) Shi
96815539c1
chore: delete unused template values
2022-02-28 15:25:51 +01:00
Thales Macedo Garitezi
16ad442bc3
fix(deps): use tags for dependencies
...
Some dependencies, like `bcrypt` and `quic`, have their references
declared as `branch`, yet there are no branches with those names, but
tags. Despite rebar3 managing somehow to handle that, if a project
managed by Mix tries to declare EMQX as its dependency, it's not able
to fetch those dependencies.
```
$ mix deps.get
* Updating emqx (https://github.com/emqx/emqx - v5.0-beta.3)
* Updating lc (https://github.com/qzhuyan/lc.git - 0.1.2)
* Updating gproc (https://github.com/uwiger/gproc - 0.8.0)
* Updating typerefl (https://github.com/k32/typerefl - 0.8.6)
* Updating jiffy (https://github.com/emqx/jiffy - 1.0.5)
* Updating cowboy (https://github.com/emqx/cowboy - 2.9.0)
* Updating esockd (https://github.com/emqx/esockd - 5.9.0)
* Updating ekka (https://github.com/emqx/ekka - 0.11.1)
* Updating gen_rpc (https://github.com/emqx/gen_rpc - 2.5.1)
* Updating hocon (https://github.com/emqx/hocon.git - 0.22.1)
* Updating pbkdf2 (https://github.com/emqx/erlang-pbkdf2.git - 2.0.4)
* Updating recon (https://github.com/ferd/recon - 2.5.1)
* Updating snabbkaffe (https://github.com/kafka4beam/snabbkaffe.git - 0.16.0)
* Updating bcrypt (https://github.com/emqx/erlang-bcrypt.git - origin/0.6.0)
error: pathspec 'origin/0.6.0' did not match any file(s) known to git
** (Mix) Command "git --git-dir=.git checkout --quiet origin/0.6.0" failed
```
Therefore, we change them to `tag`s.
2022-02-21 15:36:24 -03:00
Zaiming (Stone) Shi
09775936e5
chore: EMQ X -> EMQX in emqx description
2022-02-16 17:49:52 +01:00
Ilya Averyanov
64c59b5469
feat(license): check license before node start
2022-02-11 11:49:29 +03:00
k32
5a1b18ae86
fix(system_monitor): Fix conditional start
2022-02-08 12:46:27 +01:00
Ilya Averyanov
17599432d1
feat(license): add license application
2022-02-07 19:05:47 +03:00
Zaiming (Stone) Shi
c643db6bca
build: move otp version check to rebar.config.erl
2022-01-31 16:39:14 +01:00
Thales Macedo Garitezi
a597e92576
chore(mix): use MIX_ENV to define build profile and edition
2022-01-28 17:24:35 -03:00
Kian-Meng Ang
fc92e4c8bf
docs: fix typos
2022-01-27 12:29:38 +01:00
Zaiming (Stone) Shi
b9e507110c
build: add EMQX_ENTERPRISE compile flag
2022-01-26 14:25:59 +01:00
Zaiming (Stone) Shi
391e480824
build: parameterise package version
...
so that community and enterprise edition can be built from the
same branch
2022-01-26 14:25:59 +01:00
Zaiming (Stone) Shi
a04c834d05
chore: relocate some release files from data/ to rel/
...
data dir at the root is easily confused with the data
dir for EMQ X at run time
2022-01-14 16:41:22 +01:00
k32
b2b6cff469
revert(makefile): Remove lightweight dialyzer target
2022-01-12 15:40:44 +01:00
William Yang
202e23987d
Merge pull request #6677 from qzhuyan/dev/william/add-light-dialyzer-check
...
chore: add light dialyzer make target
2022-01-11 09:39:58 +01:00
Zaiming (Stone) Shi
b2684b995d
build: doc for win
2022-01-10 12:30:01 +01:00
William Yang
0d37ee9588
chore: add light dialyzer make target
...
for low mem dev machines
2022-01-07 11:09:17 +01:00
JimMoen
9a115b99a4
Merge remote-tracking branch 'emqx/release-5.0-beta.3' into merge-5.0-beta.3-to-master
2022-01-06 14:08:45 +08:00
zhanghongtong
517b634409
build(windows): do not compile doc for windows
2022-01-06 09:17:06 +08:00
Zaiming (Stone) Shi
1eaac9ea12
feat: add redbug
2022-01-04 00:56:25 +01:00
Thales Macedo Garitezi
c70a47bba6
refactor(mix): undo the `bin/emqx` script split into helper files
2021-12-30 13:45:13 -03:00
Thales Macedo Garitezi
67cca5d3a1
chore(mix): use the same script in mix release as in rebar release
...
Surprisingly enough, by doing small cirurgical changes in the existing
EMQX control scripts, we are able to get it running with Elixir and
with existing functionalities (`console`, `remote_console`, `start`,
`stop`, `ctl`, `foreground`, `eval`).
2021-12-23 17:20:04 -03:00
Thales Macedo Garitezi
a5939790c5
refactor(bin): extract common script functionalities into separate files
...
In order for us to reuse most of the functionalities implemented in
`bin/eqmx` also in the Elixir release script, common variable and
function definitions are extracted in separated bash files that can be
sourced by both Rebar and Elixir release scripts.
2021-12-22 10:35:06 -03:00
Thales Macedo Garitezi
34d6dbca61
chore(mix): simplify build by using rebar3 for umbrella apps
...
By treating the apps in the umbrella as dependencies to be managed and
built by rebar3, we can simplify the maintenance of the release, at
the cost of increased build times: using Mix as before, it could track
changed files better than using rebar. But the complexity and
possibility of discrepancies make it using rebar much more compelling.
2021-12-22 09:40:01 -03:00
Zaiming (Stone) Shi
4d9b4cb828
refactor: delete lib-extra
...
plugin development and deploy will different from 4.3
2021-12-16 12:48:13 +01:00
Zaiming (Stone) Shi
47e1875345
build: add back emqx_slow_subs to release app list
...
accidently lost it during rebase
2021-12-13 20:52:18 +01:00
zhongwencool
b4e2aa0dcf
Merge branch 'master' into feat-add-emqx-plugins-app
2021-12-13 22:28:03 +08:00
Zaiming (Stone) Shi
d3d8b3a01f
fix: allow listener not_found before restart
2021-12-12 22:18:56 +01:00
Zaiming (Stone) Shi
38ac10d3e2
feat(plugins): add emqx_plugins skeleton
...
* added emqx_plugins app.
* emqx_plugins.erl is moved from emqx app to emqx_plugins app
same for the test SUITE
2021-12-12 19:40:34 +01:00
lafirest
82746134bb
feat(emqx_slow_sus): ported emqx_slow_subs from v4.4
2021-12-10 16:42:55 +08:00
firest
8493b61cb5
refactor(eqmx_limiter): use the new hierarchical token bucket to replace the old ratelimit code
2021-12-10 14:37:23 +08:00
k32
98be2e15b1
Merge pull request #6405 from k32/sysmon
...
feat(system_monitor): Add system_monitor application
2021-12-09 10:22:40 +01:00
k32
9fbc247e29
feat(system_monitor): Add system_monitor application
2021-12-08 16:34:10 +01:00
Zaiming (Stone) Shi
a1ad6098b3
build: generate document to dashboard priv dir
2021-12-06 08:52:10 +01:00
Zaiming Shi
e2d7ff2b0f
build: rename emqx-ee to emqx-enterprise
2021-11-29 14:53:47 +01:00
Zaiming Shi
6edd862dd5
refactor: no more EMQX_ENTERPRISE compile flag
...
The compile flag was introduced in EQM X 4.3 series
where CE and EE code was diverged large enough which made
non-practicle to determin edition at runtime.
such approach made testing quite challenging as we'll have to
build with different compile flags inorder to run per-edition
test cases
In this commit, we try to retrieve edition info from EMQX's
description text, (put to PT for fast access) at runtime
so we can test ALL editions from a super-set edition (EE).
2021-11-20 20:41:06 +01:00
Zaiming Shi
bed5031f45
build: prepare to disclose ee code
2021-11-19 08:34:38 +01:00
Zaiming Shi
b6d11e6f5d
build: delete unused keydelete
2021-11-19 08:34:38 +01:00
zhongwencool
d784e63b9f
emqx_conf ( #5939 )
...
* feat(emqx_conf): move conf manager for emqx_machine to emqx_conf
* chore(emqx_conf): change emqx:get_config/2 to emqx_conf:get/2
* fix: common test failed
* fix: badmatch by typo wrong key
* fix(emqx_conf): get the wrong core nodes
* fix(emqx_conf): get core node's tnx_id not latest tnx_id
* fix: add ro_transation when copy conf file
* fix: delete debug info
* fix: change ekka_rlog to mria_rlog
* fix: remove cluster_rpc from emqx_machine.
* fix: don't call ekka:start/0 explicitly
* fix: ekka should be start in emqx_machine
2021-10-21 18:08:51 +08:00
k32
8e58699ff5
Merge pull request #5937 from k32/mria
...
feat(mria): Replace ekka_mnesia with mria
2021-10-20 13:15:23 +02:00
William Yang
56d8e0f59f
feat(quic): bump quicer 0.0.9
2021-10-19 13:54:43 +02:00
k32
73a4816d9c
fix(mria): Hook up mria to emqx_machine
2021-10-18 22:04:05 +02:00
Zaiming Shi
71a11834ad
chore: pin rebar plugins and test deps
2021-10-15 16:46:49 +02:00
Tobias Lindahl
aa19c2a908
chore: Remove emqx_ct_helpers as dependency
2021-10-15 10:40:57 +02:00
lafirest
8a2c5e2422
feat(rate_limiter): implement hierarchical token buckets
2021-10-14 10:20:05 +08:00
tigercl
55ec5bab9e
Merge pull request #5773 from tigercl/feat/psk-file
...
feat(psk): support psk
2021-09-29 13:37:49 +08:00
zhouzb
74c9a38e9f
fix(psk): fix bugs and add test case
2021-09-27 21:42:32 +08:00
Shawn
bd081913b5
refactor(rules): remove emqx_rule_actions
2021-09-26 23:00:08 +08:00
JianBo He
d82830d8c7
build(deps): upgrade er_coap_client to v1.0.4
2021-09-17 18:13:57 +08:00
zhouzb
3275ed4804
fix(esasl): load esasl code
2021-09-15 18:14:05 +08:00
Shawn
037b75a276
refactor(bridges): remote the old emqx_bridge_mqtt app
2021-09-10 11:43:03 +08:00
Shawn
bfb2df37ce
refactor(bridge): rename emqx_data_bridge to emqx_bridge
2021-09-10 11:43:03 +08:00
zhanghongtong
1699a8dc63
chore(authz): rename authorization_rules.conf to acl.conf
2021-09-07 14:42:05 +08:00
Zaiming Shi
5165fd6b30
refactor(schema): implement new hocon_schema callbacks
2021-08-30 09:56:03 +08:00
Spycsh
65bb71ccca
fix(rebar): make compatible to Windows
2021-08-27 17:12:40 +08:00
William Yang
dbc971f264
feat(quic): bump quicer to 0.0.8
2021-08-27 08:36:45 +02:00
DDDHuang
aa6f1ac88d
feat: auto subscribe, todo: test SUITE
2021-08-25 11:57:37 +08:00
zhanghongtong
a7fac1a7a3
feat(authz): support authorization config file part 1.
2021-08-25 10:15:00 +08:00
zhanghongtong
d1faf93bbf
chore(CI): rename artifact for build packages workflows
...
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-13 10:30:42 +08:00
x1001100011
9640132edc
Merge pull request #5452 from x1001100011/make-EMQX_DEP_APPS-static
...
feat: make EMQX_DEPS_APPS static
2021-08-11 21:50:57 -07:00
k32
5abec37098
chore(build): Globally set snk_kind macro to msg
2021-08-11 14:03:41 +02:00
x1001100011
698c6c6ebc
feat: make EMQX_DEPS_APPS static
2021-08-11 01:09:27 -07:00
JianBo He
183a65d263
fix(exhook): fix the server config format
2021-08-07 08:48:34 +08:00
Zaiming Shi
255d97ae1e
build: update few dependencies for otp 24 build
2021-08-04 12:38:51 +02:00
Zaiming Shi
e6232665a3
refactor(emqx): ensure app shutdown and reboot order
...
make use of application dependency to ensure start order.
also the same dependency top-sorted for shutdown and reboot order
2021-08-04 08:40:03 +02:00
Zaiming Shi
ff006abd5c
fix(rebar.config): app names for dialyzer
2021-08-04 08:36:10 +02:00
Zaiming Shi
ebf897a14c
fix(rebar.config): do not restart emqx_machine
2021-08-04 08:36:10 +02:00
Zaiming Shi
522d8e0a4a
refactor(config): split config and schema
2021-08-04 08:36:10 +02:00
Zaiming Shi
4bbd398550
refactor(emqx): create emqx_machine app
2021-08-04 08:36:10 +02:00
JianBo He
b16cf44bf6
refactor(gw-lwm2m): refine lwm2m
2021-08-04 10:10:22 +08:00
JianBo He
879c191e41
refactor(exhook): adapt to the hocon schmea
2021-08-03 14:06:58 +08:00
Turtle
ef1b591532
chore: Dynamically get the app that starts by default
2021-07-30 13:43:25 +08:00
Turtle
4afae79be9
chore(statsd): update statsd conf root
2021-07-29 10:08:07 +08:00
Shawn
e7ced477a9
feat(config): read schemas for apps from file at build time
2021-07-28 14:51:02 +08:00
Turtle
7a24878436
feat(prometheus): Support swagger prometheus API
2021-07-27 08:57:40 +08:00
Turtle
569d54a4c0
feat(dashboard): Update the configuration file to hocon
2021-07-26 15:00:40 +08:00
Zaiming Shi
758e2adefc
chore: add comments to rebar.config.erl for future ref
2021-07-26 09:11:48 +08:00