Unbundle the `decorator` dependency, or at least upgrade it
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 35/100
- Issue 類型
- 重構
- 描述清晰度
- 需要釐清
- 活躍度
- 停滯
- 技術堆疊
- python
- 領域
- build-system
研究方向
Issue 中沒有指明任何 repository 檔案或測試。首先檢查目前的 bundled decorator 實作和連結的 Fedora unbundling patch,然後確定專案將依賴外部 package,還是保留更新後的 bundled 版本。選定的相依性策略能在目前的 Python 版本上正常運作,且其相容性由現有測試套件涵蓋,即視為完成。
由索引模型根據 Issue 內容生成。
描述
Hi,
In #91 years ago, it was decided to add the decorator to fix a problem. Back then choices was made to not add a new dependency, but really bundle the only decorar file needed. Distributions (in my case Fedora) usually prefer to rely on the actual package than bundled dependencies. Fedora does apply a patch to unbundle decorator, maybe other distro do that too.
Do we still want to avoid dependencies in 2025 ? I have seen other discussions where it was discussed adding a protobuf dependency, which pulls many more dependencies, so isn't ok now to depend on decorator ?
If not, would it make sense at least to upgrade it ? By doing so, you hit the issue that decorator.getargspec has been removed years ago. In python 3 there is now inspect.getfullargspec which is not strictly equivalent but does provide a similar feature. Fedora uses a minimal patch here: https://src.fedoraproject.org/rpms/python-prometheus_client/blob/rawhide/f/0001-Remove-the-bundled-decorator-package.patch#_506 but tries to avoid adding much code, most likely the "real" change is more verbose.
- 主要語言
- Python
- 星號
- 4.4k
- 分支
- 882
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
prometheus/client_python 的其他 Issue
-
OpenMetrics content negotiation: `escaping=underscores` causes name mismatch between `HELP/TYPE` metadata and sample lines for metrics with colons可能已有人在做 @johnsaurabh 於 127 天前認領。 未關閉bug
難度 2/5 1-3 小時 新手友好度 70/100
prometheus/client_python#1177 · 1 則留言 ·
-
Optimize labels() existing-child lookups to avoid parent lock contention可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 3/5 1-2 天 新手友好度 68/100
prometheus/client_python#1215 ·
-
難度 4/5 3-5 天 新手友好度 45/100
prometheus/client_python#1210 ·
-
MultiProcessCollector fails permanently on an empty metrics file left by a killed worker可能已有人在做 @dom111 於 57 天前認領。 未關閉
難度 2/5 1-3 小時 新手友好度 58/100
prometheus/client_python#1199 · 1 個 reaction ·
-
難度 5/5 一週以上 新手友好度 35/100
prometheus/client_python#1176 ·
查看 prometheus/client_python 的全部 Issue
相似的 Issue
-
HTML: <template> content is extracted as document text可能已有人在做 @ryanmeowy 今天認領。 未關閉bug html
難度 1/5 1 小時以內 新手友好度 82/100
docling-project/docling#4714 · 2 則留言 ·
維護者通常 1 天內回覆
-
[BUG] Qdrant RAG client applies score_threshold to raw cosine similarity, not the 0-1 score it returns可能已有人在做 @roydonsequeira 今天認領。 未關閉bug
難度 2/5 1-3 小時 新手友好度 70/100
維護者通常 1 天內回覆
-
Host test failure in core/direct_io.zig on Linux kernel 6.17: O_DIRECT open succeeds on procfs, so the test's 'plain' fd is not plain可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 2/5 1-3 小時 新手友好度 72/100
ashhart/TensorFold#536 ·
維護者通常 1 天內回覆
-
area/install-update comp/cli duplicate P2 python:uv sweeper:risk-compatibility type/bug
難度 1/5 1 小時以內 新手友好度 62/100
NousResearch/hermes-agent#135440 · 1 則留言 ·
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 85/100
Deepak3699/Ai_Mentor#244 ·
維護者通常 1 天內回覆