Fix error: don't assume status is a tuple
This fix also works with older versions of Mercurial. `repo.status()` used to
return a named tuple; since 5.2.1 it returns an object. So `st[:5]` no longer
works, but `st.modified` works with both old and new versions of Mercurial.
author |
Sietse Brouwer <sbbrouwer@gmail.com> |
date |
Tue, 26 May 2020 14:57:58 +0200 |
parents |
cc789a5baf4a
|
children |
25b0cf6b43f5
|
branches/tags |
(none) |
files |
prompt.py |
Changes
--- a/prompt.py Tue May 26 15:08:02 2020 +0200
+++ b/prompt.py Tue May 26 14:57:58 2020 +0200
@@ -279,9 +279,9 @@
def _status(m):
g = m.groups()
- st = repo.status(unknown=True)[:5]
- modified = any(st[:4])
- unknown = len(st[-1]) > 0
+ st = repo.status(unknown=True)
+ modified = any((st.modified, st.added, st.removed, st.deleted))
+ unknown = len(st.unknown) > 0
flag = ''
if '|modified' not in g and '|unknown' not in g: