Questions tagged «setuptools»

Setuptools建立在Python的distutils的基础上,可以更轻松地构建,分发和安装库和应用程序。

12
为什么pip安装了旧版本的软件包?
我刚刚将软件包的新版本上传到PyPi(1.2.1.0-r4):我可以下载egg文件并使用easy_install进行安装,并且该版本可以正确签出。但是,当我尝试使用pip进行安装时,它将安装版本1.1.0.0。即使我明确指定要使用的版本,也会pip install -Iv tome==1.2.1.0-r4收到以下消息:Requested tome==1.2.1.0-r4, but installing version 1.1.0.0,但我不明白为什么。 我仔细检查parse_version并确认1.2.1上的版本字符串大于1.1.0上的版本字符串,如下所示: >>> from pkg_resources import parse_version as pv >>> pv('1.1.0.0') < pv('1.2.1.0-r4') True >>> 那么,为什么要选择安装1.1.0呢?
79 python  pip  setuptools 

12
找不到符号:__ PyCodecInfo_GetIncrementalDecoder
自从Homebrew Python 2.7.11(从2.7.10开始)更新以来,我突然无法从PyCharm IDE控制台在PyPi上测试注册我的软件包。 运行(作为“外部工具”) python -B setup.py register -r pypitest 我现在得到 Traceback (most recent call last): File "setup.py", line 22, in <module> from setuptools import setup File "/usr/local/lib/python2.7/site-packages/setuptools/__init__.py", line 12, in <module> from setuptools.extension import Extension File "/usr/local/lib/python2.7/site-packages/setuptools/extension.py", line 8, in <module> from .dist import _get_unpatched File "/usr/local/lib/python2.7/site-packages/setuptools/dist.py", line …


8
与setup.py和软件包共享软件包版本的正确方法是什么?
使用distutils,setuptools等,在setup.py以下位置指定软件包版本: # file: setup.py ... setup( name='foobar', version='1.0.0', # other attributes ) 我希望能够从包中访问相同的版本号: >>> import foobar >>> foobar.__version__ '1.0.0' 我可以将其添加__version__ = '1.0.0'到包的__init__.py中,但是我还想在包中包括其他导入,以创建包的简化接口: # file: __init__.py from foobar import foo from foobar.bar import Bar __version__ = '1.0.0' 和 # file: setup.py from foobar import __version__ ... setup( name='foobar', version=__version__, # other …

2
如何在不使用setup.py文件的情况下构建源分发?
具有以下封装结构 . ├── my_package │ └── __init__.py ├── setup.cfg └── setup.py 内容 setup.py from setuptools import setup setup() 内容 setup.cfg [metadata] name = my_package version = 0.1 [options] packages = find: 我可以my_package像这样构建轮子或源代码分布 pip wheel --no-deps -w dist . # generates file ./dist/my_package-0.1-py3-none-any.whl python setup.py sdist # generates file ./dist/my_package-0.1.tar.gz 但是据setuptools的维护者说,声明式构建配置是理想的选择,而使用命令式构建将成为代码的味道。因此,我们替换setup.py为pyproject.toml: …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.