WordPress’ Performance Team is working on unbundling the Performance Lab plugin after feedback from Matt Mullenweg who requested large features become their own community plugins with the possibility of becoming canonical plugins. As part of this effort, the new SQLite database integration is now available for testing as a standalone plugin.
Yoast-sponsored contributor Ari Stathopoulos, who is leading the initiative to develop the SQLite implementation, requests that hosting companies, plugin developers, and theme authors test the plugin. Contributors are aiming to put it on track to become a canonical plugin and eventually merge the SQLite implementation into WordPress Core in a future release.
Stathopoulos updated the call for testing with instructions for how to test the standalone plugin. This is not something that should be tested in production. After activating the plugin, users can just follow the instructions on the screen to install the SQLite database.
When testing I found that I had to delete the wp-content/db.php file in order to get the plugin to install, because it displayed the following error:
The SQLite plugin cannot be activated because a different
wp-content/db.phpdrop-in already exists.
After clicking the Install button, the plugin takes you to the familiar WordPress install screen where you select the language and enter the site name and password.
In the testing instructions, Stathopoulos noted that the plugin will create a fresh database and no content will be migrated from the original database. The old database will remain and if the plugin is deactivated the site will go back to using MySQL. Stathopoulos explained why users will not see content from their old database when the new one is active:
The SQLite implementation does not include a way to migrate data from one database to another. Since this is a proposal for an implementation to be merged in WordPress Core, we need to follow the WordPress Core principles. Data migration is not something that Core should do; it is clearly plugin territory. Your data remains safely in your previous database, and you can access it again by disabling the SQLite module.
When SQLite gets merged in Core, migration and backup plugins will add support for it.
The repository for the SQLite Database Integration plugin has been moved to the WordPress organization on GitHub and testers can offer feedback there.
Results of the vote on the best approach to unbundling the Performance Lab plugin indicate that contributors are more in favor of keeping the Performance Lab plugin as is, but additionally deploying modules as individual plugins (32 votes) versus the alternative of making PL a wrapper focused on central infrastructure and recommendation of individual plugins (10 votes).
It’s possible the SQLite Integration Plugin may accessed as an independent module or recommended through the Performance Lab plugin in some way in the future, but it’s not yet been decided. Once a path forward is formalized, it will be more clear how the Performance Lab’s new structure will affect the standalone SQLite integration plugin.