Browse Source

fix(git-prompt): make `gitstatus.py` python3-compatible (#9186)

check_output() in get_tagname_or_hash() returns bytes instead of str in
python3.  Decode the return value to utf-8, this works in both python2
and python3.

Co-authored-by: Stimim Chen <stimim@google.com>
Stimim Chen 4 years ago
parent
commit
1ac40cd445
1 changed files with 2 additions and 2 deletions
  1. 2 2
      plugins/git-prompt/gitstatus.py

+ 2 - 2
plugins/git-prompt/gitstatus.py

@@ -11,11 +11,11 @@ def get_tagname_or_hash():
     """return tagname if exists else hash"""
     # get hash
     hash_cmd = ['git', 'rev-parse', '--short', 'HEAD']
-    hash_ = check_output(hash_cmd).strip()
+    hash_ = check_output(hash_cmd).decode('utf-8').strip()
 
     # get tagname
     tags_cmd = ['git', 'for-each-ref', '--points-at=HEAD', '--count=2', '--sort=-version:refname', '--format=%(refname:short)', 'refs/tags']
-    tags = check_output(tags_cmd).split()
+    tags = check_output(tags_cmd).decode('utf-8').split()
 
     if tags:
         return tags[0] + ('+' if len(tags) > 1 else '')