我正在我的项目上设置
pre-commit
挂钩,并且我正在使用恰好位于项目根目录中的自行开发的包,但我似乎无法将它们添加为 additional_dependencies
在我的配置文件中我的 pyright
钩子在存储库中提交时不高兴。结构是这样的:
root/package1
root/package2
我会在本地安装它们:
cd package1
pip install package1
cd package2
pip install package2
对于
pyright
中的 .pre-commit-config.yaml
钩子,我想要一些东西 :
repo: https://github.com/RobertCraigie/pyright-python
rev: v1.1.316
hooks:
- id: pyright
additional_dependencies: [matplotlib, pytest, '[.package1]', '[.package2]']
但我仍然收到一些来自我的
pyright
和 package1
的 package2
错误(即相对导入错误):
error: "..." is unknown import symbol (reportGeneralTypeIssues)
我想知道是否有解决办法。
预提交永远不会从被测试的存储库安装,因为它使缓存变得棘手(它仅使用配置的内容并以故意无法访问存储库的方式安装)
需要存储库本地状态通常表明它不太适合框架,并且您可能尝试做太多事情
也就是说,您可以通过使用
language: system
/ repo: local
来解决这个问题 - 但这些是不受支持的逃生口,其中为您的工具设置“正确的状态”是由用户而不是框架的负担
免责声明:我写了预提交