The JSchemaChange*
API and its schema validation right now relies on the update SQL files to ensure the database is in an expected state. This API cannot work with a base SQL file which should have the full schema (for an extension this would be their install.sql
type files, for core this would be joomla.sql
).
Core cannot use joomla.sql
for validation because it mixes data and schema, and this SQL lives only in the installation directory so it is not persistent on a site.
Therefore, I propose several things if someone can find time and interest:
- Splitting
joomla.sql
into the base schema itself and data statements
- Moving the schema only version of
joomla.sql
to a location that persists on a site
- Improving the schema validation API to be able to take into consideration a base schema file in addition to change deltas as a means for validating the schema is in an expected state
Propose moving the joomla db schema part to
/administrator/components/com_admin/install/<dbdriver>/schema.sql