Skip to content

v3.4.0

Choose a tag to compare

@lehni lehni released this 09 Oct 23:14
· 575 commits to main since this release

Behavior changes

  • server: Unrelating an empty one-to-one relation (DELETE on a belongsTo relation without a related row) now responds with 404, like hasOne relations do, instead of { count: 1 }.
  • admin: Applying the link dialog of markup fields without a URL now removes the link.

Features

  • admin: nodes.heading: true enables all six heading levels in markup fields, both in the editor and in its buttons.

Fixes

  • server: Boolean JSON schemas (true / false) are returned unconverted, cached definitions are only merged when there are any, and combining formats no longer adds an empty format to allOf.
  • server: With allowedImports, importing files without a URL (from storages without url) is rejected instead of throwing.
  • admin: Forms nested in views find their data in views without resources, and in views with several components.
  • admin: Navigating from an item to the create route of the same form sets up a new item instead of keeping the loaded one.
  • admin: Async events emitted to callbacks registered with once() reach all callbacks.
  • admin: Pasting several paragraphs, lists or quotes into single-line markup fields inserts them as one line with breaks.
  • admin: Request errors without a message are reported without details, and invalid views or menu items throw a clear error.

Internal

  • Test coverage is at 99.9% of lines and 99% of branches; Dito's own tests no longer depend on the e2e tests of applications.
  • Code that is unreachable through Dito's own control flow is removed.