Travis为什么没有在Python包中找到文件?

问题描述

我已经编写了一个Python程序包(完整的code on Github)并添加了Travis CI。由于一次测试,目前pipeline is failing

我在包中有一个YAML配置文件作为备用。我不想重写那部分代码,所以我真的想要一个文件路径。

这是测试失败:

import os


def get_symbols_filepath(testing: bool = False) -> str:
    """Get the filepath of the symbols YAML file."""
    pkg_root = os.path.dirname(sys.modules[__package__].__file__)
    return os.path.join(pkg_root,"./misc/symbols_tiny.yml")

该部分的代码是:

MANIFEST.in

它在包装中吗?

我的include hwrt/misc/symbols_tiny.yml 中有这个:

setup.py

这在我的from setuptools import setup setup( package_data={"hwrt": ["misc/*"]},... ) 中:

python setup.py sdist

当我运行copying hwrt/misc/symbols_tiny.yml -> hwrt-0.2.1/hwrt/misc时,它是源代码发行版(adding 'hwrt/misc/symbols_tiny.yml')的一部分,它也位于(tox)中。

毒物

奇怪的是,它在pkg_resources.resource_filename(__name__,path)中本地工作。

我迷路了。为什么它在Travis上失败了?我应该如何访问该文件?我还尝试了Scan Proteins 1 7:: [sp|P02787|TRFE_HUMAN Serotransferrin OS=Homo sapiens GN=TF PE=1 SV=3 ||| sp|TRFE_HUMAN| ||| tr|B4DHZ6|B4DHZ6_HUMAN Transferrin,isoform CRA_c OS=Homo sapiens GN=TF PE=2 SV=1] 2 21:: [sp|P01876|IGHA1_HUMAN Ig alpha-1 chain C region OS=Homo sapiens GN=IGHA1 PE=1 SV=2 ||| sp|P01877|IGHA2_HUMAN Ig alpha-2 chain C region OS=Homo sapiens GN=IGHA2 PE=1 SV=3] 3 2:: [sp|P14543|NID1_HUMAN Nidogen-1 OS=Homo sapiens GN=NID1 PE=1 SV=3 ||| tr|B4DM05|B4DM05_HUMAN cDNA FLJ51241,highly similar to Nidogen-1 OS=Homo sapiens PE=2 SV=1] 。它也可以在“之前”工作...我不知道为什么现在失败或发生了什么变化。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...