hatch项目安装与使用指南
hatchModern, extensible Python project management项目地址:https://gitcode.com/gh_mirrors/ha/hatch
项目概述
hatch是Python社区中一个强大的打包工具,它简化了Python项目的打包、发布过程,并提供了灵活的环境管理功能。该项目托管在GitHub上,地址为:https://github.com/pypa/hatch。本指南旨在帮助开发者快速了解hatch的基本架构和核心组件,包括其目录结构、启动文件以及配置文件的详细说明。
1. 项目的目录结构及介绍
hatch项目本身遵循Python项目的常规结构,但作为工具,其关注点在于如何处理其他Python项目的打包和构建。当使用hatch创建新项目时,通常会得到如下的基础目录结构:
your_project_name/
├── src/
│ └── your_package_name/ # 包含实际的源代码
│ ├── __init__.py
│ └── ... # 其他模块文件
├── tests/ # 测试目录,存放测试文件
├── pyproject.toml # 使用Hatch管理项目的配置文件
├── README.rst or README.md # 项目的说明文件
├── setup.py (可选) # 对于传统Python项目,可能还包括这个文件,但在hatch下不常用
└── hatch.toml # Hatch项目的特定配置文件
src/
: 存放项目的Python包。tests/
: 包含项目的单元测试和其他测试资源。pyproject.toml
: 标准化的项目元数据配置,指定构建系统(通常是Hatch)。hatch.toml
: 定制Hatch行为的配置文件,覆盖默认设置。README.*
: 项目的简介文档。
2. 项目的启动文件介绍
对于直接使用hatch管理的项目来说,并不像传统的Python应用那样依赖于单一的main.py
或app.py
作为入口点。相反,启动逻辑通常定义在你的包内,可以通过__main__.py
或者通过命令行接口(CLI)脚本来实现。然而,在hatch中,更重要的是定义好如何构建、发布的逻辑,这主要通过配置文件来完成。
3. 项目的配置文件介绍
hatch.toml
这是hatch项目的核心配置文件,用于控制项目的构建、环境和其他非标准特性。它可能包括插件的配置、版本的管理方式、如何构建不同的包体等。例如:
[[versions]]
path = "src/my_package"
tags = ["python_version='>=3.6,<4'"]
[tool.hatch.build.targets.sdist]
include = ["src", "*.txt", "*.rst"]
exclude = ["**/__pycache__/**", "**/*.pyc"]
[tool.hatch.envs.all]
dependencies = [
"requests",
"click>=7.0",
]
pyproject.toml
尽管不是hatch特有的配置,但现代Python项目常使用pyproject.toml
来声明其构建系统以及相关的元数据。对于使用hatch的项目,这里通常会指出使用Poetry或Hatch作为其包装工具:
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
本指南基于hatch项目的一般使用场景进行了简要介绍,具体项目的配置和结构可能会有所不同,务必参考具体的项目文档进行调整和深入学习。
hatchModern, extensible Python project management项目地址:https://gitcode.com/gh_mirrors/ha/hatch