traitlets Dict does not observe value changes after initial key / value assigments
まだ誰も着手していません。
評価
調査の方向性
まず issue にある 2 つの Python 再現コードを traitlets 5.14.3 に対して実行し、初期代入後のミューテーションに対する Dict の検証を追跡します。完了条件は、無効な値の代入がどちらも TraitError を発生させ、回帰テストでキー単位およびキー/値の trait ケースを検証できることです。
索引モデルが issue の本文から書いたものです。
説明
I'm using traitlets version 5.14.3 and Python 3.12.3...
In both cases below, a TraitError is not thrown, even though None is assigned to a Unicode() field after initialization...
from traitlets import HasTraits, Dict, Unicode
class Foo(HasTraits):
data = Dict(per_key_traits={"a_key": Unicode()})
class Bar(HasTraits):
data = Dict(key_trait=Unicode(), value_trait=Unicode())
foo = Foo()
foo.data = {"a_key": "a_value"}
# I think this should throw a TraitError...
foo.data["a_key"] = None
bar = Bar()
bar.data = {"a_key": "a_value"}
# I think this should throw a TraitError...
bar.data["a_key"] = None
- 主要言語
- Python
- スター
- 653
- フォーク
- 217
- 平均マージ
- 2日 21時間
- マージ済み PR(30日)
- 2
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ipython/traitlets のほかの issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 65/100
-
難易度 1/5 1〜3時間 初心者へのやさしさ 65/100
-
good first issue
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
-
documentation
難易度 1/5 1時間未満 初心者へのやさしさ 65/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
ipython/traitlets の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
spec-kitty/spec-kitty#5319 ·
メンテナーはふだん 1 日以内に返信
-
backend::vllm diffusion multimodal
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
openai/openai-agents-python#5229 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信