Mercurial > hg
changeset 49816:ae93ada06454
typing: add type hints to the rest of the posix module
These methods either don't have an analog in the windows module, or are aliased
in the windows module from something else (like os.path.xxx).
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 16 Dec 2022 18:27:15 -0500 |
parents | 464fe8b8f474 |
children | 2b1476714849 |
files | mercurial/posix.py |
diffstat | 1 files changed, 10 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/posix.py Fri Dec 16 18:14:54 2022 -0500 +++ b/mercurial/posix.py Fri Dec 16 18:27:15 2022 -0500 @@ -24,9 +24,11 @@ Iterable, Iterator, List, + Match, NoReturn, Optional, Sequence, + Tuple, Union, ) @@ -65,15 +67,15 @@ unlink = os.unlink rename = os.rename removedirs = os.removedirs -expandglobs = False +expandglobs: bool = False -umask = os.umask(0) +umask: int = os.umask(0) os.umask(umask) posixfile = open -def split(p): +def split(p: bytes) -> Tuple[bytes, bytes]: """Same as posixpath.split, but faster >>> import posixpath @@ -352,13 +354,13 @@ return False -def checkosfilename(path): +def checkosfilename(path: bytes) -> Optional[bytes]: """Check that the base-relative path is a valid filename on this platform. Returns None if the path is ok, or a UI string describing the problem.""" return None # on posix platforms, every path is ok -def getfsmountpoint(dirpath): +def getfsmountpoint(dirpath: bytes) -> Optional[bytes]: """Get the filesystem mount point from a directory (best-effort) Returns None if we are unsure. Raises OSError on ENOENT, EPERM, etc. @@ -410,7 +412,7 @@ # what normcase does to ASCII strings -normcasespec = encoding.normcasespecs.lower +normcasespec: int = encoding.normcasespecs.lower # fallback normcase function for non-ASCII strings normcasefallback = normcase @@ -518,7 +520,7 @@ return False -_needsshellquote = None +_needsshellquote: Optional[Match[bytes]] = None def shellquote(s: bytes) -> bytes: @@ -647,7 +649,7 @@ return os.spawnvp(os.P_NOWAIT | getattr(os, 'P_DETACH', 0), args[0], args) -def gethgcmd(): +def gethgcmd(): # TODO: convert to bytes, like on Windows? return sys.argv[:1]