感谢你愿意帮助 PucodingUsageWidget 变得更好。小到错别字,大到新功能,都欢迎通过 Issue 或 Pull Request 参与。
在创建新 Issue 前,请先搜索是否已有相同问题,并尽量提供:
- Windows 与应用版本;
- 是否使用 Release 独立程序或 Python 源码运行;
- 最小、稳定的复现步骤;
- 预期行为与实际行为;
- 去除完整 API Key、消费明细和私人信息后的截图或日志。
Bug 请使用 Bug Report,功能建议请使用 Feature Request。安全或隐私问题不要提交公开 Issue,请按照 SECURITY.md 私下报告。
- Fork 并克隆仓库。
- 安装 Python 3.10 或更高版本,并确保 Tkinter 可用。
- 运行
python .\pucoding_widget.py。 - 使用自己的测试 Key 验证真实查询时,不要把 Key 写入源码、测试或提交记录。
项目运行时只使用 Python 标准库。提交前请执行:
python -m py_compile .\pucoding_widget.py
python -m unittest discover -s tests -v同时手动检查:
- 首次设置、加密保存和重新读取 API Key;
- 自动刷新与手动刷新;
- 置顶切换、窗口缩放和关闭行为;
- 无效 Key、断网和服务端错误提示;
- 没有把完整 Key 写入 URL、日志、Issue 或截图。
- 每个 PR 聚焦一个问题,避免混入无关格式化或重构。
- 说明为什么修改、如何验证,以及是否影响已有本地配置。
- 用户可见变更需要同步更新 README;正式发布内容需要写入
CHANGELOG.md。 - 建议使用清晰的提交前缀,例如
feat:、fix:、docs:、refactor:、test:、chore:。
发布版本号需要同时更新 app.json、pucoding_widget.py 中的 VERSION、Git 标签和 CHANGELOG.md。
维护者安装 PyInstaller 后,可运行:
python -m pip install --upgrade pyinstaller
powershell -ExecutionPolicy Bypass -File .\tools\package-release.ps1稳定版标签格式为 vX.Y.Z,测试版标签格式为 vX.Y.Z-beta.N。