Dotted keys read from YAML are lost with box_dots / default_box
評価
調査の方向性
まず、box_dots=True と default_box=True を指定した Box.from_yaml で、順序に依存する例を再現します。YAML の読み込みとドット付きキーの処理経路を調査します。完了条件は、どちらのキー順でも a.b がネストされた a.b として保持され、報告された入力に対するリグレッションカバレッジがあることです。
索引モデルが issue の本文から書いたものです。
説明
When reading the following YAML file...
a.b: c
a:
d: e
... with box_dots=True and default_box=True, the key a.b is lost when it's in front of a:
>>> import box
>>> box.Box.from_yaml(filename='test.yml')
Box({'a.b': 'c', 'a': {'d': 'e'}})
>>> box.Box.from_yaml(filename='test.yml',box_dots=True,default_box=True)
Box({'a': {'d': 'e'}})
Having the keys in reverse works correctly:
>>> box.Box.from_yaml(filename='test_reverse.yml')
Box({'a': {'d': 'e'}, 'a.b': 'c'})
>>> box.Box.from_yaml(filename='test_reverse.yml',box_dots=True,default_box=True)
Box({'a': {'d': 'e', 'b': 'c'}})
- 主要言語
- Python
- スター
- 2.8k
- フォーク
- 145
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
cdgriffith/Box のほかの issue
-
subclass of `Box` does not unpickle correctly対応中かも @koriyoshi2041 が 145 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
cdgriffith/Box#308 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 42/100
cdgriffith/Box#307 · コメント 1 件 ·
-
[Bug] Camel killer box and box dots gives unexpected behaviour対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 30/100
cdgriffith/Box#300 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 42/100
cdgriffith/Box#298 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
cdgriffith/Box#296 · リアクション 1 件 ·
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
zach-blumenfeld/aip#13 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 80/100
nathanmarlor/foxess_modbus#1287 ·
メンテナーはふだん 4 日以内に返信
-
bug good first issue help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
OpenLakeForge/openlakeforge#498 ·
メンテナーはふだん 1 日以内に返信
-
good first issue hacktoberfest help wanted python
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 69/100
pollen-robotics/reachy_mini#1493 ·
メンテナーはふだん 1 日以内に返信