Mercurial > hg
changeset 24793:2ec894582ea2
bundle2: add a 'copy' method on parts
This is the first step in our quest for preserving the server output on error
(issue4594). We want to be able to copy the output parts from the aborted reply
into the exception bundle.
The function will be used in a later patch.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 16 Apr 2015 03:15:28 -0400 |
parents | 7d0421de8de3 |
children | 21f2e8f48ae1 |
files | mercurial/bundle2.py |
diffstat | 1 files changed, 9 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/bundle2.py Thu Apr 16 05:36:49 2015 -0400 +++ b/mercurial/bundle2.py Thu Apr 16 03:15:28 2015 -0400 @@ -655,6 +655,15 @@ self._generated = None self.mandatory = mandatory + def copy(self): + """return a copy of the part + + The new part have the very same content but no partid assigned yet. + Parts with generated data cannot be copied.""" + assert not util.safehasattr(self.data, 'next') + return self.__class__(self.type, self._mandatoryparams, + self._advisoryparams, self._data, self.mandatory) + # methods used to defines the part content def __setdata(self, data): if self._generated is not None: