Commit Graph

390 Commits

Author SHA1 Message Date
William Yang 1692a16778 feat(quic): handle ctrl stream normal shutdown 2023-02-20 10:42:55 +01:00
William Yang 00f615a1e3 chore(quic): clean code 2023-02-20 10:42:55 +01:00
William Yang 1840a7f923 test(quic): improve coverage 2023-02-20 10:42:55 +01:00
Zaiming (Stone) Shi 6f1eaca253 chore: bump version to e5.0.1-alpha.1 2023-02-20 08:28:14 +01:00
Zaiming (Stone) Shi 7d9b0f4826 chore: bump version to v5.0.17 2023-02-13 08:53:09 +01:00
Zaiming (Stone) Shi a11217aa0f chore: bump version to v5.0.17 2023-02-12 11:36:53 +01:00
Zaiming (Stone) Shi 42462db8b8 chore: bump version to v5.0.16 and e5.0.0 2023-02-02 17:26:00 +01:00
Zaiming (Stone) Shi 38ef37d109 chore: bump release version to e5.0.0-rc.4 2023-02-01 14:52:08 +01:00
Zaiming (Stone) Shi 7e8253e3af chore: bump version to e5.0.0-rc.3 2023-01-31 20:45:28 +01:00
Zhongwen Deng ce32ea7334 feat: Make the log output format order fixed 2023-01-30 12:18:22 +08:00
Zaiming (Stone) Shi 6a58bafcb0 chore: bump release version to e5.0.0-rc.2 2023-01-27 14:38:21 +01:00
Zaiming (Stone) Shi 727100e094 chore: prepare for v5.0.15 release 2023-01-20 16:42:01 +01:00
Zaiming (Stone) Shi 57607ca0ce chore: prepare for v5.0.15 release 2023-01-20 11:20:34 +01:00
Zaiming (Stone) Shi 1716a5da99 chore: bump version to e5.0.0-rc.1 2023-01-18 17:22:05 +01:00
Zaiming (Stone) Shi 7073c62dd9 feat: add a 'this' for rule engine put env
now a dot is allowed in front of a var (path)
e.g. ${.clientid} is equivalent to ${clientid}

${.} however, means everything.
the parsed var is interally represented as $_THIS_
to make it easier to read/search.
2023-01-14 11:03:58 +01:00
firest c5f557e315 fix: disable basic auth for HTTP API 2023-01-12 21:35:49 +08:00
Zhongwen Deng ba738d7707 chore: bump to 5.0.14 2023-01-11 14:39:32 +08:00
Zaiming (Stone) Shi dbc10c2eed chore: update copyright year 2023 2023-01-02 09:22:27 +01:00
Zaiming (Stone) Shi a777bac38c build: prepare for v5.0.13 release 2022-12-27 11:54:09 +01:00
Zaiming (Stone) Shi 15bd797b36 ci: bump to v5.0.13-rc.3 2022-12-27 11:24:47 +01:00
Zaiming (Stone) Shi 0517541f34 ci: bump to v5.0.13-rc.2 2022-12-27 09:54:34 +01:00
Zaiming (Stone) Shi 18246442aa chore: prepare v5.0.13-rc.1
bump dashboard version to v1.1.4
2022-12-26 21:45:48 +01:00
Zaiming (Stone) Shi 82db73c3f7 chore: bump version to v5.0.12 2022-12-14 20:02:42 +01:00
Zaiming (Stone) Shi 1c2fc4b6c3 Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50 2022-12-06 16:35:56 +01:00
Zaiming (Stone) Shi 311e4cd583
Merge pull request #9440 from zmstone/1128-chore-sync-release-branch-back-to-master
1128 chore sync release branch back to master
2022-11-29 11:47:01 +01:00
Zaiming (Stone) Shi 7ee53e5319 Merge tag 'v5.0.11' into dev/ee5.0 2022-11-28 21:02:21 +01:00
Erik Timan 95faf56077 feat: remove $queue in favor of $shared
This commit removes support for setting shared subscriptions with the
non-standard $queue feature. Shared subscriptions is now part of the MQTT
spec (using $shared) and we will only support that from now on.
2022-11-28 11:00:18 +01:00
Zaiming (Stone) Shi 05719daff2 chore: bump version to v5.0.11 2022-11-27 11:15:28 +01:00
Zaiming (Stone) Shi 970b3eb1a0 chore: bump to version v5.0.11-rc.1 2022-11-26 15:51:38 +01:00
Zaiming (Stone) Shi 458d23ebc4 chore: bump version to v5.0.0-beta.5 2022-11-20 09:11:53 +01:00
Zaiming (Stone) Shi 09455edae8 Merge tag 'v5.0.10' into dev/ee5.0 2022-11-16 16:20:30 +01:00
Zaiming (Stone) Shi 637bc886bb chore: bump release version to 5.0.10 2022-10-24 11:49:20 +02:00
Zaiming (Stone) Shi 11daaa08e2 chore: bump version numbers to 5.0.9 2022-10-24 09:42:25 +02:00
Shawn 19e3f5919e chore: release e5.0.0-beta.4 2022-09-26 19:54:01 +08:00
Shawn 4135910b42 chore: merge master into dev/ee5.0 2022-09-26 09:52:33 +08:00
zhouzb ba37ab4938 chore: bump vsn to 5.0.8 2022-09-16 19:32:17 +08:00
zhouzb 8054144357 chore: bump vsn 2022-09-15 10:20:25 +08:00
Zaiming (Stone) Shi befc4acced Merge remote-tracking branch 'origin/master' into merge-master-to-ee50-a 2022-09-06 20:31:38 +02:00
Shawn c695e67e18 chore: release e5.0.0-beta.3 2022-09-03 12:27:20 +08:00
zhouzb ee91128cef chore: bump vsn 2022-09-01 15:05:18 +08:00
Zaiming (Stone) Shi 5a3fb4a011 Merge remote-tracking branch 'origin/master' into dev/ee5.0 2022-08-31 17:11:15 +02:00
Shawn f75932e49f chore: release e5.0.0-beta.2 2022-08-24 22:28:29 +08:00
JianBo He ad96bb551e chore: update changes and release vsn 2022-08-22 12:30:42 +08:00
JianBo He d1c676a1c5 chore: bump vsn 2022-08-19 14:08:09 +08:00
Shawn b3162fe5ff fix: conflicts between master and ee5.0 2022-08-14 22:24:09 +08:00
Shawn 18d710e932 chore: release v5.0.5-beta.1 2022-08-12 18:37:27 +08:00
Shawn bed10b097f chore: release e5.0.0-beta.1 2022-08-12 00:27:13 +08:00
Ilya Averyanov 1a236db91b chore(log): add authentication tracing 2022-07-25 17:14:19 +03:00
Zaiming (Stone) Shi 49d008371f chore: bump version to 5.0.4 2022-07-08 22:35:16 +02:00
Zaiming (Stone) Shi 07783249bb chore: move emqx API version (in generated doc) to emqx_release.hrl
So we have one place to bump all versions
2022-07-06 14:01:35 +02:00
Zaiming (Stone) Shi fa89b633d8 chore: bump version to 5.0.3 2022-07-04 23:23:20 +02:00
Zaiming (Stone) Shi c602ef708f chore: bump version to 5.0.2 2022-07-02 11:44:19 +02:00
zhouzb 0cce1df2b6 chore: bump release vsn 2022-07-01 22:03:47 +08:00
Shawn 264cf036c7 chore: release 5.0.1-beta.1 2022-07-01 11:12:08 +08:00
ieQu1 78ffb2b2b1 test(bpapi): Add API dump for 5.0.0 2022-06-21 09:31:59 +02:00
Zaiming (Stone) Shi b467e11b2e fix(appup): fixed appup and version check scripts for 5.0 2022-06-20 22:20:31 +02:00
JianBo He 366779e621 chore: bump version 2022-06-17 20:41:30 +08:00
Shawn f59443eaee fix: add macro HP_HIGHEST=1000 2022-06-16 09:16:43 +08:00
Shawn 39b1b20506 feat: fix the hook priorities 2022-06-15 19:03:40 +08:00
Shawn 88ca25c60c fix(resource): fast return when starting a unavailable resource 2022-06-01 08:24:53 +08:00
Shawn 4c247c2c3c chore: release v5.0.0-rc.4 2022-05-31 23:35:46 +08:00
Shawn c4faaee555 chore: release 5.0.0-rc.3 2022-05-16 18:10:42 +08:00
Zhongwen Deng f0cb72dda6 fix: telemetry can't get active plugins list 2022-05-12 11:18:44 +08:00
Shawn be60b3330d chore: release 5.0.0-rc.2 2022-04-29 19:01:44 +08:00
JimMoen 341973880d fix(authz): refine authz-http api with default headers 2022-04-19 18:57:01 +08:00
Zaiming (Stone) Shi 850a95a43e style: avoid using function-like macros in catch clauses 2022-04-01 16:58:51 +02:00
zhouzb 3b387cfd9e chore: revert ee vsn bump 2022-03-25 19:49:13 +08:00
zhouzb 098ba91351 chore: bump release vsn 2022-03-25 19:43:22 +08:00
DDDHuang 9037b807ae fix: add api auth failed code def & fix bad spelling 2022-03-24 12:12:19 +08:00
Zaiming (Stone) Shi 91bcf02970 chore: format code apps/emqx 2022-03-21 16:51:31 +01:00
DDDHuang e86fd9c4cb feat: release V5.0.0 beta4 2022-03-21 19:45:03 +08:00
DDDHuang 74e6fa5a94 fix: generate bridge api response code
fix: generate connector api response code SUITE

fix: generate exhook api response code
2022-03-21 14:12:19 +08:00
JimMoen 02ed2148d7 refactor: move api `top` -> `front`, `bottom` -> `rear` 2022-03-15 10:28:46 +08:00
JimMoen e96bbf5c8b refactor(authn_api): add 'after related' for move api 2022-03-15 10:28:46 +08:00
Shawn 590fa1b375 fix(rule): check request body for /rule_test crashes 2022-03-11 18:13:12 +08:00
zhongwencool a5b2300ce4
Merge pull request #7236 from zhongwencool/config-api
feat(config): Filter unnecessary HTTP APIs
2022-03-08 22:33:45 +08:00
Zhongwen Deng 1244391cb7 fix: alarm crash when safe_publish not ready. Filter out unnecessary APIs 2022-03-08 14:14:54 +08:00
Shawn 9a9c92ae88 fix: update testcases for emqx_bridge 2022-03-07 16:48:36 +08:00
DDDHuang 98a11f3c15 fix(api): emqx_connector_api error code format 2022-02-22 17:14:35 +08:00
DDDHuang 90ee450a84 feat: support http error code & error code api 2022-02-22 17:14:35 +08:00
Zaiming (Stone) Shi 6a354d910e chore: rename EMQ_X to EMQX in hrl file macros 2022-02-17 15:55:46 +01:00
Shawn 8207090419 fix: format the code to remove extra spaces 2022-02-09 18:46:49 +08:00
Zaiming (Stone) Shi 1718360156 refactor: delete deprecated logging macros 2022-01-26 23:25:11 +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
zhongwencool 8b31466538 chore(trace): replace trace_filter by is_trace 2022-01-14 15:33:43 +08:00
zhongwencool 681ab6b754 fix(review): refactor function name base on review sugguestion 2022-01-14 15:00:05 +08:00
zhongwencool 9727eb514d feat(trace): improve debug msg format 2022-01-14 15:00:05 +08:00
zhongwencool dc6c49d7f5 chore(trace): always ?SLOG when ?TRACE 2022-01-14 15:00:05 +08:00
Thales Macedo Garitezi 9059f2005a
fix(elixir): put Patch in version and add missing deps
Elixir requires that we use version of the form `Major.Minor.Patch`.
Also, Mix requires dependecies to be declared in `rebar.config` so it
can include the header files correctly.
2022-01-06 10:54:45 -03:00
zhongwencool 3bdfa183f3
Merge pull request #6666 from JimMoen/merge-5.0-beta.3-to-master
Merge 5.0 beta.3 to master
2022-01-06 18:20:30 +08: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
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
zhouzb f4ed3ccdd7 chore(release): update emqx release version 2022-01-05 23:30:06 +08:00
k32 2c3af8d9fe feat(bpapi): Move to emqx
Fix standalone build
2022-01-05 01:28:34 +01:00
Zaiming (Stone) Shi 2898fa76e1 Merge remote-tracking branch 'origin/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-03 11:39:06 +01:00
zhongwencool 489fb7f806 fix(trace): copy binary:encode_hex/2 from binary.erl 2021-12-30 21:38:23 +08:00
zhongwencool b8bb5ff738 fix(trace): delete duplicate topic from msg 2021-12-29 22:33:34 +08:00
zhongwencool 121d906992 chore(log): add SLOG/3 to add meta info 2021-12-29 14:48:48 +08:00
zhongwencool 4b6bba11eb feat(trace): struct log for trace 2021-12-29 00:26:54 +08:00
zhongwencool 668180388c feat(trace): replace logger_formatter by emqx_trace_formatter 2021-12-27 14:40:40 +08:00
Thales Macedo Garitezi 238895a301
chore(mix): correctly define release version
With this, we no longer need the last hack in `mix_release.sh`.

A version schema with 3 parts (Major.Minor.Patch) is required by
Elixir:

https://hexdocs.pm/elixir/1.13.1/Version.html#module-versions
2021-12-22 15:43:43 -03:00
Zaiming (Stone) Shi 5d3cb6ae1c refactor(authn): align authn config root name
authn configs are checked independently per-auth provider,
this was to make authn providers more plugable.

in order to make environment variable overrides work for authn,
we need to have a unified view of the config layout,
no matter from root level, or partially checking per-provider
config independently, i.e. we try to use the same config envelop.
2021-12-04 09:33:14 +01:00
DDDHuang 6a60c17970
fix: add lw gateway endpoint placeholder support (#6267) 2021-11-23 12:08:45 +08:00
DDDHuang 21bd9bba55
fix: generate palce holder (#6250)
* fix: generate place holder

* style: whitespace cleanup

* refactor(authz): placeholder for athuz

* test: authz test suite for placeholder

* fix: lw place holder suite

* fix: auth n redis suite

Co-authored-by: JimMoen <LnJimMoen@outlook.com>
2021-11-23 10:56:43 +08: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
zhongwencool 04c204374a
chore: All placeholders are placed in the same header file (#6190)
* chore: All placeholders are placed in the same header file

* feat: Separate placeholders from the rules engine
2021-11-17 14:40:48 +08:00
zhongwencool e62fde321c
Emqx alarm (#5994)
* chore(alarm): normalize_message outside emqx_alarm

* chore(alarm): don't cache config in emqx_alarm; remove dirty_write/read; add desc/example to alarm; add more test

* chore(alarm_api): alarm_api with hocon schema

* fix: activted's nullable is true

* fix(swagger): translate map to object

* fix(cluster_rpc): debug failed cluster_rpc test

* fix: Update schema description

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-10-28 18:03:51 +08:00
Tobias Lindahl f39ccfb304 chore(persistent_sessions): address review comments 2021-10-26 09:53:18 +02:00
Tobias Lindahl 7b394267dd feat: persistent sessions stored in mnesia
* Persistent sessions can survive node/connection process down
* Internal SessionID is generated, external ClientID is as before
* Sessions are persisted to mnesia
* A session router is added in parallel to the ordinary router
* Messages that are subscribed to by a persistent session are
  persisted by publisher
* Information about persisted and delivered messages are stored in
  mnesia per session.
* A resume protocol similar to takeover is implemented for resuming
  from mnesia
* Can be configured (and enabled) by the top lever config
  "persistent_session_store"
2021-10-21 15:23:21 +02:00
Zaiming Shi 785793b345 refactor: add logging allow or not check for SLOG 2021-10-11 07:41:52 +02:00
Zaiming Shi 5274e0a726 refactor(emqx): add 'extra' field to message record 2021-10-11 02:07:33 +02:00
zhongwencool 93c210887b chore: don't use emqx_machine.hrl in emqx 2021-09-30 16:04:30 +08:00
zhongwencool 44a6f04a45 chore: reorganize shards position 2021-09-30 16:04:30 +08:00
zhongwencool be123f613d
Fix: apps should boots after emqx_machine_sup's children spawn. (#5851)
* fix(cluster_call): apps should start after cluster_call init

* fix: undef function

* chore: reformat code

* fix: ekka must start before emqx
2021-09-30 13:56:18 +08:00
zhanghongtong b94dcb7bc7 chore(release): update emqx release version 2021-09-29 18:29:44 +08:00
JimMoen c1ff30896a fix(frame): safely serializing and structured log. 2021-09-28 18:55:25 +08:00
Zaiming Shi 9d0ef5de6b refactor(emqx_frame): log frame parse error with more context 2021-09-28 14:11:18 +08:00
zhanghongtong 07a2ef4700 chore(release): update emqx release version 2021-09-10 19:34:45 +08:00
zhouzb be38bcc5cc chore(authn): adapt listener id type 2021-09-08 09:46:47 +08:00
zhouzb e998770f2e refactor(authn): refactor to support global and listener authentication 2021-09-06 18:46:08 +08:00
zhanghongtong eb495535d2 chore(release): update emqx release version 2021-08-27 21:19:53 +08:00
DDDHuang 9893c0263a
refactor: banned api (#5578) 2021-08-27 18:21:49 +08:00
k32 9c74fa42a5 chore(rlog): Use the new method of creating shards 2021-08-21 17:47:53 +02:00
zhanghongtong 26c0754732 chore(release): update emqx release version
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-08-13 17:55:56 +08:00
Zaiming Shi b10fb4e95d refactor: unify all io:format calls to use the same macro 2021-08-01 09:36:59 +02:00
Zaiming Shi 683974e1c8 refactor(log/textfmt): print mfa metadata in text formatter 2021-08-01 09:36:59 +02:00
Zaiming Shi e57f99168b refactor(logger): delete log header parse-transform
because now we have MFA in log
2021-08-01 09:36:59 +02:00
Zaiming Shi 0f5c5db841 refactor(logger): stop using anonymous fun for logging 2021-08-01 09:36:59 +02:00
zhanghongtong 1f4ce31010 chore(release): update emqx release version 2021-07-30 17:52:35 +08:00
zhanghongtong 2476664385 chore(release): update emqx release version 2021-07-17 18:12:40 +08:00
Shawn 499ab5d9c4 fix(config): configure a plain map for mqueue_priorities 2021-07-12 18:10:47 +08:00
zhanghongtong 4313e37994 chore(release): update emqx release version 2021-07-02 19:11:02 +08:00
Turtle 918a26e921 feat(conf): merge all conf to emqx.conf 2021-07-02 17:01:16 +08:00
k32 e8e956b074 chore(mod_delayed): Add RLOG shard 2021-06-28 21:35:10 +02:00
k32 73ec8c47cc chore(rule_engine): Add an RLOG shard 2021-06-28 20:29:08 +02:00
k32 26b2216e25 chore(shared_sub): Add shared_sub shard 2021-06-28 17:52:57 +02:00
k32 7c9861dbaa chore(banned): Add banned shard 2021-06-28 14:05:35 +02:00
JianBo He 8352fa6f31 fix(mqttsn): fix proto_name to MQTT-SN instead of MQTT (#4961) 2021-06-28 11:40:22 +08:00
k32 6505340cb8 feat(rlog): Introduce routing RLOG shard 2021-06-16 16:05:10 +02: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