Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:31:11 -0500] rev 49939
typing: disable a few incorrect warnings in pywatchman
The module-attr warnings are for things that only exist on Windows, and the
wrong-keyword-args warning is due to a special case for a specific constructor.
Both of these are properly conditionalized.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:28:33 -0500] rev 49938
watchman: refactor transport connecting to unconfuse pytype
Pytype sees `self.proc` as potentially `None` here, even though it's set by the
`_connect()` logic. Instead of asserting, simply use the process returned by
that method (which it sets into `self.proc` before returning, so there's no
functional change here).
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:24:11 -0500] rev 49937
watchman: refactor `ctypes.windll.kernel32` references to a local variable
This is flagged by pytype as an attribute-error, and it's easier to disable that
in a single place.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:21:09 -0500] rev 49936
typing: disable [unsupported-operands] warning in the largefiles outgoing hook
For some reason, pytype thinks `toupload` is a set:
No attribute '__setitem__' on Set[nothing]
(It actually is a set in the subsequent `else` branch, but I'm not interested in
trying to rewrite this to be consistent.)
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:15:27 -0500] rev 49935
typing: add some assertions that a variable isn't None
In the case of blackbox, there's a default limit if one isn't explicitly
supplied. For the monotone regex, neither group is optional, so a match means
it's not None.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:09:41 -0500] rev 49934
largefiles: reference `mercurial.configitems.dynamicdefault` directly
Pytype was unable to see `dynamicdefault` on `eh.configitem`. This is clearer
anyway.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:04:16 -0500] rev 49933
releasenotes: fix a typo in a comment
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Jan 2023 17:02:02 -0500] rev 49932
schemes: fix a broken check for drive letter conflicts
Flagged by pytype locally. It appears to have regressed in 1863584f2fba (not
yet released).
This seems like an obvious typo- `dict.isalpha()` is nonsense. There's no crash
though because `schemes` is pre-populated with 5 schemes (that are all now
defunct), so the length of the dict is never 1, so it's impossible to abort.