首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
V2EX  ›  Python

之前是不是有人推荐 pipenv,垃圾到不能用啊

  •  
  •   gaoyadianta · 50 天前 · 627 次点击
    这是一个创建于 50 天前的主题,其中的信息可能已经有所发展或是发生改变。
    lock 好久好久,install 个东西还时不时的失败,这种项目怎么还能有人推荐
    12 回复  |  直到 2019-10-21 10:02:34 +08:00
        1
    ly4572615   49 天前
    是不是你用的方法有问题呀亲
        2
    lc1450   49 天前
    不要用 Pipenv site:zhihu.com
        3
    lc1450   49 天前
    不能直接发链接,搜这个,第一条
        4
    gaoyadianta   49 天前
    @ly4572615 我现在确定用法没问题,github 上搜一下一堆一堆类似的 isssue,你用着很爽?
        5
    gaoyadianta   49 天前
    @lc1450 好吧,为时已晚啊
        6
    lovepocky   49 天前 via iPhone
    pipenv 很烂,我们现在用 poetry,相对好点
        7
    gaoyadianta   49 天前
    @lovepocky 这个怎么样,有明显的硬伤吗
        8
    ClericPy   49 天前
    这段时间是有一波节奏从 pipenv 转 poetry 的

    反正我平时小项目 pipenv 没什么问题, 至于 lock 时间太长, 有的时候可以 ignore lock, 另外... 一般依赖没改变的情况还真没用过 pipenv install, 也就不存在被它拖时间的情况了, 有人推荐是因为省事, 而且也没什么其它简单选择啊, poetry 就算再好, 就算支持捎带发布 twine pypi 什么的, 还是感觉有学习成本, pipenv 的成本就是 pipenv run........
        9
    gaoyadianta   48 天前
    @ClericPy 不用 pipenv install,新包怎么安装呢?依赖老也不改变,我管理个啥,问号脸,这个工具存在不就是为了管理这些包的么。所以你的逻辑是,如果不怎么用它,那它还可以。???
    还是说我理解错你说的依赖了
        10
    Trim21   24 天前 via Android
    之前有一段时间同时使用 pioenv 和 poetry,这段时间尝试了一下 pipenv,还是用回 poetry 了。

    poetry 比 pipenv 在各种角度上好用很多,就比如他 readme 里面提到的,为什么要同时维护一个 requirements,还要维护两个 pipenv 的文件,这几个文件本来不就应该保持同步么,难道你的项目中依赖于 requests=1 你会安装一个 requests=2 在环境中吗。


    我习惯用 windows 开发,然后打包成 docker 放到 linux 服务器上去,或者用 windows 开发,打包在三个平台上使用,这个使用场景 pipenv 似乎完全没考虑。

    poetry 生成的 lock 是跨平台的,也就是说你在 windows 下面生产的 lock 文件不需要担心在 linux 下面会生成不一样的 lock 文件(当然换行符的问题还是存在)。

    poetry 在安装依赖的时候,就像他的 readme 一样,会保证你安装的依赖没有版本冲突问题,但 pipenv 就是单纯的像 pip 一样安装所有依赖,然后把版本写死而已。参照 https://github.com/sdispater/poetry/blob/master/README.md#dependency-resolution 这一点似乎 poetry 是现在唯一的工具会解决这个问题。


    至于学习成本,其实 poetry 也有 run 命令,就是 pipenv run 换成 poetry run。
        11
    Trim21   24 天前 via Android
    但 poetry 没法帮助解决你解析依赖用时很长的问题,poetry 前几次解析依赖也巨慢而且经常失败,我当初就是被这个劝退。
    不过在成功运行并把需要的数据缓存到本地之后情况就好多了。
        12
    gaoyadianta   24 天前
    @Trim21 谢谢,不过有一个问题指出下:在不需要的情况下,pipenv 是不需要维护 requirements 文件,pipfile 和 pipfile.lock 就可以了。我没用过 poetry,不过就我使用 pipenv 的体验来说,它在各方面的设想都没有什么问题,只是这个 lock 失败真的是蛋疼死。。。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4443 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 26ms · UTC 02:19 · PVG 10:19 · LAX 18:19 · JFK 21:19
    ♥ Do have faith in what you're doing.