crate / crate/crate-dbal

Investigate whether CrateStatement should inherit from Doctrine\DBAL\Statement

Open
#150 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
PHP
Stars
16
Forks
10
PR merge metrics
No merged PRs in 30d

Description

## Context

During the Doctrine DBAL 3 upgrade in PR #122, the statement wrapping now involves three layers:
1. `Doctrine\DBAL\Statement` (outer)
2. `Crate\DBAL\Driver\PDOCrate\CrateStatement` (middle)
3. `Crate\PDO\PDOStatement` (inner)

## Investigation Request

Investigate whether `CrateStatement` should inherit from `Doctrine\DBAL\Statement` instead of the current composition-based approach to potentially simplify the wrapping architecture.

## References

- PR: https://github.com/crate/crate-dbal/pull/122
- Comment: https://github.com/crate/crate-dbal/pull/122#discussion_r2538583696
- Requested by: @amotl

> The issue documents the current three-layer statement wrapping architecture and requests investigation into whether inheritance could simplify this design.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing PR #122 and its discussion, then trace the three statement layers named in the issue: Doctrine\DBAL\Statement, Crate\DBAL\Driver\PDOCrate\CrateStatement, and Crate\PDO\PDOStatement. Done means documenting whether inheritance is viable and recording the recommended wrapping architecture, with any relevant compatibility concerns.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend, database
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.