Skip to content

feat(transaction): compose PDO transactions for v1.3.0 - #21

Merged
megyptm merged 1 commit into
mainfrom
codex/transaction-composition-draft
Sep 10, 2026
Merged

megyptm merged 1 commit into
mainfrom
codex/transaction-composition-draft

Conversation

@megyptm

@megyptm megyptm commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add TransactionRunnerInterface and PdoTransactionRunner with explicit transaction ownership and composition semantics.
  • Keep PDO hidden inside the implementation; consumers depend on run(callable $callback): mixed.
  • Make ScopedOrderingManager::moveWithinScope() participate in caller-owned transactions while preserving ordering, locking, timestamps, soft-delete, nullable-scope, and failure behavior.
  • Retain OrderingTransactionException as a public, autoloadable, deprecated 1.x compatibility class without using it in the new transaction flow.
  • Include unit, regression, and Real MySQL integration coverage.

Verification

  • Unit: PASS — 241 tests, 379 assertions
  • Regression: PASS — 37 tests, 515 assertions
  • PHPStan, syntax, code style, Composer validation, platform checks, and audit: PASS
  • Real MySQL 8.4.10 integration and full suite: PASS on PHP 8.2 and PHP 8.5
  • Lowest dependencies, PHP 8.2–8.5 matrix, residue verification, workflow lint, and CI Gate: PASS
  • Final CI run: https://github.com/Maatify/persistence/actions/runs/34453695327

Release readiness

  • CHANGELOG.md is prepared for v1.3.0 dated 2026-09-10, with correct compare links.
  • README and composer.json describe Ordering, Transactions, and Pagination.
  • Historical capability documentation is aligned with the released v1.2.0 Ordering and v1.1.0 Pagination capabilities.
  • No tag or GitHub Release has been created.
  • After this PR is merged, only creating the v1.3.0 tag and GitHub Release remains.

* feat(transaction): add composable PDO transaction runner

* fix(transaction): hide PDO behind runner implementation

* fix(api): restore deprecated ordering transaction exception

* chore(release): prepare v1.3.0 metadata

* docs(release): refresh historical capability statuses
@megyptm megyptm changed the title feat(transaction): compose PDO transactions feat(transaction): compose PDO transactions for v1.3.0 Sep 10, 2026
@megyptm
megyptm merged commit 60a5cad into main Sep 10, 2026
10 checks passed
@megyptm
megyptm deleted the codex/transaction-composition-draft branch September 10, 2026 08:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant