标签: pipfile

更新已安装的软件包而不生成 Pipfile.lock

我读过一篇文章Pipenv了解一些概念,例如锁定文件的用途,我认为我有一些误解。

它讨论了确保Pipfile.lock我们在将应用程序部署到生产环境时可以重现完全相同的工作环境,而不会出现任何意外。

换句话说:

它为您的 Python 项目提供确定性构建,而无需承担更新子依赖项版本的责任。

我的想法是,通过Pipfile,我可以更新所有软件包,同时确保我始终可以使用Pipfile.lock. 如果更新后一切正常,我可以使用 锁定环境pipenv lock。但是,我似乎无法找到一种方法来更新包而不重新生成Pipfile.lock并丢失项目的最后工作状态。

我在这里错过了什么吗?这个工作流程是不是错了?

python pipenv pipfile

5
推荐指数
0
解决办法
553
查看次数

Pipfiles 解析器(获取 Pipfile 中使用的所有包的列表)

是否有任何解析器可以读取 Pipfile 并返回 Pipfile 中使用的所有包的列表?

如果没有,该怎么办呢?我认为正则表达式可以完成这项工作,但我对 Pipfiles 的结构还不够熟悉,无法确认情况确实如此。

python pip python-packaging pipfile

4
推荐指数
1
解决办法
1417
查看次数

`pipenv install` 和 `pipenv lock` 有什么区别?

鉴于存在 Pipfile,似乎两者都会从 Pipfile 安装所有依赖项,并更新 Pipfile.lock。那么区别是什么呢?

python pipenv pipfile

4
推荐指数
2
解决办法
1734
查看次数

从 git commit/revision id 安装 pipelinev/pip

我想从 git 存储库安装一个包,并使用 pipelinenv 指定提交 ID(我相信如果我使用 pip,它应该非常相似)

到目前为止我尝试过:

pipenv install "git+ssh://git@bitbucket.org/<username>/<repository>.git/<commit_id>#egg=mypackage"

将以下行附加到 Pipfile 并且没有错误

<package-name> = {git = "ssh://git@bitbucket.org/<username>/<repository>.git/<commit_id>"}

如果我导入该包,import mypackage它会检测到它,但缺少其依赖项。

mypackage的 setup.py看起来像;

import setuptools

with open("README.md", "r") as readme:
    long_description = readme.read()
with open("./requirements.txt", "r") as fh:
requirements = fh.readlines()

setuptools.setup(
    name='mypackage',
    url='https://bitbucket.org/<username>/<repositroy>',
    packages=setuptools.find_packages(),
    install_requires=[req for req in requirements if req[0] not in ["#", "-"]],
Run Code Online (Sandbox Code Playgroud)

dependencies pip python-packaging pipenv pipfile

4
推荐指数
1
解决办法
3565
查看次数

为什么我的Pipfile.lock中有两个哈希值用于一个模块?

我已经开始使用pipenv并安装了flask软件包。

在我的Pipfile.lock中,有以下条目:

 "flask": {
            "hashes": [
                "sha256:2271c0070dbcb5275fad4a82e29f23ab92682dc45f9dfbc22c02ba9b9322ce48",
                "sha256:a080b744b7e345ccfcbc77954861cb05b3c63786e93f2b3875e0913d44b43f05"
            ],
            "index": "pypi",
            "version": "==1.0.2"
        },
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会有两个不同的哈希值。有人可以详细说明吗?提前致谢!

python pipenv pipfile

3
推荐指数
1
解决办法
506
查看次数

是否可以在 Pipfile 中指定 `--no-binary :all:`?

我想切换到pipenv,但转换我的电流requirements.txt不是 1:1。

其中requirements.txt包含:

...
lxml==3.8.0 --no-binary :all:
pandas==0.23.4
...
Run Code Online (Sandbox Code Playgroud)

所以,当我运行pipenv install它时效果很好:

$ pipenv install
requirements.txt found, instead of Pipfile! Converting…
? Success! 
Warning: Your Pipfile now contains pinned versions, if your requirements.txt did. 
We recommend updating your Pipfile to specify the "*" version, instead.
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
? Success! 
Updated Pipfile.lock (383f9f)!
Installing dependencies from Pipfile.lock (383f9f)…
     ???????????????????????????????? 44/44 — 00:00:05
To activate this project's …
Run Code Online (Sandbox Code Playgroud)

python pipenv pipfile

3
推荐指数
1
解决办法
1257
查看次数

在heroku flask webapp部署中requirements.txt vs Pipfile?

我正在尝试将 Flask Web 应用程序部署到 Heroku,但我看到了关于需要在 git 存储库中包含哪些文件的相互矛盾的信息。

我的 webapp 是在虚拟环境 (venv) 中构建的,所以我有一个Pipfile和一个Pipfile.lock. 我还需要requirements.txt吗?一个会取代另一个吗?

我的另一个相关问题是,如果某个包无法在虚拟环境中安装会发生什么:我可以手动将它添加到requirements.txtPipfile吗?这是否会有效地做与pipenv install ...将包添加到需求列表之外的其他事情相同的事情(考虑到 Heroku 正在部署时安装包)。

pip heroku requirements.txt python-venv pipfile

3
推荐指数
1
解决办法
3023
查看次数

Pipfile.lock 已过期。

试图将 python 脚本推送到 heroku,它抱怨我的 pipfile.lock 已过时。我正在使用 pipenv 来管理依赖项,并且我尝试运行 pipenv lock 来更新锁定文件无济于事。

Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (11/11), done.
Writing objects: 100% (11/11), 2.39 KiB | 817.00 KiB/s, done.
Total 11 (delta 3), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Found python-3.6.5, removing
remote: -----> Installing python-2.7.15
remote: -----> Installing pip
remote: -----> Installing dependencies with Pipenv 11.8.2.
remote: …
Run Code Online (Sandbox Code Playgroud)

python heroku pipfile

2
推荐指数
1
解决办法
3471
查看次数

ModuleNotFoundError:没有名为“virtualenv.seed.via_app_data”的模块

我已经安装了virtualenv ,并sudo -H pip3 install virtualenv通过 virtualenv 创建了 venv ,但现在我无法在包含Pipfile 的新Django项目中创建 env 。\n我尝试过:

\n

$ pipenv shell

\n

但其结果是:

\n
Creating a virtualenv for this project...\nPipfile: /home/mostafa/py38/lib/python3.8/site-packages/carfix/Pipfile\nUsing /usr/bin/python3.8 (3.8.5) to create virtualenv...\n\xe2\xa0\xb9 Creating virtual environment...ModuleNotFoundError: No module named \'virtualenv.seed.via_app_data\'\n\n\xe2\x9c\x98 Failed creating virtual environment\n
Run Code Online (Sandbox Code Playgroud)\n

我尝试了这些答案,但问题尚未解决:

\n
    \n
  1. 答案1
  2. \n
\n

python virtualenv python-3.x pipenv pipfile

2
推荐指数
1
解决办法
5614
查看次数

Windows上的Pipenv:“模块”对象不可调用

我在Windows 10计算机上使用Pipenv遇到麻烦。最初,尝试运行时出现超时错误,pipenv install <module>并且按照此答案进行操作,因此我禁用了Windows Defender。

那摆脱了超时错误,然后它似乎已成功在〜/ .virtualenvs上安装了该软件包,但是在创建Pipfile.lock时出现了一个错误:

Adding flask to Pipfile's [packages]...
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
File "C:\Users\Edgar\AppData\Roaming\Python\Python36\site-packages\pipenv\utils.py", line 402, in resolve_deps
    req_dir=req_dir
File "C:\Users\Edgar\AppData\Roaming\Python\Python36\site-packages\pipenv\utils.py", line 250, in actually_resolve_deps
    req = Requirement.from_line(dep)
File "C:\Users\Edgar\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requirementslib\models\requirements.py", line 704, in from_line
    line, extras = _strip_extras(line)
TypeError: 'module' object is not callable
Run Code Online (Sandbox Code Playgroud)

我尝试安装requestsflask,结果相同。

  • python:Python 3.6.4 :: Anaconda,Inc.
  • pip:来自c:\ users \ edgar \ anaconda3 \ …

python windows pipenv pipfile

0
推荐指数
2
解决办法
2701
查看次数