OK, I spoke too soon. We've spent a while looking more closely at 3.1. The implementation of the protocol has some serious problems. It does not follow the documented ZMTP/1.0 spec. Specifically, it doesn't exchange identities for socket types except for the REQ-REP pattern, but it does upstream subscriptions. That means there's no immediate message from the peer, no way to do the backwards compatibility negotation we do in 3.2.
There are also some faults in the message decoder, which does not properly clear internal bits in the message flags when decoding a message. This causes assertion failures. We think it is doable to add the heuristics to 3.2 to detect old 3.1 peers but it's going to be non-trivial, at least a couple of days of work. -Pieter On Sat, Nov 17, 2012 at 2:44 AM, Emmanuel Taurel <[email protected]> wrote: > Hi all, > > That's a very, very good news. > Thank's for the ZMQ team efforts. It really simplify our life > > Emmanuel > > > Le 16.11.2012 18:25, Pieter Hintjens a écrit : > >> On Fri, Nov 16, 2012 at 10:51 PM, Emmanuel TAUREL <[email protected]> wrote: >> >>> Compatibility between 3.1 and 3.2.1-rc2 on one hand and assert in zmq >>> code in another hand are two different subjects. >> >> >> I think we have a patch for this. It's not so complex, after all.... >> >> -Pieter > > _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
