Tracking Issue - Pyright Compliance
Open
Nobody has claimed this yet.
.typing
- Dominant language
- Python
- Stars
- 59
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
This is a tracking issue for addressing stricter compliance with pyright. Each issue needs to be considered on a case-by-case basis, in some cases it might be best to keep the rule disabled.
### Tasks
- [ ] `reportArgumentType`: None defaults without None in their type hint, Variety of other issues
- [ ] https://github.com/rstudio/pins-python/issues/291
- [ ] `reportAttributeAccessIssue`: Variety of issues
- [ ] `reportCallIssue`: Passing extra args to the IFileSystem Protocol, Missing overloads for as_df arg in pin_search and pin_versions
- [ ] https://github.com/rstudio/pins-python/issues/304
- [ ] `reportIncompatibleMethodOverride`: Issues with ExtendMethodDoc, RSConnect implementation of the IFileSystem Protocol
- [ ] https://github.com/rstudio/pins-python/issues/276
- [ ] https://github.com/rstudio/pins-python/issues/312
- [ ] `reportMissingImports`: https://github.com/rstudio/pins-python/issues/262#issuecomment-2240875273
- [ ] `reportMissingTypeStubs`: Missing stubs for fsspec: https://github.com/fsspec/filesystem_spec/issues/625, Missing stubs for joblib: https://github.com/joblib/joblib/issues/1516
- [ ] https://github.com/rstudio/pins-python/issues/306
- [ ] `reportOptionalMemberAccess`: RSConnect API _raw_query return type issue, prepare_pin_version unhandled case
- [ ] `reportOptionalSubscript`: RSConnect API _raw_query return type issue, RSConnect implementation of the IFileSystem Protocol
- [ ] `reportPossiblyUnboundVariable`: Mostly False positives arising from fragmented if statements and integer comparisons
- [ ] `reportReturnType`: Variety of issues
- [ ] https://github.com/rstudio/pins-python/issues/308
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the task list and the linked issues, grouping the reported pyright rules and deciding each case individually, including where a rule should remain disabled. Review the affected issues and pyright findings; done means the listed compliance tasks are resolved or explicitly justified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- developer-experience, tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100