The Modern Data Stack π° β Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
OTHER License
Bot releases are visible (Hide)
deep
in the useItems composable (#18713 by @u12206050)filter_count
meta field when query applies to relationships (#19208 by @joselcvarela)@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
isBatch
variable to solve missing file preview in file item page (#19114 by @joselcvarela)_null
filter rule (#19081 by @ched-dev)@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
There's a couple potentially breaking changes in this release that you should be aware of:
Directus had various different functionalities that required you to use Redis when running Directus in a horizontally scaled environment (like caching/rate-limiting). With the release of 10.3, two more functionalities were added (websockets/flows). In 10.4, the configuration for these different parts will be combined into a single set of REDIS
environment variables that are reused across the system.
Combine all the *_REDIS
environment variables into a single shared one as followed:
Before
CACHE_STORE="redis"
CACHE_REDIS_HOST="127.0.0.1"
CACHE_REDIS_PORT="6379"
...
RATE_LIMITER_STORE="redis"
RATE_LIMITER_REDIS_HOST="127.0.0.1"
RATE_LIMITER_REDIS_PORT="6379"
...
SYNCHRONIZATION_STORE="redis"
SYNCHRONIZATION_REDIS_HOST="127.0.0.1"
SYNCHRONIZATION_REDIS_PORT="6379"
...
MESSENGER_STORE="redis"
MESSENGER_REDIS_HOST="127.0.0.1"
MESSENGER_REDIS_PORT="6379"
After
REDIS_HOST="127.0.0.1"
REDIS_PORT="6379"
CACHE_STORE="redis"
RATE_LIMITER_STORE="redis"
SYNCHRONIZATION_STORE="redis"
MESSENGER_STORE="redis"
Directus used to support either memory, Redis, or Memcached for caching and rate-limiting storage. Since the 10.3 release, Redis has been used more integrated as part of WebSockets / Subscriptions and the ability to synchronize flows across containers. Given this deeper integration with Redis, and the low overall usage/adoption of Memcached across Directus installations, we've decided to sunset Memcached in favor of focussing on Redis as the primary solution for pub/sub and hot-storage across load-balanced Directus installations.
A new @directus/errors
package is available that allows you to create custom DirectusErrors for use in extensions. Errors created through this package will be treated the same as errors thrown by the Directus API, which means you can use proper HTTP status codes, error extensions, codes, and messages. This does also mean that extensions no longer get an exceptions
options passed in that contains some preconfigured errors.
Replace any system exceptions you extracted from exceptions
with new errors created within the extension itself. We recommend prefixing the error code with your extension name for improved debugging, but you can keep using the system codes if you relied on that in the past.
Before
export default (router, { exceptions }) => {
const { ForbiddenException } = exceptions;
router.get('/', (req, res) => {
throw new ForbiddenException();
});
};
After
import { createError } from '@directus/errors';
const ForbiddenError = createError('MY_EXTENSION_FORBIDDEN', 'No script kiddies please...');
export default (router) => {
router.get('/', (req, res) => {
throw new ForbiddenError();
});
};
The New SDK is available in beta! We've been working hard on redesigning the SDK from the ground up to solve for / improve on some of the most often brought up pain points / shortcomings of the SDK. You can try it out by installing from the beta
tag: npm install @directus/sdk@beta
. Please tell us any and all feedback in the #new-sdk channel on Discord! We'll be pushing out more beta releases of the SDK during the next couple weeks. Docs will be continuously updated on https://docs.directus.io/guides/sdk/getting-started.html
e5992b59b
by @rijkvanzanten)_starts_with
and _ends_with
filter operators (#18941 by @gitstart)v-table
allowing radio buttons to have multiple selection values when the show-select
prop was set to one
(#18931 by @Philippe-cheype)@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
public
, handshake
, strict
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
This release doesn't include any new changes or fixes. An npm
publishing problem was identified in 10.2 which caused "raw' npm
installations to fail.
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
@directus/api
by an update notifier in the directus
package (#18738 by @paescuj)CACHE_AUTO_PURGE
is enabled (#18484 by @licitdev)FILES_MAX_UPLOAD_SIZE
environment variable for setting a max value system-wide (#18735 by @rijkvanzanten)FILES_MIME_TYPE_ALLOW_LIST
environment variable. (#18736 by @rijkvanzanten)FILES_MAX_UPLOAD_SIZE
crashing bug and files interface error when the upload request errors (#18737 by @licitdev)group-accordion
value initialization for usage in extension options (#18638 by @hanneskuettner)openapi3-ts
to v4 (#18722 by @paescuj)FILES_MAX_UPLOAD_SIZE
crashing bug and files interface error when the upload request errors (#18737 by @licitdev)@directus/api
by an update notifier in the directus
package (#18738 by @paescuj)openapi3-ts
to v4 (#18722 by @paescuj)CACHE_AUTO_PURGE
is enabled (#18484 by @licitdev)@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
Cache
option so that caching can be disabled for GET requests to Flows webhook trigger (#18277 by @licitdev)multipart/form-data
content type in the /schema/apply
endpoint (#18321 by @jaads)0.31.0
(#18483 by @br41nslug)no-nested-ternary
eslint rule to ensure better readability in the code base (#18376 by @br41nslug)f4698b5de3
by @rijkvanzanten)0f32f4f136
by @rijkvanzanten)0.31.0
(#18483 by @br41nslug)*.cjs
and *.mjs
extensions for custom migrations (#18385 by @br41nslug)0.31.0
(#18483 by @br41nslug)no-nested-ternary
eslint rule to ensure better readability in the code base (#18376 by @br41nslug)0.31.0
(#18483 by @br41nslug)constant
, utils
, composables
and exceptions
packages as side effects free to shrink size of API extensions using Typescript (#18365 by @nickrum)select-multiple-checkbox
behavior when modifying a custom value (#18554 by @hanneskuettner)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)0.31.0
(#18483 by @br41nslug)multipart/form-data
content type in the /schema/apply
endpoint (#18321 by @jaads)37d74f96fd
by @rijkvanzanten)Cache
option so that caching can be disabled for GET requests to Flows webhook trigger (#18277 by @licitdev)multipart/form-data
content type in the /schema/apply
endpoint (#18321 by @jaads)no-nested-ternary
eslint rule to ensure better readability in the code base (#18376 by @br41nslug)@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
@directus/[email protected]
Published by github-actions[bot] over 1 year ago
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:
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 |
system-field[-tree]
collection
prop to collectionName
(by @hanneskuettner)autoKey
to interface config (by @hanneskuettner)npm init directus-extension
(by @azrikahar)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.
set
to format error (by @rijkvanzanten)tsx
for api
scripts for Windows compatibility (by @br41nslug)directus
wrapper package (by @paescuj).toString()
for password reset accept URL object (by @azrikahar)Directus v9.24.0
The output type of the expires
property in GraphQL's auth login / refresh is now a string (BigInt) representation.
Published by github-actions[bot] over 1 year ago
null
as valid value type for v-radio (by @paescuj)null
(by @joselcvarela)No real changes. Just re-deploying to fix the npm publish as per https://github.com/directus/directus/pull/17656
Directus v9.23.1