Ram*_*hum 5 python packaging setuptools python-3.x
我正在开发一个名为的软件包garlicsim。(网站。)该软件包用于Python 2.X,但我还在另一个名为garlicsim_py3。(1)的派生类上提供了Python 3支持。
因此,这两个软件包在PyPI上并存,并且Python 3用户安装garlicsim_py3,而Python 2用户安装garlicsim。
问题是:当第三方模块要使用garlicsim时,它们应具有一个要引用的软件包名称,而不是两个。当然,他们可以这样做:
try:
import garlicsim
except ImportError:
import garlicsim_py3 as garlicsim
Run Code Online (Sandbox Code Playgroud)
但是我不希望这些模块的开发人员这样做。
有没有办法garlicsim_py3将自己安装在别名下garlicsim?我想要的是让Python 3用户能够一直import garlicsim引用该模块garlicsim,但事实确实如此garlicsim_py3。
我知道Distribute项目做的是这样的:他们制造了它,所以您可以导入setuptools它,并将其重定向到他们的代码中。我不知道他们是怎么做到的。
有任何想法吗?
(1)我已经决定在分支上而不是在相同的代码库中支持Python 3;对我而言,重要的是代码库必须整洁,并且我真的不想引入兼容性黑客。
| 归档时间: |
|
| 查看次数: |
452 次 |
| 最近记录: |