❌

Normale weergave

v11.16.0

6 Maart 2026 om 14:54

⚠️ Potential Breaking Changes

Added support for a global draft version that is automatically available for all items when versioning is enabled (#26772) Low Risk
Backward Compatibility: If you have an existing version with the key draft and a custom name other than β€œDraft”, the display name will be standardized to β€œDraft” (i.e. transformed) to support the new global versioning feature. The version content and functionality remain unchanged.

Added field permission and version access checks to Visual Editor (#26772) Low Risk
The field access checks require an update of the @directus/visual-editing library to v2.0.0.

Fixed password reset sending emails to external auth provider users (#26627) Low Risk
requestPasswordReset now throws a Forbidden error for external auth provider users.

✨ New Features & Improvements

  • @directus/app
    • Added support for a global draft version that is automatically available for all items when versioning is enabled (#26772 by @formfcw)
    • Persisted table column widths to localStorage (#26767 by @HZooly)
    • Implemented RBAC for deployment module (#26683 by @gaetansenn)
    • Added field permission and version access checks to Visual Editor (#26772 by @formfcw)
    • Added image and PDF upload support to Directus AI Assistant with a provider adapter pattern for 3 major providers (#26722 by @bryantgillespie)
      (OpenAI, Anthropic, Gemini).
    • Added version support for visual editing in live preview (#26772 by @formfcw)
    • Supported provider webhooks for deployment real-time updates (#26683 by @gaetansenn)
    • Added version support to Visual Editor (#26772 by @formfcw)
  • @directus/api
    • Implemented RBAC for deployment module (#26683 by @gaetansenn)
    • Added lower_case_table_names support for mysql (#26736 by @licitdev)
    • Added image and PDF upload support to Directus AI Assistant with a provider adapter pattern for 3 major providers (#26722 by @bryantgillespie)
      (OpenAI, Anthropic, Gemini).
    • Supported provider webhooks for deployment real-time updates (#26683 by @gaetansenn)
    • Added JSON field selection support (#26500 by @br41nslug)
  • @directus/system-data
  • @directus/types
  • @directus/sdk
  • @directus/ai
    • Added image and PDF upload support to Directus AI Assistant with a provider adapter pattern for 3 major providers (#26722 by @bryantgillespie)
      (OpenAI, Anthropic, Gemini).
  • @directus/utils
    • Added image and PDF upload support to Directus AI Assistant with a provider adapter pattern for 3 major providers (#26722 by @bryantgillespie)
      (OpenAI, Anthropic, Gemini).
    • Added JSON field selection support (#26500 by @br41nslug)
  • @directus/constants
  • @directus/env

πŸ› Bug Fixes & Optimizations

  • @directus/app
    • Fixed v-select group click handler to respect item-level selectable property (#26650 by @alvarosabu)
    • Fixed license modal is not responsive on mobile screens (#26758 by @powerseed)
    • Fixed unsaved changes dialog showing collaborative variant when not in a collaborative session (#26713 by @formfcw)
    • Updated vue-split-panel dependency (#26709 by @HZooly)
    • Fixed datetime picker not closing after selecting a date (#26719 by @alvarosabu)
    • Added some missing translation keys for directus_settings and directus_roles. (#26744 by @powerseed)
    • Upgraded reka-ui to 2.8.2 for timefield two-digit hour fix (#26724 by @alvarosabu)
    • Fixed password reset sending emails to external auth provider users (#26627 by @dstockton)
    • Enabled β€œNavigate to Item” button for non-editable relational fields (#26711 by @HZooly)
    • Fixed auto-refresh on mobile by preserving sidebar state via Teleport (#26731 by @HZooly)
    • Fixed an issue where duplicated fields kept validation rules referencing the original field name. (#26602 by @vizzv)
    • Fixed drawer not scrolling to top when validation errors occur (#26741 by @robluton)
    • Fixed reset confirm state after flow error (#26803 by @HZooly)
    • Fixed performance degradation when editing forms with large GeoJSON geometry fields by using selective shallow cloning for geometry values. (#26560 by @alvarosabu)
    • Fixed extra tab stop in AI assistant header caused by a focusable VIcon inside VButton. (#26796 by @Mugesh13102001)
    • Guarded nav-bar and sidebar size stores against non-finite values (#26695 by @HZooly)
    • Added lower_case_table_names support for mysql (#26736 by @licitdev)
    • Fixed batch editing translations creating duplicate junction rows (#26597 by @HZooly)
    • Fixed block editor deleting blocks on save-and-stay (#26808 by @formfcw)
    • Fixed MIME type restriction for URL uploads and ensure file/s interfaces respect restricted URL uploads (#26691 by @AlexGaillard)
    • Fixed decimal and bigInteger display formatting (#26637 by @HZooly)
    • Add MIME type restriction option to select file/s interfaces (#26647 by @AlexGaillard)
    • Migrated large field selection requests to use the SDK (#26605 by @ComfortablyCoding)
    • Fixed tags interface not resolving variable strings in raw editor mode (#26739 by @HZooly)
    • Fixed Header interface spacing issue (#26786 by @LZylstra)
    • Fixed insightsStore.saveChanges to send requests only when the corresponding action array is non-empty (#26753 by @deepDiverPaul)
    • Constrained display template images in header bar to text line-height (#26680 by @HZooly)
    • Added Ask User Tool to AI Assistant (#26633 by @bryantgillespie)
  • @directus/api
    • Fixed MIME type restriction for URL uploads and ensure file/s interfaces respect restricted URL uploads (#26691 by @AlexGaillard)
    • Fixed filter rule type mismatch causing database error instead of returning INVALID_QUERY (#26629 by @dstockton)
    • Fixed IPTC metadata key casing in getMetadata so that description, title, and tags are correctly populated from IPTC data. (#26672 by @danielbuechele)
    • Replaced ip-matching dependency with node blocklist (#26806 by @br41nslug)
    • Fixed AI tool schema to not allow null for trigger and accountability fields in flow input validation. (#26763 by @rijkvanzanten)
    • Returned 500 Internal server error for permanent filesystem write failures instead of 503 service unavailable (#26761 by @aryanrichhariya1234-lang)
    • Bumped axios, rollup, basic-ftp, fast-xml-parser, serialize-javascript,nodemailer, vite, tar, minimatch, qs, undici, (#26787 by @br41nslug)
      axios-cache-interceptor dependencies
    • Add auth audit hook for tracking login attempts (#26702 by @AlexGaillard)
    • Fixed GraphQL groupBy with function field (#26706 by @ComfortablyCoding)
    • Prevented encrypted field decryption failures from crashing settings reads when the SECRET has changed. Fields that can't be decrypted now return null and log a warning instead of throwing. (#26764 by @bryantgillespie)
  • @directus/specs
    • Fixed password reset sending emails to external auth provider users (#26627 by @dstockton)

      :::notice
      requestPasswordReset now throws a Forbidden error for external auth provider users.
      :::

  • @directus/env
  • @directus/utils
  • @directus/sdk
    • Updated ReadProviderOutput type to include the label field (#26645 by @kheiner)

πŸ“¦ Published Versions

  • @directus/app@15.5.0
  • @directus/api@34.0.0
  • @directus/ai@1.2.0
  • @directus/composables@11.2.14
  • @directus/constants@14.2.0
  • create-directus-extension@11.0.30
  • @directus/env@5.6.0
  • @directus/extensions@3.0.20
  • @directus/extensions-registry@3.0.20
  • @directus/extensions-sdk@17.0.10
  • @directus/memory@3.1.3
  • @directus/pressure@3.0.18
  • @directus/schema-builder@0.0.15
  • @directus/specs@12.0.1
  • @directus/storage-driver-azure@12.0.18
  • @directus/storage-driver-cloudinary@12.0.18
  • @directus/storage-driver-gcs@12.0.18
  • @directus/storage-driver-s3@12.1.4
  • @directus/storage-driver-supabase@3.0.18
  • @directus/system-data@4.2.0
  • @directus/themes@1.2.5
  • @directus/types@14.3.0
  • @directus/utils@13.3.0
  • @directus/validation@2.0.18
  • @directus/sdk@21.2.0

  •  
❌