Setup.py困境:警告:''不是有效的包名

时间:2015-10-04 20:23:12

标签: python pypi

对于我的Python项目,我将源代码保存在src目录中。因此,对于我的项目的setup.py脚本:

from setuptools import setup

setup(name='pyIAST',
    ...
    package_dir={'':'src'},
    packages=[''])

以便查找我的代码所在的src/IAST.py。例如我的plot_isotherms()脚本中有一个函数IAST.py,因此用户可以在安装后调用它:

import IAST
IAST.plot_isotherms()

一切都很有效,但是当我{Py}来python setup.py install或使用来自PyPi的pip install pyIAST时,会发出恼人的警告:

WARNING: '' not a valid package name; please use only.-separated package names in setup.py

如何让它消失?

我的项目是here。我对我为什么命名我的包pyIAST感到有些困惑,但用户仍然输入import IAST来导入我的包。

1 个答案:

答案 0 :(得分:1)

清除警告的一种方法是将第一行更改为:
from setuptools import setup, find_packages
然后将您的包裹行更改为:
packages=find_packages(),
安装程序安装将不再生成警告。

您可以运行以下两个命令来查看等温线方法现在可用:
import pyiast#(< ==注意这不是IAST)
dir(pyiast)

  

['BETIsotherm', 'InterpolatorIsotherm', 'LangmuirIsotherm', 'ModelIsotherm', 'QuadraticIsotherm', 'SipsIsotherm', '_MODELS', '_MODEL_PARAMS', '_VERSION', '__author__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'iast', 'np', 'plot_isotherm', 'print_selectivity', 'reverse_iast', 'scipy']

可以使用pyiast.plot_isotherm()

调用它

您可能需要更新setuptools。你可以查看你的版本:
import setuptools; print "setup version: ", setuptools.__version__
可以用以下内容更新: sudo pip install --upgrade setuptools