问题标签 [pypi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
133 浏览

python - 为不同版本的 Python 上传不同版本的包到 cheeseshop

我有一个开源 Python 项目(称为 GarlicSim),我为 Python 版本 2.4、2.5、2.6 和 3.1 维护了 4 个不同版本。是的,也许这很不寻常,但我喜欢使用尽可能多的功能。我将它们保存在存储库的 4 个不同的分支中。

现在我想将我的项目上传到奶酪店。这样做的方法是什么?我希望用户会自动获得适合其 Python 版本的 GarlicSim 版本。我怎么做?

0 投票
1 回答
10540 浏览

python - 使用 setuptools/distribute 打包资源

我正在开发一个 Python egg,它有几个 .txt 依赖项(它们是由 egg 本身生成文件的模板),我正在努力将这些依赖项复制到 .txt 文件site-packagessetup.py install。根据distribute文档...

我的包的文件系统:

在 setup.py 中:

在我的包裹中:

...配置和文件系统的这种组合应该导致file1.txt并且file2.txt可以通过pkg_resources.resource_string. 不幸的是,它们没有被复制到site-packages. setup.py install我错过了什么?

谢谢!

0 投票
2 回答
882 浏览

python - 奇怪的 PyPI 身份验证行为

我正在尝试将我的包上传到 PyPI。它要求我识别,我做了,它给出了一个 OK 响应(除非识别正确,否则不会发生),但随后它声称我没有识别!为什么?

0 投票
3 回答
2347 浏览

python - 我怎样才能使这个 long_description 和 README 相差几句话?

对于我的一个包,我有一个 README.rst 文件,它被读取到 setup.py 的长描述中,如下所示:

这样,我每次提交时都可以让 README 文件显示在我的github 页面上,并且每次提交时都显示在pypi页面上python setup.py register。只有一个问题。我希望 github 页面可以这样说:“本文档反映了 envbuilder 的预发布版本。有关最新版本,请参阅 pypi。”

我可以将这些行放在 README.rst 中,然后在 I 之前删除它们python setup.py register,但我知道在推送到 pypi 之前,有时我会忘记删除这些句子。

我正在尝试考虑自动化的最佳方法,所以我不必担心它。有人有想法么?我可以做任何 setuptools/distutils 魔术吗?

0 投票
2 回答
47920 浏览

python - 带有替代索引的 pip requirements.txt

我想将 repoze Zope2 安装的所有要求放在 pip要求文件中。大多数 repoze 包似乎不在 PyPi 上,但这里有一个替代的 PyPi索引。但我不知道如何告诉 pip 将该索引与需求文件一起使用。对于单个包裹,这很容易

我尝试了以下

或在我的 requirements.txt 中所有这些类型或排列:

或(因为文档说“请注意,所有这些选项都必须单独一行。”)

那么,告诉 pip 使用http://dist.repoze.org/zope2/2.10/simple/作为索引的正确方法是什么?

0 投票
1 回答
522 浏览

python - 从 PyPI 安装包时出现问题:未安装根文件

在通过或安装BitTorrent-bencode包,或者通过下载 tarball 并安装它之后,我发现包含和目录。尽管这两个子目录都包含文件,但目录本身没有文件。tarball 确实包含,它是这个包的实际源代码,但这些工具中的任何一个都没有安装它。easy_install BitTorrent-bencodepip install BitTorrent-bencodeeasy_install $tarball/usr/local/lib/python2.6/dist-packages/BitTorrent_bencode-5.0.8-py2.6.egg/EGG-INFO/test/BitTorr*bencode.py

我对这一切都很陌生,所以我不确定这是包裹的问题还是我正在做的事情。该软件包是在不久前(2007 年)打包的,因此它可能使用了一些不推荐使用的配置方面,我需要为其提供命令行标志。

我更感兴趣的是了解包或我的程序出了什么问题,而不是安装这个特定的包。还有另一个名为hunnyb的软件包似乎在解码编码数据方面做得足够好。大多数情况下,我想知道如何处理其他包中的此类问题。我还想让包维护者知道包是否需要更新。

编辑

@Andrey Popp 解释说问题可能出在 setup.py 文件上。我想我能真正回答我的问题的唯一方法是实际 R-ing TFM。但是,由于我可能暂时没有时间彻底完成这项工作,因此我已在此处发布了 setup.py 文件。

快速浏览easy_install 手册会发现该模块的 setup.py 使用的函数 find_modules() 搜索__init__.py包中命名的文件。有问题的源代码文件被命名bencode.py,所以也许这就是问题所在:它应该被命名__init__.py

编辑 2

setuptools.find_packages现在学习了 Python 打包,我认为问题在于该模块正在使用package_dir. 修复它似乎相当简单。但是,无法通过他的 PyPI 联系信息联系到作者。该模块的 PyPI 页面也列出了“包索引所有者”。我不确定这应该是什么意思,但我确实设法与那个人取得了联系,我认为他可能无法维护该模块。无论如何,它仍然与我在六月发布此问题时的状态相同。

鉴于该模块似乎或多或少被遗弃,并且在hunnyb中有合适的替代品,我已经接受@andreypopp 的答案与我将得到的一样好。

0 投票
9 回答
234545 浏览

python - 为什么使用 pip 而不是 easy_install?

一条推文写道:

不要使用easy_install,除非你喜欢刺伤自己的脸。使用点子。

为什么使用 pip 而不是 easy_install?主要不是PyPI 和包作者的错吗?如果作者将垃圾源 tarball(例如:缺少文件,没有 setup.py)上传到 PyPI,那么 pip 和 easy_install 都会失败。除了外观上的差异,为什么 Python 人(如上面的推文)似乎更喜欢pip 而不是 easy_install?

(假设我们谈论的是来自社区维护的 Distribute 包中的 easy_install)

0 投票
4 回答
82174 浏览

python - 如何让 setuptools 安装不在 PyPI 上的包?

我刚刚开始使用 setuptools 和 virtualenv。我的包需要最新的 python-gearman,只能从 GitHub 获得。PyPI 上的 python-gearman 版本是旧版本。Github 源码是 setuptools 兼容的,即有 setup.py 等。有没有办法让 setuptools 下载并安装新版本,而不是在 PyPI 上查找并安装旧版本?

仅供参考,新的 python-gearman 是http://github.com/mtai/python-gearman

0 投票
4 回答
9468 浏览

python - 为什么当 PyPi 显示版本 1.0.0 时 pip 安装 matplotlib 版本 0.91.1?

2012 年 10 月 15 日更新

PyPi 现在在 1.1.0 显示 matplotlib,所以这个问题得到了解决。通过以下方式安装 matplotlib:

pip install matplotlib

下面是过时的信息

PyPi显示matplotlib 1.0.0。但是,当我通过pip将 matplotlib 安装到virtualenv时,会安装 0.91.1 版本。

  • 为什么版本不同?
  • 有没有办法 pip install matplotlib 1.0.0?

研究

看来matplotlib 在 PyPi 上的 DOAP 记录指向正确的版本。以下是 DOAP 记录供参考:

配置

  • 操作系统:Mac OS X 10.6.6
  • 蟒蛇 2.7
  • 虚拟环境 1.5.1
  • 点 0.8.1

2010 年 8 月 24 日上午 7:09 更新

从 PyPi 镜像安装也会安装 0.91.1 版本:

更新 2011 年 1 月 14 日下午 4:54

即使matplotlib 1.0.1已经发布,这个问题仍然存在。

0 投票
5 回答
4084 浏览

python - 如何将包发送到 PyPi?

我写了一个小模块,我想知道打包它以将其发送到pypi的基本步骤是什么:

  • 什么是文件层次结构?
  • 我应该如何命名文件?
  • 我应该使用 distutils 创建 PKG-INFO 吗?
  • 我应该在哪里包含我的文档(用 sphinx 制作)?