
Pants: https://www.pantsbuild.org/
我觉得使用 Pants 的最大的优点是不用再创建 Python 虚拟环境。
这是我写的一个 demo monorepo: https://github.com/da-tubi/pants-pyspark
1 RRRoger 2022-08-02 09:31:46 +08:00 胖次? |
2 yuyue001 2022-08-02 09:33:47 +08:00 pip pipenv poetry pdm conda 太多了,学不动。我用 poetry 。 |
3 Mithril 2022-08-02 09:37:27 +08:00 Python 也要前端化了? |
5 6ugman 2022-08-02 10:11:45 +08:00 对 poetry 支持就用 不支持就观望 |
6 sadhen OP @6ugman 我之前尝试用 poetry 来管理 airflow dags 的 python 代码,结果发现 poetry 并没有那么好用。 大概一年之前,我觉得 poetry 特别慢。而且依赖冲突的问题也没有很好地解决。使用 pants 可以解决依赖冲突的问题。 |
8 Mithril 2022-08-02 11:27:02 +08:00 @sadhen 有区别吗? 依赖管理构建工具搞了一大把,Java 这么多年也就 Maven 和 Gradle 。 前端从 npm ,到 pnpm ,yarn 。 python 的二楼也列了一大把。 一言不合就再造个轮子,对于“python 生态的构建工具”而言,这不就是在割裂么。 |
9 Mark24 2022-08-02 11:32:59 +08:00 逐渐前端化,做同样的事情,几十个轮子,结果没有一个做得好的。 这种东西适合官方出一个持续维护一个。 |
11 zhenrong 2022-08-02 11:53:39 +08:00 打开看一眼就关了,一堆文档,谁有时间去研究这种。开发环境 venv 就完了,生产环境直接容器化。把时间浪费在折腾这些工具上没有意义,有这时间代码早写完了。 |
12 ViriF 2022-08-02 12:25:09 +08:00 这功能上是对应 make 、bazel 的吧; (而且要安装的话我多半可能还是 pipx install pants 或者 workon build_system && pip install pants......) |
13 gengchun 2022-08-02 12:27:52 +08:00 poetry 差不多了。反正底层都是 pip/setuptools 。 我这里打包也没有花多少时间。 @sadhen poetry 处理了不了的依赖还是好好想一下,不要靠工具解决。Java 下面也是很头痛的事情,不要觉得可以通过工具解决。 |
14 pepesii 2022-08-02 12:34:46 +08:00 土鳖的我还是在用 virtualenv ,最近开始接触 ml 的项目,用了下 conda |
15 wakarimasen 2022-08-02 12:54:31 +08:00 via Android docker 或者 conda 不就完了吗 |
17 V2SINE 2022-08-02 12:56:58 +08:00 Sorry, 新人还不知道怎么换行,Enter 发出去了,Ctrl + Enter 也发出去了。 |
18 BeautifulSoap 202208-02 13:04:11 +08:00 本地直接用 mini conda ,服务器上就直接 docker 镜像上 ECS 了,有点懒得折腾了 |
19 sadhen OP |
20 sadhen OP @zhenrong 磨刀不误砍柴工。不过这类事情确实应该由架构师去思考、设计、实现。或者由专门的团队来维护。比如 twitter ,他们的 python 项目用的就是 pants ,不过最近迁移到了 bazel 。 |
21 sadhen OP @Mithril 有区别的。poetry 可以认为是 Maven ,pants 可以认为是 Gradle 。( Gradle 背后也是一家公司) 这个不是再造轮子,是很多年前就开始造的工具。背后是这家公司: https://www.toolchain.com/ 而且会 pants ,可以找到工作: https://www.pantsbuild.org/page/jobs |
22 zhoujinjing09 2022-08-02 15:11:07 +08:00 这个和 bazel 有啥区别? |
23 likeccpo 2022-08-02 16:11:45 +08:00 我选择 pyenv... |
24 luckyc 2022-08-02 16:54:45 +08:00 python -m venv venv 很难吗? 非要搞那么多轮子? 对不起,我们不是前端; 你觉得官方的 venv 不好, 请提 pr |
25 zhenrong 2022-08-0 16:59:24 +08:00 @l4ever 我也觉得,venv 多简洁啊,一行命令搞定。那个我一点开看到用法描述一堆文档,瞬间没兴趣了。less is more. |
26 musi 2022-08-02 17:18:54 +08:00 前端进来看了一眼评论,骂骂咧咧关掉了页面 |
27 sadhen OP @zhoujinjing09 可以看这里 https://monorepo.tools/ 我没有实际用过 bazel ,无法比较 |