dfd4e77adeee06e35b3d2b5fcd86a2224b1b2751
2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
8a85370e32 |
fix(installer): drop legacy remote columns in PHP, not PREPARE-based SQL
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 34s
02.56.01.sql used PREPARE/EXECUTE/DEALLOCATE to conditionally drop the 26 legacy remote_storage/ftp_*/sftp_*/gdrive_*/s3_* columns portably. Joomla's installer rejects those statements on MySQL 8 (error 1295: "This command is not supported in the prepared statement protocol yet"), aborting the whole component install when updating from an old schema. Neutralize 02.56.01.sql (now a no-op comment) and move the purge into Pkg_MokoSuiteBackupInstallerScript::dropLegacyRemoteColumns(): gate on INFORMATION_SCHEMA, then issue one plain ALTER dropping only the columns that still exist — portable on MariaDB and MySQL 8, idempotent, non-fatal. Claude-Session: https://claude.ai/code/session_01WbGBN9VyRK61zczYWcCQ2i |
||
|
|
6a62868881 |
fix(sql): purge stranded legacy remote-storage columns (MySQL 8 safe)
Universal: PR Check / Branch Policy (pull_request) Successful in 2s
Joomla: Extension CI / Release Readiness Check (pull_request) Failing after 8s
Universal: PR Check / Secret Scan (pull_request) Successful in 9s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 34s
Universal: PR Check / Validate PR (pull_request) Failing after 15s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 2s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Successful in 15s
Universal: Build & Release / Promote to RC (pull_request) Failing after 17s
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
Generic: Project CI / Lint & Validate (pull_request) Successful in 1m2s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 1m6s
Generic: Project CI / Tests (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Joomla: Extension CI / Build RC Pre-Release (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
Generic: Repo Health / Scripts governance (pull_request) Has been cancelled
Generic: Repo Health / Repository health (pull_request) Has been cancelled
Generic: Repo Health / Report: Scripts Governance (pull_request) Has been cancelled
Generic: Repo Health / Report: Repository Health (pull_request) Has been cancelled
02.52.25.sql used `DROP COLUMN IF EXISTS` (MariaDB-only), which errors on Oracle MySQL 8.x — so on MySQL 8 installs the 26 legacy remote_storage/ftp_*/ sftp_*/gdrive_*/s3_* columns were never dropped, yet Joomla recorded the schema as applied (confirmed on suite.dev: MySQL 8.0.41, all 26 columns still present, 0 profiles with legacy remote data). New 02.56.01 migration removes them portably: an INFORMATION_SCHEMA-gated prepared-statement ALTER that drops all 26 columns where present (plain DROP COLUMN, valid on MySQL 8 + MariaDB) and is a no-op where already gone (so it's safe on already-migrated installs too). Validated non-destructively against suite.dev (gate=1, ALTER PREPAREs cleanly). Claude-Session: https://claude.ai/code/session_01WbGBN9VyRK61zczYWcCQ2i |