Skip to content

Releases: redboltz/mqtt_cpp

v8.0.0

29 Jul 02:38
be0e5e9
Compare
Choose a tag to compare
  • Added PINGRESP timeout and made internal force_disconnect() calling in the strand. (#649)
  • Added async_client example. (#647)
  • Made async_connect actually async. (#643)
  • Added missing packet types to switch case. (#642)
  • Enabled cmake target configuration. (#632)
  • Made mqtt::shared_any force_move the constructor parameter into the member variable. (#629)
  • Added io_context getter for servers. (#627)
  • Tracked total bytes sent and received on socket. (#625, #641)
  • <<<< breaking change >>>> Replaced use of boost::asio::deadline_timer with boost::asio::steady_timer. (#621, #626)
  • Added getter for client_id_. (#619)
  • Use the -fsyntax-only flag instead of --preprocess for header checking (#617)
  • Added inflight subscribe and unsubscribe packet_id clean up mechanism. (#612)
  • Added protocol error processing if control packets are received before connect/connack is received. (#611)
  • Fixed uninitialized pubrel reason code. (#607)
  • Fixed inefficient packet on puback/pubrec/pubrel/pubcomp. (#604)
  • Added getters for publish and pubrel message. (#603)
  • <<<< breaking change >>>> Fixed message version of for_each_store. (#602)
  • Skipped properties phase if remaining length is 0. (#600)
  • Updated v5_message.hpp pubrel fixed header flags. (#599)
  • <<<< breaking change >>>> Updated minimum boost requirement to 1.67.0. (#595)
  • Use std::move instead of std::forward in null_strand. (#594)
  • Removed boost::static_visitor inheritance. (#589)
  • Refined CI. (#587, #590, #613, #618)
  • Added redirect supporting function and an example. (#585)
  • Fixed warnings. (#582, #596, #620)
  • <<<< breaking change >>>> Removed packet_id from restoring functions. (#581)
  • Rifined examples. (#580)
  • Added native_handle getting function. (#577)
  • Fixed missing base class hander call. (#576)
  • Fixed accumulate type. (#570)
  • Added workaround of libstdc++ std::tuplestd::any bug. (#568, #569, #571)
  • Use mqtt::force_move for test_broker. (#562)
  • Added no property overloads for MQTT v3.1.1 users. (#561)
  • Fixed missing argument on async_send_pubrel. (#560)
  • Migrate CI from travis-ci to github actions. (#553, #556, #564)
  • <<<< breaking change >>>> Modified buffer lifetime management strategy to meet Boost.Asio CompletionToken. (#552)
  • <<<< breaking change >>>> Added noexcept to event handler virtual functions. User needs to catch the exception in the handlers if an exception is thrown. (#551)
  • <<<< breaking change >>>> Introduced publish_options and subscribe_options. Remove *_dup functions. (#548, #579)
  • <<<< breaking change >>>> Removed acquired_* family. Now non acquired name version has the overload that takes packet_id parameter. (#547)

v7.0.1

05 Nov 09:15
e3f688d
Compare
Choose a tag to compare
  • Fixed packet_id leak on QoS2 publish. (backported) (#541, #542, #543)

v6.0.7

05 Nov 05:31
b8872ca
Compare
Choose a tag to compare
  • Fixed packet_id leak on QoS2 publish. (backported) (#541, #542, #543)

v7.0.0

02 Oct 07:51
9a63149
Compare
Choose a tag to compare
  • Added explicit destructor to clients. (#481)
  • Fixed warnings. (#480)
  • Added conversion function from mqtt::qos to suback_return_code and v5::suback_reason_code. (#478)
  • Added boost::asio::ssl::context getter. Set [[deprecated]] attribute to wrapped function for boost::asio::ssl::context. They will be removed on verion 8.0.0. (#472)
    • mqtt_cpp is now separated from boost::asio::ssl::context detail.
  • Fixed boost::type_erasure namespace. (#467)
  • Refactoring. (#465)
  • Improved receive packet processing. (#462)
  • Fixed comments. (#454, #455)
  • Added constexpr. (#451, #461)
  • Use virtual function based polymorphism on endpoint receive packet processing. Existing APIs are preserved as callable_overlay. (#444)
    • Thanks to de-virtualization optimization, it is achieved zero-overhead.
  • <<<< breaking change >>>> Updated set_accept_handler()'s parameter to shared_ptr of the endpoint. (#443)
  • <<<< breaking change >>>> Updated start_session()'s parameter to mqtt::any. It only for life keeping purpose. (#442)
  • <<<< breaking change >>>> Remove optional from puback, pubrec, pubrel, and pubcomp. (#441, #470, #476, #477)
  • Fixed invalid next packet read on disconnect packet process. (#439)
  • <<<< breaking change >>>> Remove optional from the parameter suback_return_code(MQTT v3.1.1) of suback handler. (#434)
  • <<<< breaking change >>>> Replaced MQTT_NO_TLS with MQTT_USE_TLS and default value is false. Now, all configure macro has positive meaning. (#428)
  • Improved build system. (#425, #459)
  • Used old style boost::type_erasure. The new style causes compile error if -pedantic flag is set. (#423)
  • Introduced include dependency checking build option. (#422)
  • <<<< breaking change >>>> Improved parameters of the publish handler. parsing fixed_header is no longer required. (#421)
  • Replaced boost::asio deprecated API with new ones. (#419, 466)
  • Set [[deprecated]] attribute to derecated variadic parameter version of suback/unsuback family. They will be removed on verion 8.0.0. (#417)
  • Fixed BOOST_VERSION comparison typo. (#413)
  • Improved travis-ci. (#412)
  • Added boost::multi_index debug flag to travis-ci. (#406)
  • <<<< breaking change >>>> Minimum boost required version is 1.66.0. (#403)
  • Fixed lack of next read packet bug. (#402)
  • Added missing include. (#398)
  • <<<< breaking change >>>> Introduced enum class instead of std::uint8_t. (#395, #397, #401, #414, #415, #438)
  • Removed invalid WebSocket code from the test. (#394)
  • <<<< breaking change >>>> Added subscribe_options class. (#387, #388, #393)
    • subscribe_options can be created from std::uint8_t so the impact of existing code is limited.
  • <<<< breaking change >>>> Removed deprecated APIs. (#384)

v6.0.6

15 Sep 03:51
937279c
Compare
Choose a tag to compare
  • Fixed server side endpoint lifetime management problem. (#439, #440)

v6.0.5

10 Sep 23:33
1237153
Compare
Choose a tag to compare
  • Fixed receive stop problem when unsuback handler is not set. (#408)
  • Updated minimum boost requirement to 1.66.0. (#410)
    • NOTE: Boost minimum requirement should be updated at v6.0.0. So this release considered the update as a bug fix, not major version up.

v6.0.4

04 Sep 07:01
b6fe528
Compare
Choose a tag to compare
  • Fixed invalid subscribe qos comparison on receive. (#385)

v6.0.3

03 Sep 23:16
c66f3db
Compare
Choose a tag to compare
  • Fixed sync subscribe/unsubscribe with properties APIs dispatch to deprecated APIs problem. (#383)

v6.0.2

01 Sep 09:17
ed3cd91
Compare
Choose a tag to compare
  • Fixed moved from object access problem. (#378)
  • Fixed unexpected copy fallback of move operations. (#378)

v6.0.1

28 Aug 10:58
e811f0b
Compare
Choose a tag to compare
  • Fixed compile error of acquired_async_publish_dup(). (#375)