Skip to content

Feature - Reformatting for linting, format and analysis with Mago - #173

Closed
simon-mundy wants to merge 2 commits into
0.6.xfrom
qa/feature-src
Closed

Feature - Reformatting for linting, format and analysis with Mago#173
simon-mundy wants to merge 2 commits into
0.6.xfrom
qa/feature-src

Conversation

@simon-mundy

Copy link
Copy Markdown
Member

Stack created with GitHub Stacks CLIGive Feedback 💬

- Add @api to the Feature interfaces, both AbstractFeature bases,
  EventFeatureEventsInterface, EventFeature, GlobalAdapterFeature,
  MetadataFeature, SequenceFeature and TableGateway\Feature\FeatureSet
- Mark RowGatewayFeature, MasterSlaveFeature and TableGatewayEvent final
- Type the EventFeatureEventsInterface constants and both APPLY_HALT
- Add array shape docblocks to the FeatureSets, AbstractFeature::$sharedData,
  RowGatewayFeature::$constructorArguments and TableGatewayEvent::$params
- Declare TableGatewayEvent as an EventInterface implementation
- Correct AbstractTableGateway's @Property $table to the declared union and
  narrow TableGateway::__construct's $features docblock
- Register the AbstractFeature gateway setters as class initializers
- Drop the Feature entries from the analysis baselines
- Make EventFeature::$event non-nullable and assign it explicitly
- Resolve GlobalAdapterFeature::getStaticAdapter through a coalesce chain
  and throw when no adapter is registered
- Make MasterSlaveFeature::$masterSql nullable and throw when the gateway
  has no Sql instance or postInitialize has not run
- Throw in SequenceFeature when a statement yields no result, when the
  sequence returns no usable value and when an insert exposes no arrays
- Interpolate the SequenceFeature sequence statements and search insert
  columns strictly
- Resolve the MetadataFeature table through getTable(), throw when it is
  not a named table, and take the primary key with reset()
- Extract RowGatewayFeature::primaryKeyFromMetadata(), flatten the
  prototype branches and throw when the gateway has no named table
- Replace the deprecated setArrayObjectPrototype() calls with
  setRowPrototype()
@simon-mundy simon-mundy changed the title qa/feature src Feature - Reformatting for linting, format and analysis with Mago Aug 24, 2026
@codecov

codecov Bot commented Aug 24, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 80.21978% with 18 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/TableGateway/Feature/RowGatewayFeature.php 80.55% 7 Missing ⚠️
src/TableGateway/Feature/SequenceFeature.php 75.00% 5 Missing ⚠️
src/TableGateway/Feature/MasterSlaveFeature.php 55.55% 4 Missing ⚠️
src/TableGateway/Feature/MetadataFeature.php 89.47% 2 Missing ⚠️

📢 Thoughts on this report? Let us know!

@simon-mundy

Copy link
Copy Markdown
Member Author

Reopened as #174 from the fork (simon-mundy/phpdb). Branches for this campaign belong on the fork, not on this repository.

@simon-mundy
simon-mundy deleted the qa/feature-src branch August 24, 2026 00:28
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