python / python/mypy

Traverse also generated TypeInfos, methods and attributes

オープン
#6,408 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

needs discussion semantic-analyzer
主要言語
Python
スター
20.6k
フォーク
3.3k
PR マージ指標
PR 指標を取得中

説明

TraverserVisitor doesn't traverse generated TypeInfos (for things like call based enums) or methods (for named tuples). Perhaps it should? A concrete effect is that some checks such as type arg compatibility checks may not be performed for generated nodes. Arguably this is fine from a correctness viewpoint, since creating an invalid type is a bug in mypy or a plugin. However, this makes it harder to ensure that generated nodes are valid.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず TraverserVisitor を見つけ、生成された TypeInfos、メソッド、属性をどのように走査するかを調べます。これには、呼び出しベースの enum と名前付きタプルに対して生成されるノードも含まれます。意図された走査動作を判断し、型引数の互換性などのチェックが生成されたノードに適用されることを示すカバレッジを追加します。関連する生成ノードが一貫して走査されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
compilers
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。