Skip to content

2.0.0-alpha.18

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 13 Oct 01:22
· 29 commits to main since this release
5624840

Breaking

  • RouteGenerator takes a ValidatorInterface (#433)
  • A page's uiComponent is stored as the full component name, CwaPage<Name>: a POST or PATCH sending the short name (PrimaryPageTemplate, as the admin's page modals do) stores and returns CwaPagePrimaryPageTemplate, so pages written through the API and through CwaFixtureBuilder agree and generate-fixtures reloads them unchanged. Layouts are unchanged. Upgrade step: run silverback:api-components:prefix-page-ui-components once to prefix pages already stored with the short name; it is safe to run again (#431)

Fixed

  • POST /_/routes/generate is a 422 with a path violation, and creates nothing, when the parent's path and the title slug together are longer than 255 characters; RouteGenerator::create() throws the same ValidationException for fixtures. PATCH /_/routes/{id} with cascadeChildPaths checks every descendant's new path before writing anything, so a rename that would push one over 255 characters is a 422 naming that descendant instead of a 500 after the route and part of the tree were already moved. A cascade to a path under the route's own path no longer recurses without end when an unrouted child page loops back to it (#433)
  • A value longer than its VARCHAR(255) column (a page's title or metaDescription, any reference, uiComponent, route path/name, component position pageDataProperty/pageDataClass, site config key, form formType, collection resourceIri, user username/emailAddress/newEmailAddress) is a 422 with a field violation instead of a 500 from MySQL or PostgreSQL (#430)
  • A PUT to a user resource updates only the fields it sends. API Platform's default standard_put (on 4.x and 5.x) built a new user from the body, so a PUT returned 200 after blanking the password hash and resetting roles, enabled and email verification, or failed with 422/500 when it sent no email address. The bundle sets standard_put: false on every Put of an AbstractUser resource (#429)
  • CwaFixtureBuilder creates the groups of components declared inside a nested() closure, with their positions, so a scaffold generated from a site with nested pages no longer reloads those pages emptied below their first component (#428)