# HG changeset patch # User Gábor Stefanik # Date 1503328417 -7200 # Node ID 6987d6cd420c35a9dde0642cb6cd4008e59afa70 # Parent f38bc05696713624628641e6a042d2219830ef09 client: raise ResponseError in _readchannel() Make it clearer that this is an unrecoverable communication error. ServerError alone is not always unrecoverable, as CapabilityError is considered a subtype of it. This way, a caller can check for ResponseError to identify errors that require reopening the client to recover. diff -r f38bc0569671 -r 6987d6cd420c hglib/client.py --- a/hglib/client.py Mon Aug 21 17:06:13 2017 +0200 +++ b/hglib/client.py Mon Aug 21 17:13:37 2017 +0200 @@ -140,7 +140,7 @@ data = self.server.stdout.read(hgclient.outputfmtsize) if not data: self.close() - raise error.ServerError() + raise error.ResponseError('no response received from server') channel, length = struct.unpack(hgclient.outputfmt, data) if channel in b('IL'): return channel, length