##// END OF EJS Templates
typing: (mostly) align the signatures of `imanifestrevisionstored` overrides...
typing: (mostly) align the signatures of `imanifestrevisionstored` overrides When we change the implementations to subclass this explicitly, pytype complains that the signatures mismatch for various methods. It seems hung up on ones in `mercurial.manifest` that have type hints on the return value, but lacked it in the Protocol class (which it thinks returns `None` if there's no annotation). The tricky part is that a lot of the return types in the `mercurial.manifest` module are custom types specific to that module (e.g. `'manifestctx' | 'treemanifestctx'`). Those should probably be replaced with Protocol classes. I was going to avoid making a long series longer by disabling that check for now by putting `Any` as the return type on the Protocol class methods, and then realized the problem is the class isn't marked as a Protocol (that property isn't inherited). For now, lock in the synchronized signatures.
Matt Harbison -
r53371:048c1199 default
Show More
Name Size Modified Last Commit Author
/ mercurial / templates / spartan
__init__.py Loading ...
branches.tmpl Loading ...
changelog.tmpl Loading ...
changelogentry.tmpl Loading ...
changeset.tmpl Loading ...
error.tmpl Loading ...
fileannotate.tmpl Loading ...
filediff.tmpl Loading ...
filelog.tmpl Loading ...
filelogentry.tmpl Loading ...
filerevision.tmpl Loading ...
footer.tmpl Loading ...
graph.tmpl Loading ...
graphentry.tmpl Loading ...
header.tmpl Loading ...
index.tmpl Loading ...
manifest.tmpl Loading ...
map Loading ...
notfound.tmpl Loading ...
search.tmpl Loading ...
shortlog.tmpl Loading ...
shortlogentry.tmpl Loading ...
tags.tmpl Loading ...