在我们的团队中,我们主要从事搜索引擎架构和内容集成工作,并且大部分代码库都使用 Python。我们所有的构建工具和 Python 模块依赖项都在源代码控制中,因此可以检查它们并加载环境以供使用,而不管操作系统/平台如何,有点类似于virtualenv使用的方法。
多年来,我们一直在维护与 Python 2.3 兼容的代码库,因为我们使用的商业产品之一依赖于 Python 2.3。多年来,这导致了越来越多的问题,因为自 2004 年 2.3 版以来,更新的工具和库需要更新版本的 Python。
我们最近将我们的构建环境与商业产品环境的依赖解耦,并且可以使用我们想要的任何版本的 Python(或 Java)。自从我们将 Python 2.6 标准化为与以前版本向后兼容的最新版本 Python 以来,已经过去了大约一个月左右的时间。
Python 3.0 不是一个选项(目前),因为我们必须迁移过多的代码库才能使我们的构建和集成工具再次正常工作。
我们喜欢 Python 2.6 的许多新特性,尤其是改进的模块和类装饰器之类的东西,但是我们依赖的许多模块会导致 Python 2.6 解释器发出各种贬值警告。另一个我们感兴趣的用于管理 EC2 云集群节点的工具,Supervisor甚至无法在 Python 2.6 中正常工作。
现在我想知道我们现在是否应该在 Python 2.5 上标准化,而不是在生产环境工具的开发中使用 Python 2.6。我们想要/需要的大多数工具似乎都可以在 Python 2.5 中正常工作。在对 Python 2.6 功能或模块有很多依赖之前,我们正在尝试解决这个问题。
非常感谢!
-迈克尔