Mypy: Release mypy 0.521

Created on 18 Jul 2017  Â·  24Comments  Â·  Source: python/mypy

We're going to try and release a bugfix release for 0.520, dubbed 0.521. The plan is to do this relatively quickly, using a release branch forked from v0.520, cherry-picking only essential fixes for announced features and for regressions since 0.510. I am going to be the release manager. We will have a new blog post. I'm aiming to do the release on Monday 7/24.

I plan to also create a release branch for typeshed, so we can cherrypick typeshed commits as well.

If you have a mypy or typeshed bugfix (already merged on master) that should really go in please mention it here (I have a few in mind already).

priority-0-high

Most helpful comment

Status update: the release is out on PyPI and tagged as v0.521. I'm keeping this issue open until we've updated the blog post, which will probably happen tomorrow.

All 24 comments

I think https://github.com/python/mypy/pull/3680 could go in. It fixes a high priority issue (probably because this is "incompleteness" in an announced feature).

I think #3680 could go in.

I'm not so sure, it's not even merged in master.

I'm not so sure, it's not even merged in master.

OK, sorry I misunderstood you, I thought you meant PRs that might go in.

I do have a question for @ilevkivskyi. Should #3700 and its fix, #3719, go in? This fixes a crash (on something that was merely an error in 0.511); but the fact that the fix needed a fix is a bit worrysome.

Should #3700 and its fix, #3719, go in? This fixes a crash (on something that was merely an error in 0.511); but the fact that the fix needed a fix is a bit worrysome.

I would say rather yes than no. Although this touches a "fundamental" thing -- the lookup function.
Concerning the fix that needed a fix, yes first time I didn't really made a "semantically equivalent" transformation, my fault. Also note that the initial crash itself is caused by an assert in one of the --strict-optional PRs. I think we will see more crashes like this in nearest future that are subtle to fix, but this is probably how --strict-optional works in general -- adding asserts finds some corner cases in the logic.

OK, makes sense. Added them.

Also, note that this is not a feature freeze for master! Just perhaps don't land sweeping refactors since they might complicate cherry-picking bug fixes into the release branch.

Two pending fixes that should go in:

  • @JukkaL has a crash fix for TypedDict (but not yet made the PR).
  • @ddfisher has a fix for strict-optional (https://github.com/python/mypy/pull/3686).

From typeshed I think we should include only 7637549ced002ea121d2abde7d97203f666fbb87, which fixes a regression in csv.DictReader, python/typeshed#1475. I looked at commits since 0e26c1f, the version of typeshed that was released with 0.520.

From typeshed I think we should include only 7637549ced002ea121d2abde7d97203f666fbb87

Thanks, that was my conclusion too, and I've already cherry-picked it!

@graingert

Also python/typeshed@2bb7ea9

Hm, that's https://github.com/python/typeshed/pull/1478 -- is that also a regression? We're trying to exercise an abundance of caution here, so the default is not to cherry-pick anything unless it worked in 0.510 but is broken in 0.520.

I believe it was, I haven't had time to verify 100%

@gvanrossum yes this is a regression from 0.511 (edit: and of course 0.510 because they use the same typeshed version).

OK I've cherrypicked it.

@gvanrossum ok great, thanks!

Status update: the release is out on PyPI and tagged as v0.521. I'm keeping this issue open until we've updated the blog post, which will probably happen tomorrow.

Could you please update the homepage at http://mypy-lang.org/ as well? I didn't realize there was a blog post for 0.520 since it isn't in the What's New section there and I didn't check the blog directly.

Yes, we we're waiting for the 0.621 release.

On Jul 24, 2017 5:05 PM, "Chad Birch" notifications@github.com wrote:

Could you please update the homepage at http://mypy-lang.org/ as well? I
didn't realize there was a blog post for 0.520 since it isn't in the What's
New section there and I didn't check the blog directly.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/python/mypy/issues/3732#issuecomment-317589705, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACwrMoFpq5gmC3g8tQ4vdBBy2vY5BSLfks5sRTE8gaJpZM4Ob4mv
.

@gvanrossum 0.521?

Yeah, blame cell phones and my poor proofreading skills. ;-)

In retrospect I think we should've posted the 0.520 blog post to the website even though we realized soon there were some regressions. Jukka has long gone to bed (he's in Finland). Tomorrow (in the am US time) we'll upload a new (minimal) blog post and updated the website.

Well, the blog post is up (http://mypy-lang.blogspot.com/2017/07/mypy-0521-released.html) and the website is updated (http://mypy-lang.org/), so I'm closing this. I'm still considering whether to merge #3762.

I'm still considering whether to merge #3762.

So you can see what this would look like, I created a merge commit using git-reparent: https://github.com/graingert/mypy/commit/7ad61331f8065dafe3886ab45949a758fd989a9a

Glad that it turns out to be null merge (presumably because I cherry-picked the little doc update back). I then propose to not merge the branch, since release branches are, well, branches.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ericnchen picture ericnchen  Â·  3Comments

takeda picture takeda  Â·  3Comments

JukkaL picture JukkaL  Â·  4Comments

mplanchard picture mplanchard  Â·  3Comments

PeterJCLaw picture PeterJCLaw  Â·  3Comments