@@ -19,6 +19,11 @@ It is a monorepo that includes the following components:
1919- ** WordPress plugin** — A plugin that adds SQLite support to WordPress.
2020- ** Test suites** — A set of extensive test suites to cover MySQL syntax and functionality.
2121
22+ The monorepo packages are placed under the ` packages ` directory.
23+
24+ The WordPress plugin links the SQLite driver using a symlink. The build script
25+ replaces the symlink with a copy of the driver for release.
26+
2227The codebase is pure PHP with zero dependencies. It supports PHP 7.2 through 8.5,
2328MySQL syntax from version 5.7 onward, and requires SQLite 3.37.0 or newer
2429(with legacy mode down to 3.27.0).
@@ -40,8 +45,15 @@ The following commands are useful for development and testing:
4045composer install # Install dependencies
4146composer run check-cs # Check coding standards (PHPCS)
4247composer run fix-cs # Auto-fix coding standards (PHPCBF)
48+ composer run build # Build the plugin zip
4349
44- # Tests
50+ # SQLite driver tests (under packages/mysql-on-sqlite)
51+ cd packages/mysql-on-sqlite
52+ composer run test # Run unit tests
53+ composer run test tests/SomeTest.php # Run specific unit test file
54+ composer run test -- --filter testName # Run specific unit test class/method
55+
56+ # SQLite Database Integration plugin tests
4557composer run test # Run unit tests
4658composer run test tests/SomeTest.php # Run specific unit test file
4759composer run test -- --filter testName # Run specific unit test class/method
@@ -56,6 +68,20 @@ composer run wp-test-e2e # Run WordPress E2E tests (Playwright)
5668composer run wp-test-clean # Clean up WordPress environment (Docker and DB)
5769```
5870
71+ ## Release workflow
72+ Release is automated with GitHub Actions. It requires only two manual steps:
73+
74+ 1 . ** Create a draft release with a new tag and changelog.**
75+ The ` release-prepare ` workflow will automatically:
76+ - Use the draft tag to bump versions in ` version.php ` , ` load.php ` , and ` readme.txt ` .
77+ - Add the draft release changelog entry to ` readme.txt ` .
78+ - Build the plugin ZIP and attach it to the draft release.
79+ - Create a PR (` release/<version> ` → ` trunk ` ) and link it in the draft release body.
80+ 2 . ** Review and merge the PR.**
81+ The ` release-publish ` workflow will automatically:
82+ - Publish the draft release.
83+ - Publish the release artifact to WordPress.org.
84+
5985## Architecture
6086The project consists of multiple components providing different APIs that funnel
6187into the SQLite driver to support diverse use cases both inside and outside the
0 commit comments