Skip to content

Major feature release

Compare
Choose a tag to compare
@vveljko vveljko released this 25 Dec 21:54
· 10 commits to master since this release

Christmas 2018 release

The slightly breaking change is the type of the result that publish() and history() return. This is to support ESP32, which, at the time of this writing, had a slightly incompatible implementation, as it would drop available() to 0 when the TCP/IP connection is lost, even if you could still read() what was in its buffer. So, we had to introduce a "middle man" to keep track of the actual number of available octets.

In general, this is not a breaking change, because old code will work with all boards that it currently works with. Only if you want to use ESP32 do you need to update your code, but since ESP32 doesn't work with earlier versions, this is not a functionally breaking change.

But, still, the interface of the library did change, it is a formally breaking change, so we deemed it worthy of taking a major version bump.

The other major change is the addition of "message crackers", lightweight parsers of PubNub responses, which make the client code easier to develop. They are even easier to use then some "generic" JSON library. This is not breaking at all, it simply "builds" on the existing interface. You can still use the "low level" interface of previous versions.

Examples are updated to use message crackers (with some left to use the old - low level - interface to illustrate that usage), but also to use the de-facto standard ArduinoJson library and in some other ways.