Skip to content

Releases: php-mqtt/client

v1.3.0

26 May 17:35
5813fd2
Compare
Choose a tag to compare

✔️ This release does not contain any backwards incompatible changes.

Added

Full Changelog: v1.2.0...v1.3.0

Add support for MQTT 3.1.1

08 May 13:32
fcd560c
Compare
Choose a tag to compare

In #90, support for MQTT 3.1.1 has been added a few months ago. Since the implementation has not received any negative feedback, it seems to work as expected and is hereby released.

There MQTT 3.1.1 protocol can be used by passing 3.1.1 as fourth parameter to the constructor, e.g. using the provided constant:

$mqtt = new \PhpMqtt\Client\MqttClient($server, $port, $clientId, \PhpMqtt\Client\MqttClient::MQTT_3_1_1);

Add support for v3 of psr/log

15 Feb 19:49
0a0b2ed
Compare
Choose a tag to compare

Since more and more composer packages are relying on v3 of psr/log, this PR adds fully backwards compatible support for it in #94. This is possible because the Logger is marked as @internal.

Add support for v2 of psr/log

19 Dec 09:58
f2a52b8
Compare
Choose a tag to compare

Since more and more composer packages are relying on v2 of psr/log, this PR adds fully backwards compatible support for it in #92.

Fix: Abort connection handshake when connection timeout is reached

27 Sep 09:34
ddff90f
Compare
Choose a tag to compare

This release provides a fix for hanging connection attempts after successfully opening a socket connection (#84). This may happen when connecting to brokers running in a container, where the application has not bound the forwarded socket yet. The connection handshake is now aborted after the configured connection timeout.

Support for Shared Subscriptions

21 Mar 19:27
85fe51d
Compare
Choose a tag to compare

As part of #75, support for shared subscriptions has been added. Even though this is an MQTT 5 feature, all common brokers seem to support it for MQTT 3.1 connections as well. This means that connecting with multiple clients using a topic of the form $share/<group>/<topic> will have the broker distribute messages to all of those clients where the group name is the same. More details about shared subscriptions can be found on the HiveMQ blog.

Major design overhaul, more TLS options, quality improvements and extensive examples

10 Jan 18:44
ca47fff
Compare
Choose a tag to compare

With this release, long awaited features are finally here. Not only is there now full support for all TLS options offered and supported by PHP SSL contexts. Also, a lot of work has been put into refactoring and testing of existing code. A few APIs have been moved and renamed, and there is now also an extensive collection of examples available in the php-mqtt/client-examples repository.

A full list of changes can be found in the changelog. It should give a good idea how to upgrade as well. Upgrading is recommended.

Special thanks go to @thg2k for contributing to this version in various ways!

Release Candidate: major design overhaul, more TLS options, quality improvements and extensive examples

04 Jan 16:18
305fe35
Compare
Choose a tag to compare

With this release, long awaited features are finally here. Not only is there now full support for all TLS options offered and supported by PHP SSL contexts. Also, a lot of work has been put into refactoring and testing of existing code. A few APIs have been moved and renamed, and there is now also an extensive collection of examples available in the php-mqtt/client-examples repository.

A (preliminary) full list of changes can be found in the CHANGELOG.md.

If you have the time, please upgrade your application to this version and give feedback how it works for you. In about a week, a final version v1.0.0 will be published if everything goes by plan.

Support for client certificates

22 Oct 17:13
00f8ffb
Compare
Choose a tag to compare

With this release, support for client certificates has been added. It is now possible to use a client certificate with an encrypted or unencrypted key by providing the full path to the certificate and key files. The new settings are available through optional arguments of the ConnectionSettings. The addition is fully backwards compatible and updates should work without issues. Details about this change can be found in #41.

Fix: send PUBREL in response to PUBREC

19 Aug 12:23
79b3b99
Compare
Choose a tag to compare

When the MQTT client was used to subscribe to topics using QoS 2, it would not be able to receive messages with QoS 2 but only messages with lower QoS. This is because no PUBREL message was sent in response to received PUBREC messages, producing some sort of dead lock in the client-server communication. Details can be found in #37.