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

Release 0.930 planning #11700

Closed
JukkaL opened this issue Dec 10, 2021 · 43 comments
Closed

Release 0.930 planning #11700

JukkaL opened this issue Dec 10, 2021 · 43 comments
Assignees

Comments

@JukkaL
Copy link
Collaborator

JukkaL commented Dec 10, 2021

I'm planning another release fairly soon after 0.920 (#11158) is out to catch up with the GitHub master branch. If everything goes as planned, I'll cut the release branch around Tue 14 Dec. Please post here any PRs that you'd like to include in the release and that are not yet in master (or in the release branch after I've created it).

Note: Please do not sync typeshed until I've created the release branch. There are already some typeshed regressions that likely need to be resolved. If you want to include some specific typeshed changes, I can potentially cherry-pick them.

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 10, 2021

Regression that is a release blocker: #11699 (_order_ in enum)

@JukkaL JukkaL self-assigned this Dec 10, 2021
@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 10, 2021

Another regression: #11701 (Literal[True, False] false positives)

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 10, 2021

Another regression that might be a release blocker (but it might be very rare and not super important to fix): #11702 (enum inheritance false positive)

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 10, 2021

Yet another regression that looks like a release blocker: #11704 (need type annotation with contextmanager)

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 10, 2021

One more regression: #11705 ("and" type inference with strict optional disabled)

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Dec 11, 2021

Currently unmerged PRs I'd like included:
#11681 (low risk, fixes a crash)
#11708 (low risk, removes an optimisation that resulted in a regression reported multiple times)
#11709 (fixes #11701 as mentioned above)
If possible, enough of #10191 that we no longer crash on match statements

Curious if @sobolevn has thoughts on any PRs to prioritise

@Zac-HD
Copy link
Contributor

Zac-HD commented Dec 12, 2021

#11718 keeps biting me, and should be pretty easy to merge.

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 14, 2021

Two planned reverts to avoid regressions: #11741 (Python 2 division), #11743 (Python 2 raise), unless there's a forward fix very soon.

Some cherry-picks from typeshed to avoid regressions: #11739

@sobolevn
Copy link
Member

sobolevn commented Dec 14, 2021

unless there's a forward fix very soon.

Sorry, I won't be able to submit a fix before the weekend. If this is fine 🙂
Or you can always keep this out of scope of the release, these two feature are not very important.

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 14, 2021

Sorry, I won't be able to submit a fix before the weekend

No worries, I reverted the PRs now so that they won't block the release.

@cdce8p
Copy link
Collaborator

cdce8p commented Dec 15, 2021

Don't know if there is still some time left but I believe #10712 would be a good feature to have.

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Dec 16, 2021

I'd like this typeshed PR to be included: python/typeshed#6591 (fixes a regression shipped with 0.920)

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 16, 2021

I've created a release branch for 0.930 based on 22ab84a. If everything goes well, the release would be out Wed 22 Dec. If there is a delay, we'll probably have to postpone until January because of the holiday season.

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Dec 16, 2021

Hooray, here's a PR for the aforementioned typeshed fix: #11775

@JelleZijlstra
Copy link
Member

JelleZijlstra commented Dec 17, 2021

I'd suggest including python/typeshed#6620 and the corresponding mypy fix #11781, which fix the crash in #11768.

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Dec 17, 2021

PR to the release branch for curses issues: #11785

@JelleZijlstra
Copy link
Member

JelleZijlstra commented Dec 20, 2021

We should also address #11774.

@AlexWaygood
Copy link
Member

If it's not too late, I'd like to make a plug for python/typeshed#6634 to be cherry-picked. It doesn't fix a regression, but it does fix a bug with the existing stub that was reported as an issue to typeshed, creating usability issues with contextlib in 3.10.

@sobolevn
Copy link
Member

Two docs only changes:

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 22, 2021

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 22, 2021

The release is now out: http://mypy-lang.blogspot.com/2021/12/mypy-0930-released.html

It includes this regression, but it seems minor enough to not be big deal:

If/when a fix is ready, I can make a point release soon afterwards (unless we are close to the next release).

@JukkaL
Copy link
Collaborator Author

JukkaL commented Dec 22, 2021

I'm keeping this issue open for a while in case there are significant regressions that should be fixed in a bugfix release.

@sobolevn
Copy link
Member

sobolevn commented Dec 22, 2021

@JukkaL great work! Thank you! 👍
Congrats on the new release.

I hope to finish #11717 on this weekend.

@wrobell
Copy link

wrobell commented Dec 22, 2021

@JukkaL #11827 seems to be a regression.

@AlexWaygood
Copy link
Member

python/typeshed#6662 fixes a typeshed regression in 0.930.

@pranavrajpal
Copy link
Contributor

I think all occurrences of ** are being swallowed by whatever is converting the markdown to html on the blog post. For example, in the example for ParamSpec support:

from typing import Awaitable, Callable, ParamSpec, TypeVar

P = ParamSpec("P")
R = TypeVar("R")

def add_logging(f: Callable[P, R]) -> Callable[P, Awaitable[R]]:
    async def inner(*args: P.args, kwargs: P.kwargs) -> R:
        await log_to_database()
        return f(*args, kwargs)
    return inner

@add_logging
def takes_int_str(x: int, y: str) -> int:
    return x + 7

await takes_int_str(1, "A")  # Accepted
await takes_int_str("B", 2)  # Rejected

I think both instances of kwargs should be **kwargs.

I think something similar happened in the 0.920 release blog post. #11137 and #11151 both have a ** in their title that seems to disappear when they're listed in the blog post:

Fix crash on dataclasses.field(unpack) (Nikita Sobolev, PR 11137)

Properly type check *CustomType and CustomType function arguments (Nikita Sobolev, PR 11151)

@pranavrajpal
Copy link
Contributor

I think mypyc is completely broken on 0.930 (see mypyc/mypyc#912 for the error message).

That appears to be caused by #11494. That moved scripts/mypyc to mypyc/__main__.py, but it didn't add it to the mypyc blacklist like we do for mypy/__main__.py.

It's kind of weird that none of the CI caught this. I would have thought that the mypyc command line tests would have caused the same error when running with mypy and mypyc compiled with mypyc.

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Dec 29, 2021

Catching up on issues, here's my summary. We'll need to release 0.931 for at least the mypyc issue alone.
Feel free to edit / let me know if I've missed something and I'll keep this comment up to date.

Critical

Normal

Nice to have

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 4, 2022

I'm planning to publish a 0.931 bugfix release later this week (current estimate is Wed or Thu). Thank you everybody who contributed fixes to regressions, and thank you @hauntsaninja for the useful summary!

In addition to the PRs mentioned above, this also fixes a regression:

@A5rocks
Copy link
Contributor

A5rocks commented Jan 6, 2022

#11913 is also a regression it seems.

@hauntsaninja
Copy link
Collaborator

hauntsaninja commented Jan 6, 2022

#11912 fixes a minor regression in 0.930 (caused by a changed in typeshed stubs)

#11918 and #11863 are not a regression, but would make typeshed folks happy. We indicated we'd be willing to issue point releases for this in python/typeshed#4820 (comment)

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 6, 2022

I cherry-picked these additional fixes:

Since there are still a few regressions without a fix, I will wait until tomorrow (Friday) before making the release. If important regressions are still open tomorrow, I can make a 0.932 release once we have the remaining fixes.

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 6, 2022

Another potential regression:

@hauntsaninja
Copy link
Collaborator

#11717 was merged, but not backported
I believe right now #11924 is the only open PR that fixes a regression

@sobolevn
Copy link
Member

sobolevn commented Jan 7, 2022

PR with stubtest bugfix: #11931
This would be helpful for typeshed

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 7, 2022

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 7, 2022

I'm planning to include this PR in the release:

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 7, 2022

Two final cherry-picks for 0.931:

We should be ready for the release soon, once the wheel build completes. I'll need to prepare a short release blog post as well.

@JukkaL
Copy link
Collaborator Author

JukkaL commented Jan 7, 2022

...and 0.931 is out: http://mypy-lang.blogspot.com/2022/01/mypy-0931-released.html

@JukkaL JukkaL closed this as completed Jan 19, 2022
JukkaL pushed a commit that referenced this issue Feb 22, 2022
JukkaL pushed a commit that referenced this issue Feb 23, 2022
…11787)

Now `__future__` imports do not leak in semanal.py.

Closes #11740
Refs #11741
Refs #11276
Refs #11700
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

10 participants