Just thought I would share this with you all. As many of you know, the MQTT library that comes with the ESP8266 SDK is based on the work by tuanpm and, while I don't want to take anything away from his fantastic work, it has a number of serious problems when you need to go to higher level QoS, and also because it's based on the espconn library that has quite a few issues. It also appears to no longer be maintained.
I've been talking to a few people about new libraries, in particular @someburner and I discussed building a new one, but I recently found this library and it looks very promising - in particular it uses low level non-blocking sockets (I really have no idea why the ESP RTOS folks decided to use sockets and even less idea why they would use blocking calls) and will compile against mbedTLS. This makes it a real possible candidate for use with the ESP NonOS SDK (actually against both NonOS and RTOS as it's also thread safe).
Have a look - would be interested in your feedback.
https://github.com/LiamBindle/MQTT-C
PS: I have no involvement in it apart from stumbling over it.