这可能是我的个人怪癖,但我喜欢在生活中的项目中保持代码最新,包括它们使用的库/框架。部分原因在于,我认为如果Web应用程序已完全打补丁且为最新版本,则它将更加安全。在某种程度上,这只是我的一种强迫症。
在过去的七个月中,我们对软件进行了重大重写。我们删除了Xaraya框架,该框架速度很慢,并且作为产品基本上已经失效,然后转换为Cake PHP。(我们之所以选择Cake,是因为它使我们有机会非常快速地重写我们的软件,并且与Xaraya相比,性能得到了很大的提升,值得我们花时间。)
我们使用SimpleTest实施了单元测试,并遵循了所有文件和数据库命名约定等。
Cake现在更新为2.0。而且,似乎没有可行的升级路径。文件的命名约定已经发生了根本性的变化,它们放弃了SimpleTest,转而使用PHPUnit。
这几乎将迫使我们停留在1.3分支上,因为除非有某种转换工具,否则将无法更新Cake,然后逐步改进我们的旧代码以获取新Cake框架的好处。因此,像往常一样,我们将在Subversion存储库中得到一个旧框架,并根据需要自行对其进行修补。
这就是每次都能吸引我的原因。如此众多的开放源代码产品很难使基于它们的项目保持最新状态。当开发人员开始使用新的闪亮玩具时,将对较旧的分支机构进行一些关键的修补,但他们的大部分精力将集中在新的代码库上。
您如何处理所使用的开源项目中的根本性变化?而且,如果您正在开发开源产品,那么在开发新版本时是否牢记升级路径?