Skip to content
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

Typing Spec Conformance #16

Open
2 of 13 tasks
yangdanny97 opened this issue Mar 7, 2025 · 2 comments
Open
2 of 13 tasks

Typing Spec Conformance #16

yangdanny97 opened this issue Mar 7, 2025 · 2 comments

Comments

@yangdanny97
Copy link
Contributor

yangdanny97 commented Mar 7, 2025

This is a non-exhaustive list of current priorities, items will be added/checked off as things come up

  • global
  • nonlocal
  • constructor-as-callable
  • ClassVar
  • context-aware type form validation
  • variance inference
  • typeis
  • TypeAliasType()
  • return NotImplemented
  • Override checks for Final and @final
  • Assignability checks for Final and @final
  • del
  • abstract class instantiation check

Our current conformance test suite results can be found here:

@AA-Turner
Copy link

AA-Turner commented Mar 11, 2025

It also seems *args check iterability of the type rather than wrapping in an Iterable/etc:

def spam(*x: int) -> None:
    return print(*x)
PS> pyrefly check spam.py
ERROR spam.py:2:18-20: Type `int` is not iterable

A

facebook-github-bot pushed a commit to facebook/pyre-check that referenced this issue Mar 12, 2025
Summary:
As suggested by Rebecca, this avoids some duplication in the annotation binding/solving logic.

The more granular AnnotationTarget will also allow us to better model *args and *kwargs types, to help us fix facebook/pyrefly#16 (comment)

Reviewed By: rchen152

Differential Revision: D71012503

fbshipit-source-id: 4015d42dcd520821f9de21421f4f8c3b0d68d10e
@rchen152 rchen152 reopened this Mar 12, 2025
@rchen152
Copy link
Contributor

I think the bot got confused by the "help us fix" language in facebook/pyre-check@97b80e3 XD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants