首页
/ 推荐使用:Python 的高效依赖管理器 —— Poet(已弃用)

推荐使用:Python 的高效依赖管理器 —— Poet(已弃用)

2024-05-21 22:12:34作者:傅爽业Veleda

注意:本文提到的Poet项目已被其开发者弃用,并推荐使用poetry作为替代品。尽管如此,我们将回顾Poet的功能以理解其设计理念。

项目介绍

Poet 是一个针对Python项目的依赖管理工具,它简化了依赖声明、管理和安装过程,确保在任何环境中都能有一致的软件栈。尽管目前处于高度实验阶段,但如果你愿意尝试新事物,Poet将会是一个有价值的工具。

项目技术分析

Poet的核心特点是只需要一个名为poetry.toml的配置文件,就可以处理所有任务。这个文件不仅包含了项目的元数据,还定义了依赖关系和版本约束。它支持多种版本约束语法,如caret、tilde、wildcard等。此外,Poet会自动识别当前是否在虚拟环境中运行,从而智能地进行包的全局或局部安装。

Poet也提供了方便的命令行接口,如new用于快速创建项目结构,init用于交互式创建配置文件,installupdate用于安装和更新依赖,以及packagepublish用于构建和发布项目。

项目及技术应用场景

Poet适用于各种Python开发场景,特别是对于那些希望减少繁琐的初始化工作和依赖管理流程的开发者。例如,当你需要:

  • 快速启动新的Python项目,而无需手动创建setup.pyrequirements.txt等文件。
  • 在多个环境间保持一致的依赖版本。
  • 简化依赖安装和更新。
  • 将项目打包并发布到PyPI。

项目特点

  1. 简洁的配置:只需一个poetry.toml文件,即可管理所有项目信息和依赖。
  2. 版本控制:遵循语义化版本,可自定义版本约束。
  3. 跨环境兼容:自动识别虚拟环境,实现全局或局部安装。
  4. 命令行友好:提供一系列方便快捷的命令,提高开发效率。
  5. 自动化:从创建项目结构到发布,Poet可以帮你完成大部分工作。

虽然Poet已被开发者弃用,但它所体现的设计理念和实用功能仍然值得学习和借鉴。现在,我们推荐使用它的继任者——poetry,它继承了Poet的优点,并进行了改进和优化,为Python项目提供了更强大的依赖管理和发布解决方案。

登录后查看全文
热门项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.48 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
783
1.57 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
800
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
970
2.28 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
480
311
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.01 K
766
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
808
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
647
284