Commit Graph

620 Commits

Author SHA1 Message Date
rijkvanzanten
065c77dc1d v9.22.4 2023-01-11 17:05:16 -05:00
rijkvanzanten
9f708d67bc v9.22.3 2023-01-11 12:16:11 -05:00
rijkvanzanten
b9a5005859 v9.22.2 2023-01-11 11:27:56 -05:00
Rijk van Zanten
c249d58a8c Revert "Speed-up api dev scripts by using swc (#16609)" (#17064)
This reverts commit e9a2ce5a9e.
2023-01-09 16:57:03 -05:00
Pascal Jufer
e9a2ce5a9e Speed-up api dev scripts by using swc (#16609) 2023-01-09 15:47:41 -05:00
Rijk van Zanten
40f94e6907 Patch Tuesday 🐸 (#16875)
* Update versions

* Fix usage of fullcalendar

* Patch Tuesday Additions 🐸🐸 (#16878)

* Interop default in vitest

* Update exif-reader

* remove deprecated @types/pino

* remove old "grant" package type shim

* Small clean-up of dependencies (#16576)

* Remove outdated type deps & update concurrently

* fix lock file

Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
2022-12-23 10:45:15 -05:00
rijkvanzanten
602f5db4f7 v9.22.1 2022-12-21 17:12:11 -05:00
rijkvanzanten
8f0fb8b40f v9.22.0 2022-12-21 14:33:04 -05:00
Rijk van Zanten
00865fbd84 File Storage 2.0 (#16825)
* Refactor storage logic to testable setup

* Add tests to get storage config

* Add tests for register drivers

* Tests for index

* Organize imports

* Add missing getStorage

* Setup boilerplate for cloudinary drive

* Add build script

* Add cloudinary configuration

* WIP tweaks for R&D

* Start storage abstraction v2

* Make storage manager single file

* Add test coverage

* Organize imports

* Setup local driver boilerplate

* [WIP] Start on local driver 2.0

* Add more methods

* Lunchtime

* Add put method

* Add list method

* [WIP] Try using storage in api

* Use node16 module-resolution

* Lets not mess with apply-query rn

* I love CJS. Death to CJS.

* Use dynamic imports

* Make things work

* Add path normalizer

* Add azure storage driver

* Update lock

* Start on tests

* Add getBuffer test

* Add getStat tests

* Add tests for exists

* Add tests for move

* Add tests for copy

* Add tests for put

* Add tests for delete

* Add test coverage for list

* Add removeLeading option to normalizePath

* Use removeLeading option

* Start on gcs

* Add fullpath test

* Add getStream

* Add getBuffer

* Add getStat

* Add exists

* Add move

* Add copy

* Add put

* Add delete

* Finish DriverGCS

* Cleanup tests a bit

* Start s3

* Add getStream

* Add getBuffer

* Please Wryn

* Add #exists

* Use randomize data

* No more hardcoded values 🙅‍♀️

* Add tests for copy

* Add tests for put

* Add put/copy/delete

* Add tests for delete

* WIP list

* Remove duplicate fullPath check

* Finish AWS tests

* Listen to wryn

* Mission critical tweak

* Add randomization, cleanup tests

* Check src vs dest full path

* Start on Cloudinary

* Add parameter signature helper

* Fix ESM building of shared

* Fix ESM building of shared

* Improve tests

* Update pnpm

* Remove old build commands

* Generated d.ts files

* Fix export naming

* Move ESM only utils to new @directus/utils

* Update lockfile

* Fix type exports

* Implement getStream

* Cleanup tests

* Simplify api

* Simplify API

* Simplify api

* Simplify API

* Add read/stat

* Cleanup / add exists

* Add move

* Add write

* Move uploadChunk to separate method

* Add test for #uploadChunk

* Add tests for write

* Add copy

* Add delete

* Add list

* Add list error handling

* Remove old drive packages

* Start updating API usage of storage

* Use Readable instead of NodeJS.ReadableStream

* Use readable instead of buffer

* Restore shared to main

* Update lockfile

* Use a streaming pipeline for sharp metadata

* Add basic e2e test for local upload and delete

* Fix integer filesize in SQLite

* fixed environment mocking in unit tests

* applied the same env mocking to other tests

* Update api/src/storage/register-drivers.ts

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Use sha256 by default

* Add base read test for /assets

* Replace exifr with exif-reader

* Fix tests for storage/index

* Install faking lib for tests

* Add test for register-drivers

* Add tests for register-locations

* Finish tests

* Organize imports

* Resolve Azris comments

* Fix outdated tests

Certainly not the cleanest, but I need to do a bigger pass on all these tests to get them up to date with the latest team requirements. Gonna do that in a separate PR..

* Test for sha256

* Attempt 1 at fixing toString errorr

I'm not seeing this issue locally, so we'll spam a couple commits here to get things going

* Use node 18 in tests?!

* Fix localhost resolution with 127.0.0.1

* Mock getEnv()

* Use @directus/tsconfig instead of duplicated conf

* Does this fix it?

* OK fun detour

* Recreate lockfile

* Update config files

* Use multipart uploads in S3

* Cleanup imports

* File Storage 2.0: Make metadata extraction backward-compatible (#16868)

* Reinstall packages using pnpm instead of manually removing them (#16871)

* Added extra environment setting for sharp processing of invalid images (#16811)

* Added extra environment setting for sharp processing of invalid images

* renamed environment var to `ASSETS_INVALID_IMAGE_SENSITIVITY_LEVEL`

* Remove unused excludes from tsconfig

* Remove copy/paste leftover

* Update packages/utils/readme.md

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

* Update packages/utils/package.json

Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>

Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Brainslug <tim@brainslug.nl>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
2022-12-21 10:04:03 -05:00
Brainslug
1eea9d8b0f Missing logs with Pino asynchronous logging (#16299)
* force logger in sync mode when running on the CLI

* using the sync logger for all cli commands

* using cli logger for app initialization

* using pino pretty for log formatting

* installed deps

Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
2022-11-29 14:26:37 -05:00
rijkvanzanten
d6b8e5963d v9.21.2 2022-11-28 15:44:12 -05:00
rijkvanzanten
51b1daec58 v9.21.1 2022-11-28 15:09:00 -05:00
Pascal Jufer
47db8e5d2f Clean-up dependencies (#16481)
* Clean-up api

- Remove unnecessary deps
- rimraf -> del-cli

* Clean-up app

- bytes -> pretty-bytes
- Remove ms as we already have pretty-ms
- Remove other unnecessary deps
- Add storybook build to gitignore

* Clean-up drive packages

- Simplify cleanup scripts
- rimraf -> del-cli
- Remove unnecessary deps

* Clean-up schema

- Remove unnecessary dep (lodash)
- Replace 'npm-watch' with native watch mode

* Clean-up shared

- Remove unnecessary dep (c8, adding @vitest/coverage-c8 will be addressed in
  other PR)
- rimraf -> del-cli
- npm-run-all -> concurrently

* Clean-up root

- Add missing eslint-plugin-jest dep
- listr -> listr2

* Make build output a bit friendlier

* Remove cleanup scripts

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2022-11-18 17:02:41 +00:00
rijkvanzanten
ba00c28bf3 v9.21.0 2022-11-17 16:31:59 -05:00
Azri Kahar
5e4d7972b1 use pnpm shell-emulator instead of cross-env (#16486)
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-11-17 11:21:22 -05:00
Rijk van Zanten
0bb34f0f0d Patch Tuesday 🐸 (#16475)
* Update monorepo root

* Update API dependencies

* Use unranged version

* Update app deps

* Upgrade packages dependencies

* Fix shared build

* Fix type warning in api

* Fix test runner

* Get rekt by ya boy comma-,

* Fix missing unit deprecation for sass color.mix()

Co-authored-by: ian <licitdev@gmail.com>
2022-11-17 08:51:42 -05:00
Pascal Jufer
adeabdfe7b Clean-up and unify all package.json files (#16447)
* Clean-up & unify all package.json files

* Sort all package.json files the same way

Using 'sort-package-json'

* Add funding link to packages
2022-11-15 11:35:28 -05:00
Pascal Jufer
df495edae0 Exclude unnecessary files from packages (#16374)
* Exclude unnecessary files from packages

* Add back 'copyfiles' in api to copy yaml and liquid files to dist

* Exclude declaration maps and all declaration files for drive packages

Excluding all declaration map files from published packages

Since the "drive" packages are only expected to be used internally, it's
enough to have the declaration files present when developing locally - no
need to include the types in the published packages

* Remove unnecessary entries in "files" field of app/package.json

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2022-11-15 09:51:04 -05:00
Pascal Jufer
c303bdcf10 Finish switch from Jest to Vitest in API (#16263)
* build:  add vitest and update test scripts

* build: 🔧 add vitest config

* build:  Migrate tests to vitest

Remove jest references from test api test files and replace with vitest equivalents.

Tests: 13 tests are failing.

* build: 🚚 move vite.config.ts to api/src folder

* build: 🔥 remove unused vitest.config from api root

* build:  import vitest modules for tests

* build:  add type conversion for actual object

* Finish switch from Jest to Vitest in API

* Replace some leftovers

* Load "sharp" before tests

* Try with cjs

* Temporary enable verbose reporter

* Try with globalSetup

* Fix path to globalSetup

* Provide default export in globalSetup

* Final clean-up

* Remove @vitest/ui & update vitest to 0.25.0

* Add vitest c8 coverage dependency

* Update vitest to v0.25.1

* Replace unnecessary Vitest workaround

* Rework new tests

* Resolve build errors

Co-authored-by: Dorian C Brown <brown.3794@gmail.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2022-11-14 16:09:47 -05:00
ian
13d8dde534 v9.20.4 2022-11-03 11:01:46 +00:00
rijkvanzanten
c70211c48d v9.20.3 2022-11-02 12:12:52 -04:00
rijkvanzanten
d09d087fc9 v9.20.2 2022-11-02 08:56:09 -04:00
rijkvanzanten
b5d7db2ea0 v9.20.1 2022-11-01 21:36:16 -04:00
Roger Stringer
6ba97ea422 move @authenio/samlify-node-xmllint from dev to prod dependencies (#16260) 2022-11-01 19:59:54 -04:00
rijkvanzanten
15613d5853 v9.20.0 2022-11-01 19:08:33 -04:00
Roger Stringer
53a3194d5c Add support for SAML Part 2 (#16145)
* new saml branch

* put saml info back in

* put saml info back in

* clean up code

* validate saml config

* validate schema

* Add saml auth flow tests

* use RelayState for redirects

* Update tests for RelayState

* Fix linting

* remove validateMeta as samlify does it already

* Fix linting

* change catch on login

* Update api/src/auth/drivers/saml.ts

Co-authored-by: Aiden Foxx <aiden.foxx.mail@gmail.com>

* remove login since not needed here

* clear cookie if set on logout

* empty login method

* invalidate logout in db

* if relayState and login failed, redirect back with a reason

* Cleanup linter warnings

* Remove range from packages

* Opinions opinions opinions opinions

Just a couple personal opinion cleanup pieces

Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Aiden Foxx <aiden.foxx.mail@gmail.com>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-11-01 22:09:31 +00:00
rijkvanzanten
8c5cda446a Use urlencoded thru express instead 2022-11-01 16:52:06 -04:00
rijkvanzanten
7a5560cf97 v9.19.2 2022-10-24 09:56:51 -04:00
rijkvanzanten
228a5ca15f v9.19.1 2022-10-22 13:10:18 -04:00
ian
97b7357a16 Update extensions-sdk in api and app (#16116)
* Update extensions-sdk in api and app

* Use workspace reference

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-10-22 12:34:16 -04:00
rijkvanzanten
d286bd7fb7 v9.19.0 2022-10-21 15:40:44 -04:00
Rijk van Zanten
2d104e933b Patch Tuesday 🐸 (#16052)
* Update API non-majors

* Update major changes

* Temp fix for type warning in sdk

* Resolve missing new keyword in GraphQLNonNull use

* Lock versions in api

* Update and lock versions in shared

* Update lockfile

* Fix build type errors in api

* Update app patches/minors

* Upgrade major versions

* Lock versions

* Upgrade root deps

* Update packages

* Switch from pino-colada to pino-pretty

* Update snapshots

* Fix globby sync usage

* Remove globals from jest config

* No ranges

* Revert "Remove globals from jest config"

This reverts commit e249e2c8fe.

* Revert "Upgrade root deps"

This reverts commit 62add28a85.

* Update non-jest stuff

* We'll keep trying

* Update globby to latest minor only

* Test on all vendors

* Revert test on all vendors

* Fix linting

* Preserve request log format

* Preserve existing timestamp format and allow configuration

* Use lodash merge to allow for nested objects

Co-authored-by: ian <licitdev@gmail.com>
2022-10-20 09:31:17 -04:00
Brainslug
5fcb3c84c7 Update ioredis to fix connection uri options (#15876)
* updated ioredis to 5.2.3

* type fixes

* removed obsolete @types/ioredis package
2022-10-12 15:56:22 -04:00
Brainslug
040e9c240a Updated argon2 to 0.29.X for M1 support (#15928)
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2022-10-12 15:40:33 -04:00
Nicola Krumschmidt
acb40ffee1 Make the repo usable with Node v18 (#15939)
`openid-client` previously had an `engine` field inside its package.json which prevented it from being used with Node v18.
2022-10-11 11:08:20 -04:00
rijkvanzanten
cb3d775c4e v9.18.1 2022-09-22 17:12:51 -04:00
rijkvanzanten
8f5750c5c1 v9.18.0 2022-09-19 09:39:58 -04:00
rijkvanzanten
7e3ece5d9f v9.17.4 2022-09-06 16:59:25 -04:00
rijkvanzanten
2cb00e8809 v9.17.3 2022-09-06 14:16:25 -04:00
rijkvanzanten
a04b733504 v9.17.2 2022-09-06 10:54:03 -04:00
rijkvanzanten
a17a0f4fb9 v9.17.1 2022-09-05 11:38:28 -04:00
Mehdi Nassim KHODJA
31a6fd208f Adding SendGrid email transport (#15384)
* Adding SendGrid email transport

* Formatting

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-09-05 10:14:41 -04:00
Bobby Alex Philip
ac34279eb1 Move supertest to devDependencies (#15397) 2022-09-05 10:01:36 -04:00
rijkvanzanten
200c2dd2c7 v9.17.0 2022-09-02 16:17:56 -04:00
ian
92b54c4d09 Use encodeurl package to escape URLs for axios (#15257)
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2022-08-29 15:05:29 -04:00
tenebrius
a98a83b5da Update node-cron to 3.0.2 (#15234)
* Update node-cron to 3.0.2

* Update lockfile accordingly

* Fix lockfile resolution

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2022-08-25 18:46:10 -04:00
rijkvanzanten
f21f8c4707 v9.16.1 2022-08-19 09:13:10 -04:00
rijkvanzanten
58f6a6fcde v9.16.0 2022-08-18 16:55:44 -04:00
Rijk van Zanten
a21b28b423 Add "Run Script" operation (#15101)
* [WIP] Start working on script operation

* WIP Remove npx-import experiment

* Don't break on string value in options scope

* WIP Add module whitelist

* Mission critical import cleanup work

* Add translated labels

* Use nodeVM for everything

Keeps the export function callback structure consistent

* Tweak wording

* WIP start on tests

* Improve typing in shared define types

* Add missing base reactive properties in server store

* Add tests for exec index in app

* Add tests

* Optimize error handling
2022-08-18 15:39:25 -04:00
Rijk van Zanten
6d08672c88 Update knex-schema-inspector to 2.0.4 (#15047) 2022-08-12 11:02:17 -04:00