Skip to content

Mypy 1.5 Release Planning #15588

Description

@svalentin

Planning to make the 1.5 release around middle of July.

Please post here any issues you'd like to see fixed in the release, or PRs you'd like to have merged. Will make the release branch as release-1.5.

Activity

  1. added
    metaIssues tracking a broad area of work
    on Jul 4, 2023
  2. self-assigned this
    on Jul 4, 2023
  3. svalentin commented on Jul 4, 2023

    @svalentin
    CollaboratorAuthor

    Looks like typeshed syncing is having a conflict when cherry picking "Remove use of LiteralString in builtins" (6f913a148)
    https://github.com/python/mypy/actions/workflows/sync_typeshed.yml

  4. AlexWaygood commented on Jul 4, 2023

    @AlexWaygood
    Member

    Looks like typeshed syncing is having a conflict when cherry picking "Remove use of LiteralString in builtins" (6f913a148) https://github.com/python/mypy/actions/workflows/sync_typeshed.yml

    Here you go:

    I'm pretty seasoned with these by now 😆

  5. svalentin commented on Jul 4, 2023

    @svalentin
    CollaboratorAuthor

    Ah, thanks! :D

  6. cdce8p commented on Jul 5, 2023

    @cdce8p
    Collaborator

    I would like to see this included. It's just missing a final review.

  7. cdce8p commented on Jul 9, 2023

    @cdce8p
    Collaborator

    Small fix for a sqlalchemy issue with the PEP 681 implementation

  8. ikonst commented on Jul 12, 2023

    @ikonst
    Contributor
  9. svalentin commented on Jul 13, 2023

    @svalentin
    CollaboratorAuthor

    Looks like we have a typeshed bug:

    from unittest.mock import patch
    
    def addition(a: int, b:int) -> int:
        return a+b
    
    @patch('test.addition')
    def patch_test(mock):
        print(mock)
    
    if __name__ == "__main__":
        patch_test()
    

    In this simple example mypy says:

    test.py:12: error: Missing positional argument "mock" in call to "patch_test"  [call-arg]
    

    Undoing python/typeshed@9e86c60 fixes it
    Filed python/typeshed#10457 for record keeping

  10. cdce8p commented on Jul 13, 2023

    @cdce8p
    Collaborator

    A usability improvement with invalid generic instances. This PR reuses existing args whenever possible instead of replacing everything with Any. This would match the pyright behavior.

  11. sobolevn commented on Jul 14, 2023

    @sobolevn
    Member

    I think that this is important enough to have a special note: #15668

  12. svalentin commented on Jul 14, 2023

    @svalentin
    CollaboratorAuthor

    I think it's best if we leave #15668 for the next release

  13. svalentin commented on Jul 14, 2023

    @svalentin
    CollaboratorAuthor

    Created the release-1.5 branch

  14. svalentin commented on Jul 14, 2023

    @svalentin
    CollaboratorAuthor

    Hmm, I think we have an issue, but can't find out what changed. Did we remove typeshed for attr or something like that?

    For this example

    import attr
    
    @attr.s(frozen=True)
    class SomeProperties(object):
        x = attr.ib(type=str)
        y = attr.ib(type=int)
    
    for field in attr.fields(SomeProperties):
        print(field.name)
        print(field.metadata)
    

    mypy-1.4.1 finds no issues, but master (and release-1.5):

    test2.py:9: error: "object" has no attribute "name"  [attr-defined]
    test2.py:10: error: "object" has no attribute "metadata"  [attr-defined]
    Found 2 errors in 1 file (checked 1 source file)
    

    The issue is type should be attr.Attribute, not object

  15. cdce8p commented on Jul 14, 2023

    @cdce8p
    Collaborator

    Hmm, I think we have an issue, but can't find out what changed. Did we remove typeshed for attr or something like that?

    You might want to revert #15021 for 1.5, too. That was one of the first commits in the release-1.4 branch. 3bf9fdc

  16. 14 remaining items

  17. svalentin commented on Aug 10, 2023

    @svalentin
    CollaboratorAuthor

    mypy 1.5 is out!
    Read the blog post here - https://mypy-lang.blogspot.com/2023/08/mypy-15-released.html
    Also updated the news on the website https://mypy-lang.org/

  18. svalentin commented on Aug 10, 2023

    @svalentin
    CollaboratorAuthor

    Closing this issue as the release is "done". Of course, if there's any issues please post them and we can reopen for a point release!

  19. AlexWaygood commented on Aug 11, 2023

    @AlexWaygood
    Member

    @svalentin I think something's gone wrong with #15751 (which backported a stubtest fix to the release-1.5 branch).

    I can see the change included in the 1.5.0 tag and the release-1.5 branch on GitHub. But if I actually pip install mypy==1.5 into a virtual environment and then open up Lib/site-packages/mypy/stubtest.py in the directory of the virtual environment, the change isn't there. That means I've got a very red CI for my PR trying to upgrade typeshed's mypy pin :(

  20. svalentin commented on Aug 11, 2023

    @svalentin
    CollaboratorAuthor

    Hmm, yes, I see it too.

    Commit 7a9418356 is in. That's the commit in where we branched off from main for release 1.5.
    Commit 9dd0d396e is in as well.
    But 373b73abe or 2ff7c0de5 are not.

    I think it maybe grabbed the wrong wheels to upload for pypi.

    Let me check with Jukka. We might have to do a 1.5.1 release to pick up those two commits as well as they fix regressions.

  21. svalentin commented on Aug 11, 2023

    @svalentin
    CollaboratorAuthor

    Will make a 1.5.1 release to pick them up!
    This is because I had already removed the +dev from the version. And the wheels are built at that point and don't get overridden after our next 2 cherry picks. It wasn't obvious to me the wheels get fixed once we remove the +dev from version.

  22. svalentin commented on Aug 11, 2023

    @svalentin
    CollaboratorAuthor

    Bumped version to 1.5.1 in de4f2ad99
    Once wheels are built I'll upload them. Follow along in https://github.com/mypyc/mypy_mypyc-wheels/actions/runs/5832823688

  23. svalentin commented on Aug 11, 2023

    @svalentin
    CollaboratorAuthor

    Unfortunately we hit a 10GB limit for the pypi project.
    Jukka filed an issue to increase this limit - pypi/support#3094

    We don't think the regressions are serious enough to warrant us deleting some old version of mypy to make room for this point release right now. We can probably wait until pypi increases our limits. Hopefully it shouldn't be longer than a few days.

  24. erictraut commented on Aug 14, 2023

    @erictraut

    Is there anything remaining for the 1.5 release, or can this be closed?

  25. JelleZijlstra commented on Aug 14, 2023

    @JelleZijlstra
    Member

    We should probably keep this open for the 1.5.1 release (currently blocked on PyPI size limits) and potentially for another bugfix release if there are further regressions.

  26. AlexWaygood commented on Aug 16, 2023

    @AlexWaygood
    Member

    The PyPI project limit has been bumped to 20GB: pypi/support#3094 (comment)

  27. svalentin commented on Aug 16, 2023

    @svalentin
    CollaboratorAuthor

    Uploaded v1.5.1 to PyPI!

  28. AlexWaygood commented on Aug 16, 2023

    @AlexWaygood
    Member

    And we've successfully upgraded over at typeshed: python/typeshed@ef758b6

    Thanks @svalentin! 🥳

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

Metadata

Metadata

Assignees

Labels

metaIssues tracking a broad area of work

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions