【发布时间】:2014-03-31 08:55:29
【问题描述】:
我需要将现有的相当大的应用程序从 Symfony 2.0.15 升级到 Symfony 2.4.x(替换为当前版本)。
我不太确定这样做的最佳策略是什么。当然,使用了诸如表单或 esi 之类的迁移关键特性 :)
- 从一个主要版本“逐步”升级到另一个主要版本(2.1、2.2、2.3、2.4)
- 直接从 2.0.x 升级到 2.4
您有什么建议/经验可以分享吗?将不胜感激:)
谢谢, 斯蒂芬
【问题讨论】:
我需要将现有的相当大的应用程序从 Symfony 2.0.15 升级到 Symfony 2.4.x(替换为当前版本)。
我不太确定这样做的最佳策略是什么。当然,使用了诸如表单或 esi 之类的迁移关键特性 :)
您有什么建议/经验可以分享吗?将不胜感激:)
谢谢, 斯蒂芬
【问题讨论】:
每个新版本都附带一个更新 UPGRADE-2.x.md 文件,其中包含将您的应用程序从之前的版本转换的所有说明。
我也必须在我的项目中这样做,我发现逐步方法更自然且更易于管理。事实上,没有像 UPGRADE-2.0-to-2.4.md 这样的文件可以帮助您直接转换到 2.4。
我首先建议确保您的代码没有使用 Symfony 2.0 的过时功能(但不确定此版本中是否有弃用的部分),因为这些可以在更高版本中删除并且不会包含在升级文件。
如果您对核心 Symfony 代码进行过深入修改,您可能会发现需要进行一些未记录的修改。例如,我的项目中有一个自定义错误处理程序,扩展了 Symfony 错误处理程序。好吧,虽然 UPGRADE 文件中没有记录,但 ErrorHandler::handle() 的签名已被修改,需要在我的自定义处理程序中更新。
同样,我不得不修改一些命名空间,因为文件已在框架代码中移动。
转换仍在进行中,I'm currently experiencing a weird error 我正在尝试摆脱:在自定义事件上注册的服务的“request”范围会在日志中生成错误。
【讨论】: