The updates can introduce backward compatibility breaks for the extensions.
Per example 3.1.0-RC2 introduces a new abstraction layer for the database layer represented by a new interface
\phpbb\db\driver\driver_interface
which has to be used instead of the abstract driver class \phpbb\db\driver\driver
. With this update all the extensions which need the database driver to work were broken. And any board having one of these extension enabled was inaccessible (a PHP error was displayed).Proposal
Disable the extensions during the update.
But there is a few questions about this:
- Does we want to disabled the extensions during the update?
- If yes, should it be done only for the automatic updater?
- Should these extensions have a special status saying they were disabled by the updater?
- The board can not be broken during the update process, so the admin can not think that his board was broken by the core.
- To complete...
- In 3.0.x the MODs are not disabled during the update.
- The admin can still broke his board by re-enabling the broken extension (he can't really know that the extension is broken).
- When disabling the extension we can lose some config settings (ie: the default captcha) which will not be restored when the extension will be enabled again.
- To complete...