Skip to content

refactor: require pollora/attributes instead of shipping the attributes - #463

Merged
ogorzalka merged 1 commit into
release/v13.36.0from
feat/require-attributes-package
Oct 12, 2026
Merged

ogorzalka merged 1 commit into
release/v13.36.0from
feat/require-attributes-package

Conversation

@ogorzalka

Copy link
Copy Markdown
Member

Second step of the pollora/attributes extraction, after #462. The attributes now come from pollora/attributes (v0.1.0), which the framework requires as ^0.1 || ^1.0. No class name changes.

What moves

  • src/Attributes/* (112 files) and the value types the attributes take: Pollora\Schedule\Every, Interval, Pollora\Role\Domain\Enums\Access, Pollora\Meta\Domain\Enums\Control, Pollora\BlockBinding\Domain\Enums\BindingFieldType. The package declares these under their exact namespaces; Composer still finds the framework's other classes of those namespaces in src/.
  • 9 tests that only touch attributes (HookTest, PostTypeAttributeTest, PostTypeSubAttributesTest, ScheduleTest, TaxonomySubAttributesTest, NamingTest, ArchitectureTest, EveryTest, IntervalTest), now in the package with a test of what each attribute contributes.

What stays

  • The two deprecated bases, PostTypeAttribute and TaxonomyAttribute (they need the framework's interfaces), and every discovery that reads the attributes.
  • #[SkipDiscovery] stays in pollora/discovery. pollora/attributes requires pollora/ajax and pollora/abilities for AjaxAccess and Behaviour; both depend on PHP alone.
  • SlugTest added: Pollora\Support\Slug delegates to the package's naming helper, whose parity test moved with it.

Checks

Against the package as a path repository: 1878 tests (1975 before, 97 moved to the package, which runs 114), PHPStan 0, type coverage 99.1 %.

CI needs pollora/attributes on Packagist to install; it is re-run once the package is indexed.

@ogorzalka
ogorzalka merged commit 631525f into release/v13.36.0 Oct 12, 2026
15 of 18 checks passed
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