使用Poetry对python工程进行依赖管理和打包

过去一直使用pipenv(著名requests库作者的作品)对python工程进行版本管理。

在Rasa工程中,发现他们使用poetry对python工程进行管理。

使用后,发现确实比pipenv赞。

Poetry - Python dependency management and packaging made easy

为什么推荐使用poetry而不是pipenv?

  1. poetry除了具有依赖管理,还具有打包和发布的功能(不再需要twine)
  2. poetry在安装过程中,具有过程进展显示(而不是像pipenv长时间卡住都不知道)
poetry的简单使用
新项目

初始化

poetry init

(一步步交互式输入信息,注意,它问你是否定义依赖时,先选no,因为内网源还没有配置,生成poetry核心文件 pyproject.toml)

添加XX内网源

poetry source add xx http://mirrors.xxxx.com.cn:80/pypi/web/simple/ --priority default

--priority default 这个很关键,否则即使加了xx的内网源,它仍然会使用默认的官方源下载,default的优先级是最高的)

进入poetry的虚拟环境

poetry shell

(第一次进入会自动创建虚拟环境,如果提示缺少虚拟环境相应组件,则需要额外安装)

新增依赖

poetry add xxxx

(第一次,会自动生成核心的poetry.lock文件,这是保证生产安装依赖和开发时的依赖版本完全一致的关键)

新增开发依赖(生产环境不需要使用的依赖)

poetry add yyyy --group dev

生产环境的依赖安装(如Docker内)

poetry install

(打包和发布到Pypi仓库)

poetry build

poetry publish -u __token__(这里是2个短下划线) -p pypi-AgEIcHlwaS5vcmcCJDc3NjRkNTdiLTQ0M2MtNDgzMi1hZjAyLTU0Nzc....(Pypi个人账号内的API TOKEN)

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值