Releases: directus/directus
v10.0.0
In v10.0.0, Directus is adopting BSL 1.1 — with additional usage grants added in to keep the platform open and available. For nearly all of our community, today’s announcement won’t change a thing, but licenses can be intimidating, so let’s highlight the key points below:
- All Directus source code will still be open and available on GitHub
- Non-production use of Directus is still completely free for everyone
- Production use of Directus is still completely free for nearly all users
- Everyone can still use the entire Directus platform for free… unless you (your legal entity) exceed $5,000,000 USD in “total finances” per year
- Code released under this new license converts to GPLv3 (OSS) after 3 years
Massive thanks to everybody who chimed in on the discussion in https://github.com/directus/directus/discussions/17977 and on Discord ❤️
For more information, please see our blog post and FAQ.
List of all the license updates below:
Package | New License |
---|---|
directus |
BSL 1.1 |
@directus/api |
BSL 1.1 |
@directus/app |
BSL 1.1 |
@directus/composables |
MIT |
@directus/constants |
MIT |
@directus/create-directus-extension |
MIT |
@directus/exceptions |
MIT |
@directus/extensions-sdk |
MIT |
@directus/schema |
BSL 1.1 |
@directus/specs |
BSL 1.1 |
@directus/storage |
BSL 1.1 |
@directus/storage-driver-azure |
BSL 1.1 |
@directus/storage-driver-cloudinary |
BSL 1.1 |
@directus/storage-driver-gcs |
BSL 1.1 |
@directus/storage-driver-local |
BSL 1.1 |
@directus/storage-driver-s3 |
BSL 1.1 |
@directus/types |
MIT |
@directus/update-check |
MIT |
@directus/utils |
MIT |
v9.26.0
v9.26.0 (April 24, 2023)
✨ New Features
- API
- #15829 [Feat] Flow: Add Mail Templates (by @JonathanSchndr)
- App
- #15829 [Feat] Flow: Add Mail Templates (by @JonathanSchndr)
🚀 Improvements
- API
- #18303 Schema cache auto-purge (by @br41nslug)
- App
- #18284 Only show tooltips when sidebar is not open (by @azrikahar)
- #16373 Improve Permissions in relational Interfaces (by @Nitwel)
- Misc.
🐛 Bug Fixes
- App
- API
🧽 Optimizations
- App
- #18294 Move formatted-json-value to script[setup] (by @rijkvanzanten)
- #18292 Move file display to script[setup] (by @rijkvanzanten)
- #18291 Move color display to script[setup] (by @rijkvanzanten)
- #18290 Move collection display to script[setup] (by @rijkvanzanten)
- #18289 Move app.vue to script[setup] (by @rijkvanzanten)
📝 Documentation
- #18276 Update the docs on how to install additional packages in docker (by @paescuj)
- #18270 Edit docs about minimum app permissions for clarity (by @danielduckworth)
- #18264 Remove misleading contents migration docs for now (by @paescuj)
📦 Dependency Updates
- #18274 updated vm2 (by @br41nslug)
- #18260 Patch Tuesday 🐸 (by @paescuj)
v9.25.2
v9.25.2 (April 20, 2023)
🚀 Improvements
- App
- #18256 Fall back to "other" group if interface has none (by @nickrum)
- #18242 Use filled star for required asterisks & rating display (by @azrikahar)
- #18226 Add comment about sorting of available languages & add Spanish (Mexico) (by @paescuj)
- #18200 Add loader to logs-siderbar-detail (by @hanneskuettner)
- #18160 Add select all option for export (by @jaads)
- #15733 Add possibility of sorting items in tabular view of o2m interface (by @d1rOn)
- API
- #18238 Remove cache flushing on startup (by @rijkvanzanten)
- #18229 Vary on accept when auto converting assets (#18228) (by @bicouy0)
🐛 Bug Fixes
- App
- #18266 Fix wrong drawer opens when editing fields in data model (by @Nitwel)
- #18196 Fix m2a/m2a/o2m sorting (by @hanneskuettner)
- #18194 Prevent duplicate emit from CodeMirror editors (by @hanneskuettner)
- #18193 Rename
system-field[-tree]
collection
prop tocollectionName
(by @hanneskuettner) - #18185 Fix Material Symbols in timycme & mapbox (by @hanneskuettner)
- #18027 Add
autoKey
to interface config (by @hanneskuettner)
- API
- #18257 Fix extension reloading (by @nickrum)
- #18235 Don't fail on
?format=auto
without accept header (by @rijkvanzanten) - #18188 Fix .default is not a function errors (by @azrikahar)
- Extensions
- #18202 Use import.meta.url instead of __dirname (by @hanneskuettner)
- #18180 Adjust paths in extensions-sdk & publish composables types (by @paescuj)
- cli
- #18187 Fix
npm init directus-extension
(by @azrikahar)
- #18187 Fix
🧽 Optimizations
- Misc.
- #18249 Fix a few dev mode warnings (by @hanneskuettner)
- #18211 Publish all types from packages/* (by @hanneskuettner)
- #18198 Last eslint tweak (by @rijkvanzanten)
- #18197 White space rules (by @rijkvanzanten)
- #18164 Get Directus version directly via filesystem from
directus
package (by @paescuj)
- API
- #18241 Fix Action enum import in use-revisions composable (by @azrikahar)
- App
- #18199 Change translation display userLanguage option default value to proper boolean (by @hanneskuettner)
📝 Documentation
- #18195 Renamed variable for brevity (by @akshay-sood)
- #18190 Updating the Information Architecture of Docs (by @phazonoverload)
v9.25.1
Resolve deployment version number mismatch in docker build
v9.25.0
⚠️ Potential Breaking Change(s)
In this one, we've updated the API codebase from CJS to ESM. From our testing, this should be backwards compatible with API-extensions created with the extensions-sdk. However, due to the finicky nature of this change in Node, please do make sure to test your extensions before updating to this version. If you're running into ESM-CJS import issues, try renaming your extension output to .cjs
instead of .js
or bundle it to native ESM.
✨ New Features
- API
🚀 Improvements
- API
- #18167 Only show message on just request/exec flow operations (by @connorsimply)
- #18166 fix: Use Cloudinary explicit endpoint (by @jbmolle)
- #18154 Load Bundle Extension Types for local development (by @that1matt)
- #18147 Resend user invites (by @david-zacharias)
- #18084 serve rollup output chunks (by @bicouy0)
- #18080 Handle webhook request errors correctly (by @paescuj)
- #18010 Fix status on shutdown (by @Nitwel)
- #18009 Fix missing payload.iss when authorization_response_iss_parameter_supported OpenID metadata is true (by @Romakita)
- #17535 Add max batch mutation (by @licitdev)
- App
- #18156 New Crowdin updates (by @rijkvanzanten)
- #18153 [Take 2] Register in Vue app for relational interface extensions (by @JoshTheDerf)
- #18135 Translation dialogs: make fields full width / multiline (by @denkhaus)
- #18130 Improve error message on failed import (by @rijkvanzanten)
- #18118 Add items.sort to flow trigger events (by @rijkvanzanten)
⚠️ #18107 Upgrade tinymce (by @rijkvanzanten)- #18035 throw an error on invalid file upload (by @br41nslug)
- #18004 Migrate to Material Symbols (by @hanneskuettner)
- #17961 Add info about dependencies when deleting collection (by @Nitwel)
- #16566 Enhance bug reporting from within the app (by @paescuj)
- #15806 If undefined collection, use item as relative url (by @u12206050)
🐛 Bug Fixes
- API
- #18143 Use lodash
set
to format error (by @rijkvanzanten) - #18137 Fix updating payload on request.error filter (by @rijkvanzanten)
- #18101 Fix falsy default values when reading singleton collection (by @azrikahar)
- #18066 Go back to
tsx
forapi
scripts for Windows compatibility (by @br41nslug) - #18048 Fix diff validation and apply (by @azrikahar)
- #18010 Fix status on shutdown (by @Nitwel)
- #18001 Fix too many SQL Variables (by @Nitwel)
- #17927 Block refresh token of suspended users (by @diegoleme)
- #16711 Users: Verify JWT on accept invitation (by @joselcvarela)
- #18143 Use lodash
- Misc.
- #18082 Windows compatibility for running migrations (by @br41nslug)
- App
- #17984 Fix sort icons (by @Nitwel)
- #17959 Load relational data from api on button-links (by @Nitwel)
- #17939 O auth login is ignoring the redirect url (by @Paiman-Rasoli)
- #17926 Fix dark theme color for emoji picker (by @azrikahar)
- #17925 Refresh current user for Save and Stay action (by @azrikahar)
- #17850 Make headers sticky again (by @Nitwel)
- #17819 Fix rehydrating cache after flow save (by @Nitwel)
- #17799 Fix tabular headers (by @Nitwel)
- #17790 Disallow selecting singletons (by @Nitwel)
- #15710 Fix default values (by @Nitwel)
🧽 Optimizations
- Misc.
⚠️ #18134 Introduce newdirectus
wrapper package (by @paescuj)- #18127 Add missing typescript devDep to composables (by @paescuj)
- #18126 Move activity Action enum from types to constants package (by @licitdev)
- #18122 Blackbox tests restructuring (by @paescuj)
- #18106 Don't clear terminal screen on dev mode (by @rijkvanzanten)
- #18099 Only create CLA message if there are actually missing contributors returned (by @paescuj)
- #18093 Clean-up configs (by @paescuj)
- #18086 Remove double bracket from CLA message (by @licitdev)
- #18063 Add workflow for docs spellchecker (by @paescuj)
- #18052 Move docs to monorepo (by @rijkvanzanten)
- API
⚠️ #18014 The Great TypeScript Modernization Program Season 3 Episode 6: The Big One (by @rijkvanzanten)
- App
- #17646 use DEFAULT_AUTH_DRIVER constant instead of hardcoded string (by @azrikahar)
📝 Documentation
- #18152 Clarify SMTP configs (client / server) (by @paescuj)
- #18140 Give the docs package a little bit ❤️ (by @paescuj)
- #18133 Enhance local development setup instructions (by @that1matt)
- #18117 Fix warning block accessibility for dark theme (by @azrikahar)
- #18116 Remove wrong info that SAML metadata options can be URLs (by @paescuj)
- #18102 Small typo on configuration options page in docs (by @paescuj)
- #18073 Security in Headless CMS Guide (by @bryantgillespie)
- #18062 Removed link to field schema, which doesn't exist (by @phazonoverload)
📦 Dependency Updates
- #18162 security update in the vm2 dependency (by @br41nslug)
- #18119 Update keyv/redis (by @rijkvanzanten)
- #18112 Security update vm2 (by @br41nslug)
v9.24.0
v9.24.0 (April 4, 2023)
✨ New Features
- App
- #17603 Add optional confirmation dialog with input fields to Manual Trigger in Flows (by @rijkvanzanten)
🚀 Improvements
- App
- #18011 Add active state to file interface (by @azrikahar)
- #17958 Fix collection name on deselect in m2a relation (by @Nitwel)
- shared
🐛 Bug Fixes
- API
- #18032 add missing
.toString()
for password reset accept URL object (by @azrikahar) - #18029 Fix cache skipping when PUBLIC_URL is relative (by @licitdev)
- #17976 Only check for undefined and null (by @Nitwel)
- #17972 Do not override metadata (by @Nitwel)
- #17922 Add missing fields to GraphQL server info (by @azrikahar)
- #18032 add missing
- App
- #17957 Don't move files when folder can't be deleted (by @Nitwel)
- #17956 Properly apply query param to url (by @Nitwel)
- #17953 Only hide v-select options (by @Nitwel)
- #17891 Fix Save and Stay to refresh revisions detail for roles and webhooks (by @azrikahar)
- #17848 Don't set edits at start in List Panel (by @Nitwel)
- #17842 App: Fix saving required relational fields (by @joselcvarela)
- #17746 Fix sorting in m2m table (by @Nitwel)
🧽 Optimizations
- Misc.
- #17993 Use pnpm 8.1.0, define version via
packageManager
field, clean-up other version definitions (by @paescuj) - #17979 Upgrade pnpm to 8 (by @rijkvanzanten)
- #17965 Dockerfile Improvements (by @wrynegade)
- #17933 Make final docker image lighter (by @rijkvanzanten)
- #17993 Use pnpm 8.1.0, define version via
- API
- #17935 TS Config Modernization Program Part 5 (by @rijkvanzanten)
- #17934 TS Config Modernization Program Part 4 of almost done (by @rijkvanzanten)
Directus v9.24.0
v9.23.4
v9.23.4 (March 24, 2023)
⚠️ Potential Breaking Changes
The output type of the expires
property in GraphQL's auth login / refresh is now a string (BigInt) representation.
🐛 Bug Fixes
- API
- #17914 Fix cookie redaction in logs (by @br41nslug)
⚠️ #17908 Fix auth expires value larger than 32-bit integer for GraphQL (by @azrikahar)- #17903 Fixed _nempty operator (by @br41nslug)
🧽 Optimizations
- API
- #17904 TS Config Modernization Program Part 3 of many (by @rijkvanzanten)
- Misc.
⚠️ #17858 Simplify / improve release flow (by @rijkvanzanten)
v9.23.3
Fixes push to npm
v9.23.2
v9.23.2 (March 23, 2023)
🚀 Improvements
- App
- #17879 Declare
null
as valid value type for v-radio (by @paescuj) - #17852 Make tags interface more clear (by @Nitwel)
- #17833 Make default folder more clear (by @Nitwel)
- #17777 Use light primary border color for fields when they are inside groups (by @azrikahar)
- #17776 Tweak swatch button size & position in select-color interface (by @azrikahar)
- #17771 Require value in project settings' fields (by @azrikahar)
- #17732 Require value for dropdown choices (by @br41nslug)
- #17726 Fix margin on drawer item (by @Nitwel)
- #17637 Add required option to repeater fields (by @licitdev)
- #17191 Improve error handling for app extensions (by @azrikahar)
- #17879 Declare
- API
- #17763 Rework schema caching to use memory (by @licitdev)
⚠️ #17734 Improve assets performance (by @rijkvanzanten)- #17710 Only load defined fields in m2a (by @Nitwel)
- #17642 Add ability to limit requests from using the Cache-Control header to skip cache (by @azrikahar)
- #17562 Consolidate redis environment (by @br41nslug)
- #17296 Global rate limiter (by @br41nslug)
🐛 Bug Fixes
- API
- #17866 Fix built-in modules for flows exec operation (by @licitdev)
- #17847 Fix options being null (by @Nitwel)
- #17835 Improve S3 asset read performance (by @rijkvanzanten)
- #17744 Fix keep folder on reupload (by @Nitwel)
- #17729 Write full item to revisions (by @Nitwel)
- #17712 Include schema components in OAS (by @paescuj)
- #17665 Allow null for related_collection in applyJoiSchema (by @azrikahar)
- #17649 Sanitize query in updateByQuery and deleteByQuery (by @licitdev)
- #17519 Fix Flow Error Handling (by @connorsimply)
- App
- #17862 Fix archive field reactivity for new collection (by @azrikahar)
- #17861 use dbSafe inputs when creating optional system fields (by @azrikahar)
- #17834 Show search results for mapbox (by @Nitwel)
- #17830 Fix AllowList checking only when defined (by @Nitwel)
- #17816 Revert "Fix using alias fields function for non alias field" (by @Nitwel)
- #17815 Correctly assert i18n default messages (by @paescuj)
- #17785 Load flow directly from api (by @Nitwel)
- #17784 Allow blur events for m2o dropdown (by @br41nslug)
- #17783 App: Allow to select checkbox entry when children is
null
(by @joselcvarela) - #17778 Fix translations setting primary key and request spamming (by @Nitwel)
- #17756 Handle server hydration errors on first load (by @azrikahar)
- #17742 Fix using alias fields function for non alias field (by @Nitwel)
- #17739 Fix delete and quit opening save changes drawer (by @Nitwel)
- #17725 Only show context menu for collections (by @Nitwel)
- #17714 Add root path to module bar images (by @licitdev)
- #17678 Fix permission check for manual sort for full access (by @paescuj)
- #17423 Show validation errors in drawer-item (by @Nitwel)
- #17395 Fix loading all fields (by @Nitwel)
- Misc.
🧽 Optimizations
- API
- #17889 TSConfig Modernization part 2: Enable non-breaking flags (by @rijkvanzanten)
- #17887 TSConfig Modernization: Set importsNotUsedAsValues (by @rijkvanzanten)
- Misc.