chore: release wordpress 1.3.0#21
Merged
Merged
Conversation
The PSR-3 logger writes to PHP's built-in error_log(); the new name states its destination explicitly. No proxy/alias is kept. BREAKING CHANGE: the @api class Middag\WordPress\Logging\ErrorLogLogger is renamed to Middag\WordPress\Logging\PhpErrorLogLogger with no BC alias. Consumers instantiating the old class must update the reference.
Relocate the FieldType enum to Middag\WordPress\Settings\Enum, matching the existing Enum-subfolder convention (cf. Framework Database\Enum\Capability). Update the DSL (Field), renderer (FieldRenderer) and all Settings tests to import from the new namespace. No BC alias for the moved symbol (no-alias phase).
…l contract Remove the PageContractNormalizer class and the automatic normalization call in InertiaAdapter::resolveProps(). The adapter now forwards the `contract` prop verbatim and accepts ONLY the canonical @middag-io/react PageContract; legacy contract shapes are no longer silently migrated to the new schema. The normalization is not moved to a helper — the intent is to eliminate silent acceptance of the old schema. A legacy contract is forwarded unchanged so the frontend rejects it, instead of being rewritten on the server. Tests: delete PageContractNormalizerTest; update the coverage test to assert canonical passthrough and add a case proving a legacy contract is NOT silently normalized (admin/badge/currentPage/emptyMessage survive verbatim). BREAKING CHANGE: Http\Inertia\PageContractNormalizer is removed and InertiaAdapter no longer normalizes the `contract` prop. Callers must pass the canonical PageContract shape directly.
The blocked items (coverage guards, exit seams, R1 roadmap) are tracked in the workspace tracker now; git history keeps the full details.
…l test PhpErrorLogLogger is the zero-dependency error_log fallback, not the canonical logging path. The canonical WooCommerce-like channel path is the framework LoggerFactory::forChannel(module, channel) primed once at boot via LogSupport::primeFromContainer(). Docblocks on both sides now say so, and a new test proves a custom (module, channel) tuple flows from the factory to the rotating file handler's on-disk destination. No code path removed (LB-WP-STRUCT-01 rescope).
Apply D-ENUM-CASING (2026-07-08): this lib's own enum (FieldType) already conformed; the change updates the two call-sites of the renamed framework Database Capability cases (TRANSACTIONS -> Transactions, ...) and adds tests/Architecture/EnumCasePascalCaseTest.php guarding every enum under src/ (PascalCase + at-least-one-lowercase, rejects ALLCAPS). BREAKING CHANGE: requires middag-io/framework with PascalCase enum cases.
The adapter references the PascalCase enum cases (D-ENUM-CASING) that shipped in framework 1.6.0; older minors miss the renamed cases and fail at constant resolution.
Release-As: 1.3.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merge develop into main for the 1.3.0 release.
Highlights since 1.2.0:
Version pinned to 1.3.0 via
Release-Asfooter per the family 1.x policy (breaking changes ride deliberate minors during 1.x).