Skip to content

Released SQLite wpdb facade is incompatible with canonical MDI query results #162

Closed

Description

@chubes4

Problem

MDI v0.8.8 now loads successfully with Studio SQLite Integration 3.0.0-rc.6, but the canonical driver migration in #150 changed WP_Markdown_Driver::query() to return PDOStatement. The released WP_SQLite_DB still consumes the deprecated facade contract:

  • SELECT queries must return fetched row arrays.
  • DML queries must expose get_last_return_value().
  • WP_SQLite_DB::query() uses those values to populate last_result, num_rows, and rows_affected.

Live bootstrap now reaches init and fatals:

Fatal error: Call to undefined method WP_Markdown_Driver::get_last_return_value()
.../sqlite-database-integration/wp-includes/sqlite/class-wp-sqlite-db.php:438

Before init, WordPress also reports the site as uninstalled because SELECT statements are not materialized into the array shape that released WP_SQLite_DB expects.

Expected

MDI should preserve canonical PDO internals while adapting query results to the released WP_SQLite_DB facade when running against the pre-rename WP_PDO_MySQL_On_SQLite class. The renamed trunk path must retain PDO statement behavior. Coverage must prove SELECT rows, DML affected-row values, and MDI internal callers across both surfaces.

Evidence

  • MDI v0.8.8 released and deployed
  • SQLite Integration 3.0.0-rc.6
  • Active previous drop-in now passes class loading through the v0.8.8 alias
  • studio wp core is-installed --debug captures the get_last_return_value() fatal
  • Released WP_SQLite_DB reads get_last_return_value() at line 438 and only recognizes array SELECT results at lines 450-453

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions