Is it possible that the compression format got changed by the new patch server?

I may be looking at the totally wrong thing, but I poked around a bit, and I think the problem might be coming from line 400 in patcher.py:
decompressor = zlib.decompressobj(zlib.MAX_WBITS|32)

That's even commented as:
#NOTE : Without the `winsize` parameter set to `zlib.MAX_WBITS` decompression will fail with an error:
# zlib.error: Error -3 while decompressing data: incorrect header check
#NOTE : Without bitwise adding 32 to the `winsize` parameter decompression will fail with an error:
# zlib.error: Error -3 while decompressing data: invalid distance too far back
# More information about options: http://stackoverflow.com/questions/1838699

I played around with different parameters to decompressobj a bit but didn't come up with anything useful. Since the current options are supposed to auto-detect the header, maybe the format got changed to something other than zlib or gzip? Although it seems that would have required a change to the Windows client too...