Mercurial > public > mercurial-scm > hg-stable
diff mercurial/hg.py @ 37110:71543b942eea
merge: return an attrs class from update() and applyupdates()
Previously, we returned a tuple containing counts. The result of an
update is kind of complex and the use of tuples with nameless fields
made the code a bit harder to read and constrained future expansion
of the return value.
Let's invent an attrs-defined class for representing the result of
an update operation.
We provide __getitem__ and __len__ implementations for backwards
compatibility as a container type to minimize code churn.
In (at least) Python 2, the % operator seems to insist on using
tuples. So we had to update a consumer using the % operator.
.. api::
merge.update() and merge.applyupdates() now return a class
with named attributes instead of a tuple. Switch consumers
to access elements by name instead of by offset.
Differential Revision: https://phab.mercurial-scm.org/D2692
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 05 Mar 2018 00:02:13 -0500 |
parents | f0b6fbea00cf |
children | 6f570c501e3e |
line wrap: on
line diff
--- a/mercurial/hg.py Fri Feb 23 11:48:58 2018 +0530 +++ b/mercurial/hg.py Mon Mar 05 00:02:13 2018 -0500 @@ -752,7 +752,9 @@ if quietempty and not any(stats): return repo.ui.status(_("%d files updated, %d files merged, " - "%d files removed, %d files unresolved\n") % stats) + "%d files removed, %d files unresolved\n") % ( + stats.updatedcount, stats.mergedcount, + stats.removedcount, stats.unresolvedcount)) def updaterepo(repo, node, overwrite, updatecheck=None): """Update the working directory to node.