typing: add several assertions to dirstatemap to appease pytype stable
authorMatt Harbison <matt_harbison@yahoo.com>
Fri, 30 Jul 2021 00:11:56 -0400
branchstable
changeset 47790 a11520e66ade
parent 47789 064cd182555f
child 47791 60ccc86a12f3
typing: add several assertions to dirstatemap to appease pytype (grafted from default to stable) I think it's been mentioned in IRC that these can't be None in this case. This fixes: File "/mnt/c/Users/Matt/hg/mercurial/dirstatemap.py", line 213, in addfile: unsupported operand type(s) for &: 'None' and 'int' [unsupported-operands] No attribute '__and__' on None or '__rand__' on int Called from (traceback): line 290, in reset_state File "/mnt/c/Users/Matt/hg/mercurial/dirstatemap.py", line 214, in addfile: unsupported operand type(s) for &: 'None' and 'int' [unsupported-operands] No attribute '__and__' on None or '__rand__' on int Called from (traceback): line 290, in reset_state Differential Revision: https://phab.mercurial-scm.org/D11235
mercurial/dirstatemap.py
--- a/mercurial/dirstatemap.py	Mon Aug 02 10:51:19 2021 -0400
+++ b/mercurial/dirstatemap.py	Fri Jul 30 00:11:56 2021 -0400
@@ -209,6 +209,9 @@
         else:
             assert size != FROM_P2
             assert size != NONNORMAL
+            assert size is not None
+            assert mtime is not None
+
             state = b'n'
             size = size & rangemask
             mtime = mtime & rangemask