-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add mypy roadmap #3460
Add mypy roadmap #3460
Conversation
Thanks! Are you also deleting the defunct one from the mypy-lang website? Or adding a link back to this file? |
|
||
## July-December 2017 | ||
|
||
- Invest some effort into systematically filling in missing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you're probably aware, I'm already trying to work on this. My current approach is pretty haphazard, so let me know if you want to coordinate on filling in specific areas.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea we have is to implement an analysis that can help us find the stubs (or parts of stubs) that cause the largest number of Any
types when type checking a program. We haven't started work on this yet, but we'll keep you updated once we make some progress on this.
I'll add a link to the new roadmap to the mypy website. The old roadmap is already gone (see http://mypy-lang.org/roadmap.html). |
fine-grained incremental type checking, built on top the daemon | ||
mode. | ||
|
||
- Start work on editor plugins and support for selected IDE features. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this roadmap support proposals for addition of items?
I have few such proposals for July-December 2017 section:
- Make strict-optional the default
- Better support for union types (e.g. in overloads, see Should have a way to annotate an Optional carryover method. #3295, in joins etc.)
- Better support for forward references (there are currently several issues about this). This is 90% dependent on re-working semantic analysis passes
And maybe also (for later time?):
- Better support for algebraic data types (aka
NamedUnion
, see Better alternative for algebraic data types #2464) - Simple dependent types (Simple dependent types #3062 and Integer generics #3345)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we do want to move forward with strict-optional. For the other issues, I'm not sure these warrant roadmap inclusion -- we don't want the roadmap to become synonymous with the issue tracker, and we're not saying we want to ignore the issue tracker.
* master: (23 commits) Make return type of open() more precise (python#3477) Add test cases that delete a file during incremental checking (python#3461) Parse each format-string component separately (python#3390) Don't warn about returning Any if it is a proper subtype of the return type (python#3473) Add __setattr__ support (python#3451) Remove bundled lib-typing (python#3337) Move version of extensions to post-release (python#3348) Fix None slice bounds with strict-optional (python#3445) Allow NewType subclassing NewType. (python#3465) Add console scripts (python#3074) Fix 'variance' label. Change label for variance section to just 'variance' (python#3429) Better error message for invalid package names passed to mypy (python#3447) Fix last character cut in html-report if file does not end with newline (python#3466) Print pytest output as it happens (python#3463) Add mypy roadmap (python#3460) Add flag to avoid interpreting arguments with a default of None as Optional (python#3248) Add type checking plugin support for functions (python#3299) Mismatch of inferred type and return type note (python#3428) Sync typeshed (python#3449) ...
No description provided.