跳转到主要内容

出色的`np-lims-tk`是一个使用https://github.com/TezRomacH/python-package-template创建的Python命令行工具/包

项目描述

np-lims-tk

Build status Python Version Dependencies Status

Code style: black Security: bandit Pre-commit Semantic Versions License Coverage Report

出色的np-lims-tk是一个使用https://github.com/TezRomacH/python-package-template创建的Python命令行工具/包

开发

本节包含额外的设置信息。

作为github仓库初始化

初始化您的代码

  1. 在您的仓库中初始化git
cd np-lims-tk && git init
  1. 如果您尚未安装Poetry,请运行
make poetry-download
  1. 初始化poetry并安装pre-commit钩子
make install
make pre-commit-install
  1. 运行代码风格
make codestyle
  1. 将初始代码上传到GitHub
git add .
git commit -m ":tada: Initial commit"
git branch -M main
git remote add origin https://github.com/np_lims_tk/np-lims-tk.git
git push -u origin main

设置机器人

Poetry

想了解更多关于Poetry的信息?查看其文档

Poetry的详细信息

Poetry的命令非常直观且易于学习,例如

  • poetry add numpy@latest
  • poetry run pytest
  • poetry publish --build

等等

构建和发布您的包

构建应用程序的新版本包含以下步骤

  • 提高您包的版本 poetry version <版本>。您可以显式地传递新版本,或者使用如 majorminorpatch 这样的规则。更多详情,请参阅 语义版本 标准。
  • GitHub 上提交一个变更。
  • 创建一个 GitHub 发布版
  • 然后...发布吧!poetry publish --build

🎯 接下来是什么

这取决于你 💪🏻。我只能推荐那些帮助到我的包和文章。

  • Typer 是创建 CLI 应用的好工具。
  • Rich 让你在终端中添加美观的格式变得容易。
  • Pydantic - 使用 Python 类型提示进行数据验证和设置管理。
  • Loguru 使日志记录变得(愚蠢地)简单。
  • tqdm - Python 和 CLI 的快速、可扩展的进度条。
  • IceCream 是一个用于美味调试的小库。
  • orjson - 极快的 JSON 解析库。
  • Returns 让你的函数输出变得有意义、类型化和安全!
  • Hydra 是一个用于优雅配置复杂应用的框架。
  • FastAPI 是一个类型驱动的异步 Web 框架。

文章

🚀 功能

开发功能

部署功能

开源社区功能

安装

pip install -U np-lims-tk

或使用 Poetry 安装

poetry add np-lims-tk

文档

https://alleninstitute.github.io/np-lims-tk/

Makefile 使用方法

Makefile 包含许多用于快速开发的函数。

1. 下载并移除 Poetry

要下载和安装 Poetry,请运行

make poetry-download

卸载

make poetry-remove

2. 安装所有依赖项和 pre-commit 钩子

安装要求

make install

git init 之后,可以通过以下方式安装 pre-commit 钩子:

make pre-commit-install

3. 代码风格

自动格式化使用 pyupgradeisortblack

make codestyle

# or use synonym
make formatting

仅进行代码风格检查,不重写文件

make check-codestyle

注意:check-codestyle 使用 isortblackdarglint

使用一个命令更新所有开发库到最新版本

make update-dev-deps
4. 代码安全性

make check-safety

该命令将启动 Poetry 完整性检查,并使用 SafetyBandit 识别安全漏洞。

make check-safety

5. 类型检查

运行 mypy 静态类型检查器

make mypy

6. 带覆盖率徽章的测试

运行 pytest

make test

7. 所有代码检查器

当然,有一个命令可以 统一 运行所有代码检查器

make lint

等同于

make test && make check-codestyle && make mypy && make check-safety

8. Docker

make docker-build

这相当于

make docker-build VERSION=latest

使用以下命令删除 Docker 镜像

make docker-remove

有关 Docker 的更多信息,请参阅 链接

9. 清理

删除 pycache 文件

make pycache-remove

移除包构建

make build-remove

删除 .DS_STORE 文件

make dsstore-remove

删除 .mypycache

make mypycache-remove

或运行以下命令来删除所有上述文件

make cleanup

贡献

非常欢迎代码贡献。要贡献,请对代码进行修改,并可能向 /tests 下的测试套件添加测试,以确保您的更改现在和将来都能正常工作。然后以拉取请求的形式提交您的更改。

📈 发布

您可以在 GitHub 发布页面 上查看可用的发布列表。

我们遵循 语义版本 规范。

我们使用 Release Drafter。随着拉取请求的合并,草稿发布将保持最新状态,列出更改,准备好发布。使用分类选项,您可以使用标签将拉取请求分类到发布说明中。

标签列表及其对应的标题

标签 发布中的标题
enhancementfeature 🚀 功能
bugrefactoringbugfixfix 🔧 修复和重构
buildcitesting 📦 构建系统和 CI/CD
breaking 💥 破坏性变更
documentation 📝 文档
dependencies ⬆️ 依赖项更新

您可以在 release-drafter.yml 中更新它。

GitHub 为您创建了 bugenhancementdocumentation 标签。Dependabot 创建 dependencies 标签。当您需要时,请在 GitHub 仓库的 Issues 标签页上创建剩余的标签。

🛡 许可证

License

本项目受 MIT 许可证的约束。有关详细信息,请参阅 LICENSE

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

np-lims-tk-0.9.2.tar.gz (19.2 kB 查看散列值)

上传时间 源代码

构建分发

np_lims_tk-0.9.2-py3-none-any.whl (15.2 kB 查看散列值)

上传时间 Python 3