python / python/typing_extensions
Bug: `typing_extensions.Generic` not support `TypeVar` defaults
オープン
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 583
- フォーク
- 146
- 平均マージ
- 10時間 11分
- マージ済み PR(30日)
- 5
説明
Work MRE.
Setup
>> python version: 3.13.5 (main, Jun 21 2025, 09:35:00) [GCC 15.1.1 20250425]
MRE
from typing import TypeVar, Generic, get_args
R = TypeVar("R")
T = TypeVar("T", default=int)
class A(Generic[R, T]):
pass
assert get_args(A[str]) == (str, int)
Not work MRE.
Setup
>> python version: 3.10.17 (main, Apr 9 2025, 04:03:39) [Clang 20.1.0 ]
>> uv pip show typing-extensions
Name: typing-extensions
Version: 4.15.0
MRE
from typing_extensions import TypeVar, Generic, get_args
R = TypeVar("R")
T = TypeVar("T", default=int)
class A(Generic[R, T]):
pass
assert get_args(A[str]) == (str,)
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず Python 3.13 の MRE と typing_extensions の MRE を実行して、それぞれの get_args の結果を比較します。次に、typing_extensions の Generic で使用されている TypeVar のデフォルト処理を追跡し、その後、標準ライブラリの例と同様に A[str] に int が含まれることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 45/100