`minidom` `renameNode()` drops an attribute renamed to a prefixed name
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
issue では xml.dom.minidom.Document.renameNode() が特定され、再現コードが示されています。まず、その実装と renameNode() の近くにあるテストを読んでください。名前空間エラーを再現し、名前変更後も属性が要素に残ることを確認してください。期待される名前 p:a と名前空間を検証する回帰テストを追加または更新してください。
索引モデルが issue の本文から書いたものです。
説明
Bug description:
Since gh-156665, Document.renameNode() raises NamespaceErr when it renames an attribute with no namespace to a prefixed name in a namespace, and the attribute has already been removed from its element when the error is raised.
from xml.dom.minidom import parseString
doc = parseString('<r a="1" b="2"/>')
attr = doc.documentElement.getAttributeNode('a')
try:
doc.renameNode(attr, 'http://example.com/ns', 'p:a')
except Exception as e:
print(type(e).__name__, e)
print(doc.documentElement.toxml())
NamespaceErr cannot use the prefix 'p' with an empty namespace
<r b="2"/>
Expected: the attribute is renamed to p:a in http://example.com/ns and stays on the element, as on 3.15.
CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux
Linked PRs
- gh-159638
- 主要言語
- Python
- スター
- 77.6k
- フォーク
- 38.4k
- 平均マージ
- 1日 5時間
- マージ済み PR(30日)
- 555
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
python/cpython のほかの issue
-
Docs: problem with page "msvcrt — Useful routines from the MS VC runtime"再び着手できるかも @jikekei が 9 日前に担当しましたが、オープン中のプルリクエストはありません。 オープンdocs
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
python/cpython#159072 · コメント 6 件 ·
メンテナーはふだん 1 日以内に返信
-
Document unpacking in generator expressions (PEP 798)対応中かも @Marwan-verse が 7 日前に担当しました。 オープンdocs
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
python/cpython#159061 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
`http.client.HTTPSConnection._tunnel` raises `AttributeError: 'NoneType' object has no attribute 'encode'` when header value is `None`再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープン3.14 3.15 3.16 stdlib type-bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
python/cpython#159044 · コメント 17 件 ·
メンテナーはふだん 1 日以内に返信
-
A minor problem with the section "6.10.2. Membership test operations" from the language reference.対応中かも @Rakshana0205 が 6 日前に担当しました。 オープンdocs pending
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
python/cpython#159034 · コメント 5 件 ·
メンテナーはふだん 1 日以内に返信
-
Docs: socket.htons() and friends raise ValueError for negative input since 3.14対応中かも @vetrovk が 11 日前に担当しました。 オープンdocs topic-socket
難易度 1/5 1〜3時間 初心者へのやさしさ 78/100
python/cpython#159012 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
mihai-vlc/sublime-jsfmt#56 ·
-
comp/cli comp/plugins P2 type/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
NousResearch/hermes-agent#141917 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Go device SDK: Whisper transcriber keeps buffering and transcribing audio appended after Stop()対応中かも @apoorvdarshan が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
BasedHardware/omi#22770 ·
メンテナーはふだん 1 日以内に返信
-
bug needs-acceptance wg/router-models-inference-runtime
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
vllm-project/semantic-router#5295 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
huggingface/huggingface_hub#5210 ·
メンテナーはふだん 1 日以内に返信