eclipse-paho / paho.mqtt.embedded-c

Paho MQTT C client library for embedded systems. Paho is an Eclipse IoT project (https://iot.eclipse.org/)
https://eclipse.org/paho
Other
1.37k stars 757 forks source link

MQTTV5Packet vs V3 (MQTTPacket) Split #246

Closed CIPop closed 1 year ago

CIPop commented 1 year ago

This is a follow-up to https://github.com/eclipse/paho.mqtt.embedded-c/pull/245:

  1. Clear separation between V3 and V5 public APIs. (This allows applications to use both V3 and V5 at the same time.)
  2. Moved MQTTV5Packet.h in root (to allow #include ). Version-specific files have been moved into either \V3 or \V5 folders.
  3. Moving CONNECT willProperties within MQTTPacket_connectData's MQTTPacket_willOptions.
  4. Removed Test15 (which was re-using V3 public APIs against the V5 library)
  5. Temporarily disabled MQTTV5Client-C. (Will follow-up with the implementation.).
CIPop commented 1 year ago

Note: I found later yesterday that some of the structs are still common (e.g. for CONNECT). I will follow-up with another PR that adds a new test that includes both v3 and v5 libraries side-by-side and, with that, some corrections to struct naming.