python-trio / python-trio/trio
Create documentation page for typing
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 7.3k
- Forks
- 431
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 6
Description
I think there's sufficient nuances in trio's typing to merit a documentation page to point at. Off the top of my head:
- that we don't support .spawn yet
- minimum mypy version (maybe pyright version too?) because eg my currently open RaisesGroup types PR requires 1.14+ (at least that's my guess. I remember it doesn't work on 1.13.2 because of the self-types in init)
- relationship with trio-typing (full replacement other than aforementioned not supporting .spawn)
- how to allow nursery-like objects as a 3rd party (just use a protocol w/ the methods/attributes you want), as an alternative to the (closed) PR to export one
There's probably other stuff too, but mainly it would be useful as a link reply to anyone talking about trio-typing.
... do other people think this is a decent idea? Maybe my bullet points above are exhaustive in which case idk maybe we don't need a docs page.
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 by reviewing the project's existing documentation structure and the typing topics listed in the issue. Create a linkable page covering .spawn support, type-checker version requirements, the relationship with trio-typing, and protocols for third-party nursery-like objects; done means these points are documented clearly and any additional relevant nuances are included.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100