Skip to content

Use the PHP-DDL for the WCFSetup#6607

Merged
dtdesign merged 10 commits into6.3from
63-install-sql-ddl
Feb 27, 2026
Merged

Use the PHP-DDL for the WCFSetup#6607
dtdesign merged 10 commits into6.3from
63-install-sql-ddl

Conversation

@dtdesign
Copy link
Member

This PR does a few things:

  1. Migrate the table creation from the legacy install.sql to the PHP-DDL to keep it in sync with all other packages.
  2. Deprecate the SQLParser and sql-PIP in favor of the PHP-DDL.
  3. Optimize the performance of DatabaseTableChangeProcessor and add an option to efficiently and conveniently call it programmatically.
  4. Use the install.sql to keep the basic INSERT statements around but execute them directly without parsing them.

BurntimeX and others added 9 commits February 27, 2026 12:40
There are currently some awful hacks like the creation of the SQL log ahead of time and the insertion of the `wcf1_package` row for the core itself to satisfy the foreign key checks.

Also, the PHP-DDL is horribly slow at this time, easily taking 2 minutes to bootstrap the database vs. about 20 seconds before.
This was previously fetched twice for each table.
Allow passing of table data to the `process()` method while preserving the non-stale cached table structure between invocations.
This check will no longer pass.
@dtdesign dtdesign requested a review from BurntimeX February 27, 2026 11:52
Copy link
Member

@BurntimeX BurntimeX left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dtdesign dtdesign merged commit 771b8be into 6.3 Feb 27, 2026
8 checks passed
@dtdesign dtdesign deleted the 63-install-sql-ddl branch February 27, 2026 12:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants