Unfortunately Guzzle doesn't follow semantic versioning. From 3.5 to 3.6 they made some *major* API changes that completely broke Ratchet. For this reason we have to test and approve every new minor version of Guzzle before it can be accepted in the requirement constraints.