diff --git a/CHANGELOG.md b/CHANGELOG.md index 40566d051..be3055b2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,16 @@ emqttd ChangeLog ================== +0.8.3-beta (2015-06-05) +------------------------- + +Bugfix: issue #158 - should queue:in new message after old one dropped + +Bugfix: issue #155 - emqtt_parser.erl: parse_topics/3 should reverse topics + +Bugfix: issue #149 - Forget to merge plugins/emqttd_auth_mysql from 'dev' branch to 'master' in 0.8.x release + + 0.8.2-alpha (2015-06-01) ------------------------- diff --git a/README.md b/README.md index c09b3f05b..edfba9761 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,7 @@ The MIT License (MIT) [@turtleDeng](https://github.com/turtleDeng) [@Hades32](https://github.com/Hades32) [@huangdan](https://github.com/huangdan) - +[@callbay](https://github.com/callbay) ## Author diff --git a/apps/emqtt/src/emqtt.app.src b/apps/emqtt/src/emqtt.app.src index 6f545b0bc..c444276fa 100644 --- a/apps/emqtt/src/emqtt.app.src +++ b/apps/emqtt/src/emqtt.app.src @@ -1,7 +1,7 @@ {application, emqtt, [ {description, "Erlang MQTT Common Library"}, - {vsn, "0.8.2"}, + {vsn, "0.8.3"}, {modules, []}, {registered, []}, {applications, [ diff --git a/apps/emqtt/src/emqtt_parser.erl b/apps/emqtt/src/emqtt_parser.erl index d2a70993e..387f041d4 100644 --- a/apps/emqtt/src/emqtt_parser.erl +++ b/apps/emqtt/src/emqtt_parser.erl @@ -196,7 +196,7 @@ wrap(Header, Rest) -> % parse_qos(Rest, [QoS | Acc]). parse_topics(_, <<>>, Topics) -> - Topics; + lists:reverse(Topics); parse_topics(?SUBSCRIBE = Sub, Bin, Topics) -> {Name, <<_:6, QoS:2, Rest/binary>>} = parse_utf(Bin), parse_topics(Sub, Rest, [{Name, QoS}| Topics]); diff --git a/apps/emqttd/src/emqttd.app.src b/apps/emqttd/src/emqttd.app.src index a6004f473..5c3347f27 100644 --- a/apps/emqttd/src/emqttd.app.src +++ b/apps/emqttd/src/emqttd.app.src @@ -1,7 +1,7 @@ {application, emqttd, [ {description, "Erlang MQTT Broker"}, - {vsn, "0.8.2"}, + {vsn, "0.8.3"}, {modules, []}, {registered, []}, {applications, [kernel, diff --git a/apps/emqttd/src/emqttd_queue.erl b/apps/emqttd/src/emqttd_queue.erl index 34b34a58f..d9897a3f8 100644 --- a/apps/emqttd/src/emqttd_queue.erl +++ b/apps/emqttd/src/emqttd_queue.erl @@ -25,7 +25,7 @@ %%% @end %%%----------------------------------------------------------------------------- -%% TODO: this module should be removed... +%% TODO: this module should be rewrited... -module(emqttd_queue). @@ -69,12 +69,12 @@ in(ClientId, Message = #mqtt_message{qos = Qos}, false -> % full if Qos =:= ?QOS_0 -> - lager:warning("Queue ~s drop qos0 message: ~p", [ClientId, Message]), + lager:error("Queue ~s drop qos0 message: ~p", [ClientId, Message]), Wrapper; true -> {{value, Msg}, Queue1} = queue:drop(Queue), - lager:warning("Queue ~s drop message: ~p", [ClientId, Msg]), - Wrapper#mqtt_queue_wrapper{queue = Queue1} + lager:error("Queue ~s drop message: ~p", [ClientId, Msg]), + Wrapper#mqtt_queue_wrapper{queue = queue:in(Message, Queue1)} end end. diff --git a/apps/emqttd/src/emqttd_sm_sup.erl b/apps/emqttd/src/emqttd_sm_sup.erl index ece44dd38..fc50956d1 100644 --- a/apps/emqttd/src/emqttd_sm_sup.erl +++ b/apps/emqttd/src/emqttd_sm_sup.erl @@ -20,7 +20,7 @@ %%% SOFTWARE. %%%----------------------------------------------------------------------------- %%% @doc -%%% emqttd client manager supervisor. +%%% emqttd session manager supervisor. %%% %%% @end %%%----------------------------------------------------------------------------- diff --git a/plugins/emqttd_auth_mysql/etc/plugin.config b/plugins/emqttd_auth_mysql/etc/plugin.config index 367983f5f..1ab1a6e07 100644 --- a/plugins/emqttd_auth_mysql/etc/plugin.config +++ b/plugins/emqttd_auth_mysql/etc/plugin.config @@ -8,7 +8,7 @@ {encoding, utf8} ]}, {emqttd_auth_mysql, [ - {users_table, mqtt_users}, + {user_table, mqtt_users}, {password_hash, plain}, {field_mapper, [ {username, username}, diff --git a/rel/files/plugins.config b/rel/files/plugins.config index c2fde4d51..ce65e0625 100644 --- a/rel/files/plugins.config +++ b/rel/files/plugins.config @@ -9,14 +9,13 @@ % {encoding, utf8} % ]}, % {emqttd_auth_mysql, [ -% {users_table, mqtt_users}, +% {user_table, mqtt_users}, % {password_hash, plain}, % {field_mapper, [ % {username, username}, % {password, password} % ]} -% ]} -% +% ]}, % {emqttd_dashboard, [ % {listener, % {http, 18083, [ diff --git a/rel/reltool.config b/rel/reltool.config index 1ea929f55..f26654f74 100644 --- a/rel/reltool.config +++ b/rel/reltool.config @@ -4,7 +4,7 @@ {lib_dirs, ["../apps", "../deps", "../plugins"]}, {erts, [{mod_cond, derived}, {app_file, strip}]}, {app_file, strip}, - {rel, "emqttd", "0.8.2", + {rel, "emqttd", "0.8.3", [ kernel, stdlib,