Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

Metadata API: Metadata "factory" constructors misbehave with inheritance

未關閉
#1,665 11 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 10 天內回覆

還沒有人認領這個 Issue。

評估

難度
4/5
預估耗時
3-5 天
新手友好度
35/100
Issue 類型
缺陷
描述清晰度
基本清楚
活躍度
停滯
技術堆疊
python

研究方向

追蹤從 DerivedMetadata.from_file() 經過 from_bytes()、JsonDeserializer.deserialize() 和 Metadata.from_dict() 的建構路徑。確定衍生類別在哪裡遺失;完成的標準是 factory 建構保留子類別,使 md.ok() 能夠在產生的物件上正常運作。

由索引模型根據 Issue 內容生成。

描述

class DerivedMetadata(Metadata):
    def ok(self):
        print("ok")

md = DerivedMetadata.from_file("root.json")
md.ok() # fails because md type is Metadata, not DerivedMetadata

This seems to happen because the construction path goes

  • DerivedMetadata.from_file()
  • DerivedMetadata.from_bytes()
  • JsonDeserializer.deserialize() here deserializer doesn't know the correct class anymore and calls Metadata.from_dict()
  • Metadata.from_dict()
主要語言
Python
星號
1.7k
分支
304
平均合併
9 小時 25 分鐘
30 天內合併 PR
14

環境準備

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

theupdateframework/python-tuf 的其他 Issue

查看 theupdateframework/python-tuf 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。