108 Commits

Author SHA1 Message Date
Joachim Van Herwegen
f932cf4b22 chore: Update dependencies 2023-10-11 16:25:49 +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
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
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
43e8ef99b0 fix: Return WAC-Allow header 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
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
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
36ff95e6b2 feat: StaticAssetHandler can link a container to a document 2023-06-06 09:18:29 +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
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
Joachim Van Herwegen
d59a1595d5 feat: Replace WebHookSubscription2021 with WebHookChannel2023 2023-04-24 11:00:54 +02:00
Joachim Van Herwegen
e9463483f4 feat: Allow unsubscribing from all notification channels 2023-04-24 10:18:17 +02:00
Joachim Van Herwegen
134237a80f feat: Support Add/Remove notifications on containers 2023-04-20 15:42:04 +02:00
Joachim Van Herwegen
702e8f5f59 feat: Replace WebSocketSubscription2021 with WebSocketChannel2023 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
cbbb10afa1 feat: Use URLs for channel identifiers
In the future these can potentially be used to dereference them
2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
67d1ff4ac0 feat: Ignore unsupported notifications features in subscriptions 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
65860f77da feat: Support GET requests on subscription services
Doing a GET request on a subscription resource
will return the expected representation.
Content negotiation is supported.
2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
b2f4d7fb2d fix: Update the lastEmit value after sending a notification 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
3a0c8159df test: Check the correct WebID in the WebHookEmitter tests 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
c36f15e2da feat: Generalize and extend notification channel type behaviour 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
7d029a9465 feat: Remove NotificationChannelInfo generics 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
8d31233075 refactor: Rename NotificationChannelInfo to NotificationChannel 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
61f04487a1 refactor: Rename subscription to notification channel 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
7c343a5fcc feat: Update notification object to match the updated examples 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
caee563dd6 feat: Replace expiration feature with startAt and endAt 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
10980e90a3 feat: Use notification v0.2 features in discovery 2023-04-20 14:32:13 +02:00
Joachim Van Herwegen
23db528472 fix: Replace inefficient storage detection
This replaces the recursive backend calls to find the storage
by a new class that is aware what the storage URLs look like.
2023-04-19 09:47:47 +02:00
Joachim Van Herwegen
c46d01d3d7 feat: Remove agent/user permission differentiation
This was only used for the WAC-Allow header and greatly simplifies how we use permissions.
2022-11-18 16:08:06 +01:00
Joachim Van Herwegen
6ad5c0c797 feat: Move WAC-Allow metadata collecting to HTTP handler
This depends on all auth related handlers to cache their results.
This allows us to remove the permission field from Operation.
2022-11-18 16:08:06 +01:00
Koen Luyten
bf0e35be37 feat: allow server to bind to Unix Domain Sockets 2022-11-18 15:41:20 +01:00
Joachim Van Herwegen
f54c34d1e0 feat: Add support for WebHookSubscription2021 2022-11-15 15:50:05 +01:00
Joachim Van Herwegen
cb619415fa refactor: Move WebSocket URL handling to utility functions 2022-11-15 15:50:05 +01:00
Joachim Van Herwegen
b1f7a6a8b1 feat: Add support for WebSocketSubscription2021 2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
cbc07c6ef3 feat: Add support for the Notification specification 2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
df2f69f532 feat: Expose a storage description resource for storage containers 2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
3db1921633 feat: Create an OperationRouterHandler
This allows us to route after an Operation has been parsed
2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
4223dcf8a4 feat: Split up server creation and request handling
This allows us to decouple the WebSocket listening from the HTTP configs,
making these features completely orthogonal.
2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
9f04e28dc6 chore: Clean up ACP imports 2022-11-02 09:17:35 +01:00
Joachim Van Herwegen
fa1dee573e feat: Add required ACP headers 2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
f3e7a20800 feat: Update Credentials typings to support client/issuer 2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
740ba3398b Merge branch 'main' into versions/5.0.0
# Conflicts:
#	RELEASE_NOTES.md
#	config/app/variables/cli/cli.json
#	config/app/variables/default.json
#	package-lock.json
#	package.json
2022-08-04 17:18:34 +02:00
Joachim Van Herwegen
93a141dd61 fix: Improve HTTP stream error messages 2022-07-14 11:41:18 +02:00
Joachim Van Herwegen
23f0b37c28 feat: Change permission interface to store identifiers 2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
df0825936a feat: Parse Accept headers as early as possible 2022-06-01 10:05:36 +02:00