跳转到主要内容

优秀的`data_manifestor`是一个使用https://github.com/TezRomacH/python-package-template创建的Python cli/package。

项目描述

data_manifestor

Build status Python Version Dependencies Status

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

优秀的data_manifestor是一个使用https://github.com/TezRomacH/python-package-template创建的Python cli/package。

API

运行本地比较。

from data_manifestor import compare_manifest_to_local

# By default if no template_dict is supplied, it will be inferred based on meta information serialized in the local path
result = compare_manifest_to_local(
  "some/path/to/local/experiment/directory",
)

要更改声明者模板可以推断的内容,您需要更新与要影响的project关联的模板。

from data_manifestor import Template, update_project_data_manifestor_template

template = Template(
  name="some sort of name for this template",
  path_patterns=[
    "parent/dir/of/path/you/want/to/check/exists",
  ]
)

update_project_data_manifestor_template(
  "pretest",
  template,
)

文档

有关使用此包的更多详细文档,请参阅文档

安装

pip install -U data_manifestor

或者使用Poetry安装

poetry add data_manifestor

然后您可以运行

data_manifestor --help

或者使用Poetry

poetry run data_manifestor --help

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. 所有linters

当然有命令可以运行所有代码检查器

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的更多信息,请访问GitHub Releases页面

9. 清理

删除pycache文件

make pycache-remove

删除包构建文件

make build-remove

删除.DS_STORE文件

make dsstore-remove

删除.mypycache

make mypycache-remove

或者要删除上述所有内容,请运行

make cleanup

📈 发布

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

我们遵循语义版本规范

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

标签列表及其对应标题

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

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

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

🛡 许可证

License

本项目采用MIT许可证许可。有关详细信息,请参阅许可证。

其他信息

初始化新仓库

初始化您的代码

  1. 在您的仓库内初始化git
cd data_manifestor && 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/data_manifestor/data_manifestor.git
git push -u origin main

设置机器人

Poetry

想了解更多关于Poetry的信息?请参阅其文档

Poetry的详细信息

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

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

构建和发布您的包

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

  • 将您的包版本升级poetry version <version>。您可以明确传递新版本,或规则如majorminorpatch。有关更多详细信息,请参阅语义版本规范
  • GitHub上提交更改。
  • 创建GitHub发布
  • 然后...发布 😊 poetry publish --build

🎯 下一步是什么

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

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

文章

🚀 功能

开发特性

部署特性

开源社区特性

项目详情


下载文件

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

源分发

data_manifestor-0.5.6.tar.gz (15.7 kB 查看哈希值)

上传时间

构建分发

data_manifestor-0.5.6-py3-none-any.whl (10.9 kB 查看哈希值)

上传时间 Python 3

由...