Typechecking isn't wired into the repo, so errors only surface if you happen to run pyright by hand against the right interpreter. Nothing runs on PRs either — docs.yml and publish-release.yml are both push-triggered.
Current strict output
With {"include": ["src", "tests"], "typeCheckingMode": "strict"}:
src/benlink/protocol/command/bitfield.py:564 - Type "(Any) -> ..." is not assignable to declared type
src/benlink/protocol/command/bitfield.py:568 - Argument of type ... cannot be assigned to parameter "fn"
src/benlink/protocol/command/bitfield.py:570 - Type "(Any, int) -> ..." is not assignable to declared type
src/benlink/protocol/command/bitfield.py:575 - Argument of type ... cannot be assigned to parameter "fn"
tests/test_firmware.py:171 - "_resolve_product" is private and used outside of the module in which it is declared (reportPrivateUsage)
The four bitfield.py ones are all the same thing: bf_dyn accepts either a 1-arg or 2-arg discriminator, and the union isn't assignable to BFType's single signature. Wants either a real fix or a targeted ignore.
The test one just needs _resolve_product made public or ignored at the call site.
Note on interpreter selection
Worth having the config make the intended interpreter unambiguous. With the wrong env active the editor reports missing-import errors for pytest/benlink that have nothing to do with the code, which is easy to misread as a broken install.
Typechecking isn't wired into the repo, so errors only surface if you happen to run
pyrightby hand against the right interpreter. Nothing runs on PRs either —docs.ymlandpublish-release.ymlare both push-triggered.pyrightconfig.json(include: ["src", "tests"], pintypeCheckingMode)make typecheck/make testdevextra inpyproject.tomlsopytestandpyrightversions are pinnedCurrent strict output
With
{"include": ["src", "tests"], "typeCheckingMode": "strict"}:The four
bitfield.pyones are all the same thing:bf_dynaccepts either a 1-arg or 2-arg discriminator, and the union isn't assignable toBFType's single signature. Wants either a real fix or a targeted ignore.The test one just needs
_resolve_productmade public or ignored at the call site.Note on interpreter selection
Worth having the config make the intended interpreter unambiguous. With the wrong env active the editor reports missing-import errors for
pytest/benlinkthat have nothing to do with the code, which is easy to misread as a broken install.