maximum semantic analysis iteration count reached with importing two dataclasses modules
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 20.6k
- フォーク
- 3.3k
- PR マージ指標
- PR 指標を取得中
説明
Crash Report
Deferral trace:
databind.core.dataclasses_test:35
databind.core.dataclasses_test:35
[...]
databind.core.dataclasses_test:35
databind.core.dataclasses_test:35
src/databind/core/dataclasses_test.py: error: INTERNAL ERROR: maximum semantic analysis iteration count reached
Found 1 error in 1 file (errors prevented further checking)
My project has a databind.core.dataclasses module which is supposed to be used as a drop-in replacement for dataclasses. In the unittests dataclasses_test, I import both of these modules but doing that crashes Mypy.
I haven't been able to come up with a smaller scenario to reproduce the issue.
Traceback
--show-traceback does not give any additional information other than what is shown above.
To Reproduce
- Clone https://github.com/NiklasRosenstein/databind.git and check out
74c5c6e - Change directory into
databind.core - Install
mypy pytest types-setuptools - Run
mypy srcand not how there are no errors - Open
src/databind/core/dataclasses_test.pyand insertimport dataclassesat the top of the file - Run
mypy srcagain (you will see the error)
Your Environment
- Mypy version used: 0.910
- Mypy command-line flags: n/a
- Mypy configuration options from
mypy.ini(and other config files): n/a - Python version used: 3.9.6
- Operating system and version: osx
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
src/databind/core/dataclasses_test.py に import dataclasses を追加して databind のコミット 74c5c6e における失敗を再現し、その後 mypy 0.910 で mypy src を実行します。import 前の成功した実行結果と、その後の maximum semantic analysis iteration エラーを比較します。両方のモジュールを import しても内部エラーが発生しなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- compilers
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100