849 Commits

Author SHA1 Message Date
Joachim Van Herwegen
f954fc9450 fix: Be consistent in slash usage in storages 2023-10-11 12:47:02 +02:00
Joachim Van Herwegen
b5a61cbb08 feat: Use new MaxKeyLengthStorage to prevent keys that are too long 2023-10-11 12:47:02 +02:00
Joachim Van Herwegen
16378ec470 fix: Encode notification keys before accessing the storage
This to prevent issues when a storage is used that does not encode
2023-10-11 12:47:02 +02:00
Joachim Van Herwegen
2914fd7d60 fix: Update generated keys in ExpiringAdapterFactory to prevent overlap
If the keys were not encoded there could be an issue
where there were 2 similar keys `grant/123` and `Grant/123`.
2023-10-11 12:47:02 +02:00
Joachim Van Herwegen
864dd7c2e0 feat: Add support for initializing a server with a root pod 2023-10-09 09:57:25 +02:00
Joachim Van Herwegen
0ac7d407bf feat: Add migration for v6 account data 2023-10-06 12:54:26 +02:00
Joachim Van Herwegen
fedd9e04d8 feat: Allow ConditionalHandler to set the expected value 2023-10-06 12:54:26 +02:00
Joachim Van Herwegen
42a1ca7b64 feat: Create PodCreator class to contain most pod creation logic 2023-10-06 11:05:01 +02:00
Joachim Van Herwegen
307dba3219 fix: Rename cookie field to authorization 2023-10-06 11:05:00 +02:00
Joachim Van Herwegen
cd07338ce7 feat: Add support for pod owners 2023-10-06 11:04:59 +02:00
Joachim Van Herwegen
4230db5038 feat: Use IndexedStorage to store account data 2023-10-06 11:04:58 +02:00
Joachim Van Herwegen
a47f5236ef feat: Full rework of account management
Complete rewrite of the account management and related systems.
Makes the architecture more modular,
allowing for easier extensions and configurations.
2023-10-06 11:04:40 +02:00
Joachim Van Herwegen
5eff035cb3 feat: Remove setup 2023-10-06 10:11:59 +02:00
Joachim Van Herwegen
ea83ea59a1 feat: Update StaticAssetHandler to allow for easier overrides 2023-10-06 10:11:58 +02:00
Joachim Van Herwegen
531c299c7b refactor: Rename WebHook to Webhook 2023-10-06 08:39:42 +02:00
Joachim Van Herwegen
cccca96d28 test: Workaround for Jest dynamic import issues
Dynamic imports cause segmentation faults with Jest:
https://github.com/nodejs/node/issues/35889.
We work around this by handling imports in IdentityProviderFactory
differently when Jest is running.
For unit tests we use a different tsconfig
that transpiles dynamic imports differently,
as those are also used in AppRunner.
2023-10-06 08:39:07 +02:00
Joachim Van Herwegen
b3ef4ed017 fix: Use local file for oidc-provider typings
Due to v8 of oidc-provider being ESM,
we can't use the typings directly because of a TS bug:
https://github.com/microsoft/TypeScript/issues/49721.
This works around that.
2023-10-06 08:39:07 +02:00
Joachim Van Herwegen
7024ee9a58 feat: Update oidc-provider to v8
The new version is an ESM package,
so we need to do a dynamic import as our package is CJS.
To correctly transpile the dynamic import,
moduleResolution needs to be set to node16.
See https://github.com/microsoft/TypeScript/issues/43329
2023-10-06 08:39:07 +02:00
Joachim Van Herwegen
e0c1baeb43 chore: Make Node v18 the minimum supported version 2023-10-05 15:26:56 +02:00
Joachim Van Herwegen
c95198285c Merge branch 'main' into versions/next-major 2023-10-05 14:28:06 +02:00
Joachim Van Herwegen
71e55690f3 feat: Track binary size of resources when possible 2023-10-05 10:07:49 +02:00
Joachim Van Herwegen
3e9adef4cf feat: Add support for range headers 2023-10-05 10:07:49 +02:00
Joachim Van Herwegen
d31393f475 fix: Remove URL encoding from base64 strings before decoding 2023-10-05 09:12:10 +02:00
Joachim Van Herwegen
3ade2ad795 feat: Introduce IndexedStorage for a more extensive storage solution 2023-09-26 09:42:39 +02:00
Joachim Van Herwegen
661357c985 chore: Remove eslint rule about deleting dynamic keys 2023-09-26 09:42:39 +02:00
Joachim Van Herwegen
154d981684 feat: Split up EncodingPathStorage functionality into different classes 2023-09-20 11:13:56 +02:00
surilindur
9e682f5c4f feat: Have FixedContentTypeMapper ignore .meta 2023-08-28 14:56:28 +02:00
Joachim Van Herwegen
43e8ef99b0 fix: Return WAC-Allow header in 304 responses 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
baa64987c6 fix: Return ETag in 304 responses 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
afcbfdaacf feat: Use ETagHandler for ETag generation and comparison 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
5ec6eddbfa refactor: Move condition classes to separate folder 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
b608080d5f feat: Store ETag in metadata 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
0245b31e0c feat: Add error causes to error serializations 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
7505f07f2f fix: Add missing error causes 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
f373dff1d7 feat: Add metadata to errors 2023-08-28 09:06:39 +02:00
Joachim Van Herwegen
4f17f2baac Merge branch 'main' into versions/next-major 2023-07-25 09:43:15 +02:00
Joachim Van Herwegen
9c2c5edaf5
feat: Ignore invalid header parts
* patch: initial ideas around how to ignore invalid accept header parts. not fully tested, plenty of cleanup to do

* patch: finish removing commented code. finalize unit tests for headerUtil methods that now ignore bad header parts rather than throwing as before

* patch: remove @throws comments in HeaderUtil and update some comments to account for changes to returned values

* feat: Give option for header parsing to be strict

---------

Co-authored-by: Charlie Blevins <blevins.charlie@gmail.com>
2023-07-20 15:27:20 +02:00
Joachim Van Herwegen
e921d62630 fix: Make all ways to start the server more consistent 2023-07-20 09:48:54 +02:00
Joachim Van Herwegen
6f6784a288 fix: Do not show PUT in Allow header for existing containers 2023-07-20 09:48:42 +02:00
Joachim Van Herwegen
c0a881b980 fix: Use correct type for Webhook notifications 2023-06-13 08:14:11 +02:00
Joachim Van Herwegen
9584ab7549 fix: Make root storage subject of storage description 2023-06-13 08:14:11 +02:00
Joachim Van Herwegen
fdee4b334f fix: Prevent illegal file paths from being generated 2023-06-09 09:03:37 +02:00
Joachim Van Herwegen
36ff95e6b2 feat: StaticAssetHandler can link a container to a document 2023-06-06 09:18:29 +02:00
Joachim Van Herwegen
5347025720 fix: Make sure locker allows reentrant lock acquisition 2023-05-02 09:27:31 +02:00
Joachim Van Herwegen
0d5d072f79 fix: Make aggregated errors prettier 2023-05-02 09:26:42 +02:00
Joachim Van Herwegen
4b7621f9e0 feat: Support both the old and new WebSocket specifications together 2023-04-27 11:27:34 +02:00
Joachim Van Herwegen
69af7c4e16 feat: Use WebSocket2023Channel identifier for WebSocket URL 2023-04-27 11:27:34 +02:00
Joachim Van Herwegen
262f6b4558 chore: Update dependencies 2023-04-27 10:47:30 +02:00
Joachim Van Herwegen
b250beaec9 fix: Support new ETag format in notification states 2023-04-26 13:25:06 +02:00
Joachim Van Herwegen
d6be724a12 Merge branch 'main' into versions/6.0.0
# Conflicts:
#	config/ldp/authorization/readers/access-checkers/agent-group.json
2023-04-24 11:21:59 +02:00