Skip to content

Fix crash when unpacking return value from overload - #21830

Merged
JukkaL merged 1 commit into
python:masterfrom
hauntsaninja:fixnumpy
Aug 10, 2026
Merged

Fix crash when unpacking return value from overload#21830
JukkaL merged 1 commit into
python:masterfrom
hauntsaninja:fixnumpy

Conversation

@hauntsaninja

@hauntsaninja hauntsaninja commented Aug 10, 2026

Copy link
Copy Markdown
Collaborator

Fixes #21824
Fixes #19920
Closes #19921

Note that ilevkivskyi has a suggestion to change overload inference here: #19920 (comment)

While that is right, it is a little separate, and I think it is okay to remove the crash given that it now affects numpy and has been reported in other contexts too. We just keep the originally inferred tuple

Fixes python#21824
Fixes python#19920
Closes python#19921

Note that ilevkivskyi has a suggestion to change overload inference
here: python#19920 (comment)

While that is right, it is a little separate, and I think it is okay to
remove the crash given that it now affects numpy and has been reported
in other contexts too
@github-actions

Copy link
Copy Markdown
Contributor

According to mypy_primer, this change doesn't affect type check results on a corpus of open source code. ✅

@JukkaL JukkaL left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix! This looks like a good, conservative way to fix the crash -- this clearly shouldn't regress anything. We consider the bigger change suggested by Ivan separately.

@JukkaL
JukkaL merged commit 0221c80 into python:master Aug 10, 2026
25 checks passed
hauntsaninja added a commit that referenced this pull request Aug 15, 2026
Fixes #21824
Fixes #19920
Closes #19921

Note that ilevkivskyi has a suggestion to change overload inference
here:
#19920 (comment)

While that is right, it is a little separate, and I think it is okay to
remove the crash given that it now affects numpy and has been reported
in other contexts too. We just keep the originally inferred tuple
MateoGreil pushed a commit to MateoGreil/python-comwatt-client that referenced this pull request Aug 15, 2026
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [mypy](https://github.com/python/mypy) ([changelog](https://mypy.readthedocs.io/en/latest/changelog.html)) | `==2.3.0` → `==2.3.1` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/mypy/2.3.1?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/mypy/2.3.0/2.3.1?slim=true) |

---

### Release Notes

<details>
<summary>python/mypy (mypy)</summary>

### [`v2.3.1`](https://github.com/python/mypy/blob/HEAD/CHANGELOG.md#Mypy-231)

[Compare Source](python/mypy@v2.3.0...v2.3.1)

- Fix mypyc crash on double yielding Iterators (Daniël van Noord, PR [21826](python/mypy#21826))
- Fix mypyc `default_factory` for inherited dataclass (Daniël van Noord, PR [21785](python/mypy#21785))
- Clear mypyc coroutine env on coroutine completion (Piotr Sawicki, PR [21734](python/mypy#21734))
- Fix crash when unpacking return value from overload (Shantanu, PR [21830](python/mypy#21830))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zMC4zIiwidXBkYXRlZEluVmVyIjoiNDQuMzAuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: Renovate Bot <renovate-bot@git.greil.fr>
Reviewed-on: https://git.greil.fr/mat/python-comwatt-client/pulls/54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Crash on the numpy main branch: AssertionError in check_multi_assignment_from_tuple Mypy crashes on async tuple to tuple assignment

2 participants