实在忍不了 UV 了,继续来宣传 PDM 了,https://github.com/pdm-project/pdm
PDM 是我心中的白月光
我建议每个写 Python 的人都可以来学习一下 PDM 的代码
![]() | 1 F281M6Dh8DXpD1g2 185 天前 井底之蛙呱呱呱 |
![]() | 2 Kilerd 185 天前 via iPhone pdm 除了 add dep 的时候慢一点,其他使用体验上确实比 uv 好不少。 坐等一个 riir ,就完美了 |
3 fds 185 天前 uv 除了不支持 python 2.7 ,其他我没找到什么毛病 |
4 w568w 185 天前 > 实在忍不了 UV 了,继续来宣传 PDM 了 为什么?我认识的人里会用 pdm 管理项目的,现在基本全部转 uv 了。你逆行的理由是什么? |
5 cj323 185 天前 同问,所以 uv 哪里不舒服? |
6 Alias4ck 185 天前 |
7 ManjusakaL OP @w568w 正文里已经说了,pdm 兼容很多方式,比如我已经存在的 pyenv 的 workflow ,不会试图教我做事。以及 pdm 的 plugin 开发体验极好 |
8 wryyyyyyyyyyyy 185 天前 pdm 能管理 python 的版本吗? 之前用 poetry ,然后 pdm ,再之后 uv ,不记得为什么不用 pdm 了。好像是 pdm 为了哪个 pep 哪个特性开发的,也是 pdm 引以为傲的特性,然后这个特性被 pep 否决了,pdm 想直接用也用不了。 |
9 ManjusakaL OP @wryyyyyyyyyyyy 支持管理 Python 版本 |
![]() | 11 YaD2x 185 天前 这标题有点逆天,看了都不想尝试。 |
12 jamstack 185 天前 ![]() "不会试图当你的爹,教你做事" |
![]() | 13 lambdaq 185 天前 一快遮百丑 天下功夫唯快不破 pdm 就是没 uv 快。不服你提速啊。 |
14 w568w 185 天前 @ManjusakaL #7 uv 并没有教你做事呀,你也可以使用自己的 python 解释器,或者 conda 的 python 解释器,或者 uv 帮你管理的。如果你使用 uv pip 模式,实际上它默认就不会下载解释器。读一下文档吧。 至于插件开发,我没遇到过这种需求。 |
![]() | 15 tabris17 185 天前 你们吵吧,我选择 rye |
16 w568w 185 天前 ![]() 我不用 pdm 的理由很简单:我的项目使用 pdm 需要 2 个小时才能 resolve (是的,2 个小时,我完全不知道 pdm 卡在哪里,它就一直转圈,没有任何有效的日志输出。每当我加一个 .whl 依赖这在 AI 开发里很常见它的 resolve 时间就增加 10 分钟)。 相同的代理、相同的依赖,猜猜 uv 需要多久? 13 秒。 |
17 ManjusakaL OP |
18 ManjusakaL OP @w568w 是时候把 resolve 的部分用 Rust 提速了 |
![]() | 19 akin520 185 天前 现在管理太多了,刚玩 MCP ,学会了 UV , |
![]() | 20 Vegetable 185 天前 pdm 已经出来太久了,使用 rye 或者 uv 的人,基本上都是从 pipenv 、poetry 一路过来的,相信大部分都试用过 pdm 。pdm 和 poetry 比也许有些优势,但是现阶段他的所有优势都比不上 uv 的快这一个优点。 |
21 uni 185 天前 踩踩踩 pdm 的 api 乱七八糟,uv 舒服多了 一个工具还要我写插件?我只需要用得舒心省心的工具,最好是一行命令帮我解决所有问题。这点 uv 做得很好。pdm 搞这么复杂乱七八糟的反而是他的设计失误 第三,我都不懂反驳了,楼下来吧 |
23 dule 185 天前 只用 uv ,谢谢 |
![]() | 25 coolair 185 天前 真是笑话,哈哈。 |
26 ll5270 185 天前 ![]() 只有我用 virtualenv ? 你们说的这些我都没听过 |
27 deplives 185 天前 花里胡哨,我不接受建议 |
![]() | 29 encro 185 天前 ![]() |
30 xyzzy 185 天前 看来楼主的这个安利似乎起到了反向效果,还是说,其实楼主本来就是反串来黑 pdm 的 |
![]() | 32 dantangfan 185 天前 @ll5270 我也是 |
![]() | 33 cz5424 185 天前 还在用 poetry 咋说 |
34 ManjusakaL OP @ll5270 我之前是 pyenv + virtualenv 的,后面切换到 PDM 了 |
35 ManjusakaL OP @uni 主要是有很多场景官方暂时也不太可能做,比如我自己写过的插件 1. audit ,更新上游的 security alert ,更新依赖 2. 生成依赖的关系图供审计用 3. 还有些场景特化的内部插件 > 一个工具还要我写插件? 凭心而论,写插件还是很常见的。。 |
36 cj323 185 天前 python 的解释器/包管理和 venv 都太能折腾,能用就行了。 我目前是用 rust 系的 mise+uv ,半年下来还行。当然,我也不指望这套能撑多久。盲猜下一套是用 zig 写的。 |
![]() | 37 jackerbauer 185 天前 python -m venv 和 pip 不好么? |
![]() | 38 xiangchen2011 185 天前 uv 已死是什么逻辑,标题党成分 |
39 TArysiyehua 185 天前 说的很好,但是我用 conda |
![]() | 41 iorilu 185 天前 你说的什么 api 设计, 这是给开发插件的人用的吗 我就管理虚拟环境, 目前用 uv -v , 速度快很好用 |
42 qq135449773 185 天前 ![]() uv 说的是这个吗,我还以为 uvicorn ,第一次听说这个,谢谢分享 https://github.com/astral-sh/uv 看到 README 中写了“An extremely fast Python package and project manager, written in Rust.” 可是 python 生态下的包管理工具(比如 pdm )真的已经差到需要 rust 插手了吗。。。 |
![]() | 43 iorilu 185 天前 @jackerbauer 换 uv 把, 不说别的, 时间省 80% |
![]() | 44 yb2313 185 天前 uv 用 rust 写的, 这一拳, 20 年的功力, 你挡得住吗 |
47 zangaiboy 185 天前 市场回暖了吗,时隔多年又看到 xxx 第一这种争议性话题了 |
![]() | 48 shijingshijing 185 天前 内网离线,我只用 conda |
![]() | 49 svtter 185 天前 For me, 稳定项目用 pdm ,新的测试工程用 uv 。uv 速度真的很快。 |
![]() | 50 ratazzi 185 天前 @qq135449773 隔壁的 js 不是也用 zig 手搓嘛 https://bun.sh/ |
![]() | 51 ZiChun 185 天前 xx 已死这种标题大概率就只是为了吸睛,天生会让很多人好感降低。 uv 至少 sglang 、vllm 这些大模型推理框架都是推荐的。 |
![]() | 52 Vegetable 185 天前 @qq135449773 确实很烂,reslove 一次动辄几分钟真的和折磨人。 |
54 pf94 185 天前 只用 pip |
55 Greendays 185 天前 啥啥啥,这都说的是个啥。 |
![]() | 56 xiadengmaX1 185 天前 暴论引战,有那种 php 是世界第一语言那种感觉了 |
![]() | 58 mywaiting 185 天前 道理我都懂,但是我就是想用 pip 安装包,用 virtualenv 管理环境,pyenv 切换版本 尽管 uv 很快很简单,但是它不是 python 写的,出了问题需要 debug 源代码,我看不懂 rust 另外 uv 也扩展了部分实现,比如 uv workspaces 尽管我自己的项目也是按照 workspaces 类似的方式组织的,但没有 PEP 提案之前,还是慎用吧 |
![]() | 59 EdmondGUO 185 天前 第一次听说这些,可能我是搞机器学习学的 Python ,以前都是用 conda 的 |
60 guansixu 185 天前 我以为我们前端已经够乱了,npm 、yarn 、pnpm ,没想到 python 也是这么乱 |
![]() | 61 llsquaer 185 天前 |
62 zepc007 185 天前 有点 Javaer 标题党的味道了, 哈哈哈 |
![]() | 64 wuhunyu 185 天前 ![]() python 怎么这么多依赖管理工具,poetry ,pdm ,uv ,还有过时的 pip |
65 leven87 185 天前 ![]() 一直用 pip , 感觉没什么问题 |
66 hefish 185 天前 ![]() 城里人玩的真花, 我只会 pip |
![]() | 67 bigtan 185 天前 最近全面转 uv 了,速度快,干净清晰 |
68 FlashEcho 185 天前 python 的包管理真的太多了,这么这么多有什么意义吗?原来的用着也还行啊 js 有 npm 这种超级屎山也只出了两种( yarn, pnpm)主流包管理 |
69 Lockroach 185 天前 我还没装 uv 就开始唱衰 uv 了吗python 怎么也染上前端的坏毛病了 |
![]() | 72 godspeedyou 185 天前 优雅在工程面前啥都不是 |
![]() | 73 xubeiyou 185 天前 Java 就 maven 和 grdle 就可以走天下 结果 py 也太多了 |
![]() | 74 lc4t 185 天前 喜欢 uv |
![]() | 75 ddddd0 185 天前 via iPhone 学习一下 |
![]() | 76 vipfts 185 天前 @TArysiyehua ![]() |
78 jesusjiang 185 天前 via Android uv yyds |
![]() | 79 anoyi 185 天前 都不用 |
80 ho121 185 天前 via Android 只用 pip 和 venv 的路过。 遇到依赖冲突的手工解决。 切换 python 版本?不存在这个问题。用对应的 python 版本创建 venv 就够了。 |
81 xulolololololo 185 天前 9 年老 python ,没用过,喜欢原始自带的,能达到目的就行,就一个包管理的东西而已 |
![]() | 82 bluearc 185 天前 之前因为 conda resolve 太慢换到 mamba ,现在又有新的了吗 |
![]() | 84 skiy 185 天前 rye 好用。 |
![]() | 85 Trim21 185 天前 via Android 用 conda 的可以试试 pixi ,相当于 conda 生态的 uv ( |
86 hao7Chen 185 天前 我一个用 conda 的瑟瑟发抖 |
![]() | 87 unclemcz 185 天前 via Android 作为一个 pdm 用户,我觉得 op 会死的比 uv 早。 |
88 ManjusakaL OP @unclemcz 包的,要是 uv 连我这个病秧子都熬不过的话,那也是确实过于废材了 |
89 14 185 天前 之前一直用 poetry ,后来有这个项目之后 https://github.com/mkniewallner/migrate-to-uv 就顺手迁移到了 uv ,速度快了很多 |
90 SkywalkerJi 185 天前 uv 感觉已经坐上 ai 的东风了 |
![]() | 91 Nugine0 185 天前 via Android 包管理器打来打去,架不住别人发论文还是用 requirements.txt ,真是互相恶心。 python 生态多年顽疾,短时间治不好的。 |
92 mayli 185 天前 ![]() 就你这样的用户 让我不想碰 pdm 了 啥被咬 |
![]() | 93 lylijincheng 185 天前 via Android 真是够乱的有的一比 pip pipx pip3 uv pdm conda nv npm pnpm yarn 没个最佳实践吗,都要玩一遍 |
![]() | 95 wheeler 185 天前 ![]() "不会试图当你的爹,教你做事" |
96 absx 184 天前 我说一个吧 在中文文件夹下 uv init / pdm init 时,由于 pep 标准限制,无法使用中文作为 project name ,这两个指令会报错。 而 uv 提供了 uv init --name xxx 用给定的 name 绕过此限制,但是 pdm 没有提供解决办法。 |
![]() | 97 weishu 184 天前 mcp server 基本都用的 uv ,没见过 pdm 的。 |
98 vitality 184 天前 我觉得 uv 是真的快、省心。 最重要的是,uv 还是 Rust 写的,性能有保障,更新维护也有保障。嘿嘿嘿嘿,我的 ,嘿嘿嘿 |
![]() | 99 hikarugo 184 天前 感谢 op 发帖,让我知道了 uv ,之前一直在用 pyenv 和 virtualenv 。 |
100 jiaqili 184 天前 好的,我会继续使用 uv |