# HG changeset patch # User Gregory Szorc # Date 1516491782 28800 # Node ID 9d249f3de730f5ba59e305d08b68b741cc6f63a8 # Parent c6ef8e841873fe4f0b98730f63bfe7830f37dd89 wireproto: don't compress errors from getbundle() Errors should be small. There's no real need to compress them. Truth be told, there's no good reason to not compress them either. But leaving them uncompressed makes it easier to test failures by looking at the raw HTTP response. This makes it easier for us to write tests. It may make it easier for people writing their own clients. Differential Revision: https://phab.mercurial-scm.org/D1922 diff -r c6ef8e841873 -r 9d249f3de730 mercurial/wireproto.py --- a/mercurial/wireproto.py Sat Jan 20 16:08:07 2018 -0800 +++ b/mercurial/wireproto.py Sat Jan 20 15:43:02 2018 -0800 @@ -862,6 +862,8 @@ raise error.Abort(bundle2requiredmain, hint=bundle2requiredhint) + preferuncompressed = False + try: if repo.ui.configbool('server', 'disablefullbundle'): # Check to see if this is a full clone. @@ -891,8 +893,10 @@ advargs.append(('hint', exc.hint)) bundler.addpart(bundle2.bundlepart('error:abort', manargs, advargs)) - return streamres(gen=bundler.getchunks()) - return streamres(gen=chunks) + chunks = bundler.getchunks() + preferuncompressed = True + + return streamres(gen=chunks, prefer_uncompressed=preferuncompressed) @wireprotocommand('heads') def heads(repo, proto):