lincc-frameworks / lincc-frameworks/python-project-template

Use dependency-group for "dev" and other non-user-facing dependencies

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

還沒有人認領這個 Issue。

主要語言
Jinja
星號
85
分支
16
平均合併
6 小時 18 分鐘
30 天內合併 PR
1

描述

pyproject.toml specifies two types of dependency sets: "extras" and "groups." The first is specified by [project.optional-dependencies] (this is what we have now), and the second is specified by [dependency-groups]. Extras may be installed with the package-name[extra-name] syntax, while groups are not supposed to be user-facing, are not listed on PyPI, and may be installed with the --group flag.

I propose making "dev" a dependency group in the template and changing CI/setup scripts to use it this way. This will make the extras list cleaner.

https://packaging.python.org/en/latest/specifications/pyproject-toml/#dependencies-optional-dependencies
https://packaging.python.org/en/latest/specifications/dependency-groups/

LSDB at PyPI
Image

貢獻指南

這個儲存庫沒有索引到貢獻指南

從這裡開始

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

研究方向

首先檢查範本的 pyproject.toml,以及用於安裝開發相依項目的 CI 和設定指令碼。更新範本,使開發相依項目和其他非面向使用者的相依項目使用 [dependency-groups],並確保這些指令碼使用群組機制;當 extras 清單不再包含開發相依項目,且產生專案的設定仍能正常運作時,即表示完成。

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

評估

技術堆疊
python
領域
build-system, ci-cd
Issue 類型
功能
難度
3/5
預估耗時
1-2 天
活躍度
冷清
描述清晰度
基本清楚
新手友好度
58/100

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

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