缓解了项目从PIL到枕头的过渡。

pillowfight的Python项目详细描述


枕头是一个替代品,作为一个滴水替代品。不像 皮尔,它是积极维护和易于安装。非常好。有 只有一个问题,那就是用户必须先卸载pil 安装枕头,因为它们共享一个名称空间。

这使得需要在 各种各样的配置,可以很容易地依赖于PIL或枕头 不可避免地打破某些东西(也许是以微妙的方式)。所以很难 安全过渡。

这个包旨在通过提供一个可以 聪明地依赖于毛毛或枕头,基于已经在 系统。如果安装了pil,仍然需要工作的包,但是目标是 过渡到枕头,可以简单地依赖于pillowfight包。

工作原理

此包作为源发行版提供,带有一个简单的安装脚本。 首次安装pillowfight时,其安装脚本将 运行并开始检查系统。

安装脚本将查看是否已经安装了pil。如果是,它会 打印一个警告说,皮尔是不赞成和安装枕头。会的 然后转身依靠皮尔。

如果没有安装PIL,它将依赖于枕头。

使用枕套

只需用setup中的pillowfight替换pil依赖项 install_requires列表:

setup(name='MyPackage',version='1.0',install_requires=['pillowfight'])

为什么写这个

我们使用django和枕头作为产品,系统管理员可以在 网络。有很多配置,还有很多老的 系统已经在使用PIL。

我们一直在努力寻找合适的策略 现有用户枕头不破坏任何安装。我们没有多少 控制他们的系统,所以我们知道我们必须聪明。

很多项目似乎已经将它们的setup.py文件修改为 检查系统上有什么,但实际上,效果不太好。什么时候? 构建python eggs时,requires.txt文件将填充 要么是PIL,要么是Pillow,这根本不起作用。

所以我们写这篇文章是为了有一个稳定的依赖,可以做正确的事情 事情。我们希望其他人会发现它有用。

谁在使用它

我们将其用于代码审查产品, Review Board

如果你在使用它,let us know

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java二进制到十进制   使用GSON时发生java非法状态异常   java ImageJ API:如何将一个图像插入另一个图像   java使用ajax从servlet获取价值   每个容器每个bean的JavaSpring单例作用域   VTD XML查找重影/不存在路径时出现java错误   RPC方法调用中的java Nullpointer异常   java使用索引排序是否有效   安卓 java中Json类中get和getJSONObject的区别是什么   java为什么要添加系统。出来println能让线程运行得更快吗?   java标识符预期问题   反射可以在Java中反射私有静态方法吗   Java SonarQube错误“最终公开静态字段”   终端一直在请求输入?[爪哇]