751 Commits

Author SHA1 Message Date
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
c3f48ddb97 fix: Ensure the ETag is representation specific 2023-04-18 10:41:48 +02:00
Joachim Van Herwegen
7fd0b50383 fix: Store internal JWK as JWKS to be backwards compatible 2023-04-17 15:19:50 +02:00
zg009
f0596c2eb8
feat: Support conditions for GET/HEAD requests
* fix: updated WrappedExpiringStorage tests and timer.unref calls

* fix: removed finalizable configs and inheritors that only used timer

* fix: updated test function to test setSafeInterval and timer.unref

* fix: added NotModifiedHttpError class

* fix: added 304 error test to HttpError test file

* fix: 304 errors when making read request with matching ETag

* Update src/util/errors/NotModifiedHttpError.ts

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>

* fix: updated tests

* fix: try notMatchesEtag in test

* fix: DataAccessorBasedStore test passes

* fix: removed conditions check and added extra test

---------

Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
2023-03-28 09:24:15 +02:00
zg009
b6faed0db3
fix: Updated WrappedExpiringStorage to use timer.unref
* fix: updated WrappedExpiringStorage tests and timer.unref calls

* fix: removed finalizable configs and inheritors that only used timer

* fix: updated test function to test setSafeInterval and timer.unref
2023-03-13 08:30:42 +01:00
Joachim Van Herwegen
63fd062f16 fix: Output required OAuth error fields 2023-03-07 08:36:58 +01:00
Joachim Van Herwegen
bb7427842c fix: Do not add port 80 to default base URL 2023-02-13 10:11:42 +01:00
Joachim Van Herwegen
c332412074
feat: Provide clear error message for unknown clients
* feat: Provide clear error message for unknown clients

* docs: Rephrase error message.

* docs: Update error message to reference local storage

---------

Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
2023-02-10 10:13:53 +01:00
Pasini Luca
2efc141baa feat: SeededPodInitializer log exceptions as warning instead of crashing 2023-02-03 10:27:58 +01:00
Joachim Van Herwegen
7cc0e3fbcc Merge branch 'main' into versions/6.0.0
# Conflicts:
#	src/init/ServerInitializer.ts
#	src/server/BaseHttpServerFactory.ts
#	src/server/HttpServerFactory.ts
#	src/server/WebSocketServerFactory.ts
#	test/unit/server/BaseHttpServerFactory.test.ts
2023-02-01 10:13:04 +01:00
Joachim Van Herwegen
0d6b895df3 feat: Hash lock-related identifiers 2023-02-01 09:47:13 +01:00
Joachim Van Herwegen
7422fbffe7 feat: Take preferences as input in RepresentationConvertingStore 2023-01-11 16:03:30 +01:00
Arthur Joppart
5c79e60238
feat: return clear error when multiple values for a cli flag are given
* feat: return clear error when multiple values for a cli flag are given

* chore: change function signature

* test: add testcase for array type yargs parameter
2022-12-05 13:36:54 +01:00
Jesse Wright
d61bf9bf19 feat: allow css configuration from package.json or config file 2022-11-24 14:25:33 +01: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
Joachim Van Herwegen
9b15b1d7e1 feat: Allow CachedHandler to cache on multiple object fields 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
bc119dbd3e chore: Move JWK generation to separate class 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
be7af277bb feat: Create a CachedHandler that caches AsyncHandler results 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
da99ff30f6 feat: Create an ArrayUnionHandler which flattens the sources results 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
764ce3cc28 feat: Create a GenericEventEmitter interface
This allows us to have typed EventEmitters.
2022-11-09 09:10:00 +01:00
Joachim Van Herwegen
3328f8dea6 Merge branch 'main' into versions/6.0.0 2022-11-07 09:45:22 +01:00
Joachim Van Herwegen
68ee9648e1 fix: Require create permission for empty PATCH bodies 2022-11-02 16:48:15 +01:00
Arthur Joppart
79fa83a07a
feat: add additional redis settings to redis locker
* feat: add additional redis settings to redis locker

* fix: unfinished doc
2022-11-02 10:48:30 +01:00
Joachim Van Herwegen
ef48660b48 fix: Return correct status code when deleting non-existent resource 2022-11-02 09:31:42 +01:00
Joachim Van Herwegen
9f04e28dc6 chore: Clean up ACP imports 2022-11-02 09:17:35 +01:00
Thomas Dupont
d690cc7ed0 feat: add support for key namespacePrefixes in a RedisLocker instance 2022-10-31 14:23:27 +01:00
Joachim Van Herwegen
a1e916b73a feat: Support async default values in getDefault 2022-10-06 09:36:04 +02: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
40f2c8ea42 feat: Update templates and generators to support ACP 2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
db680740b5 feat: Create configs for server with ACP authorization 2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
a6409ad00d feat: Create AcpReader 2022-10-06 09:36:04 +02:00
Joachim Van Herwegen
b09bf66ad7 Merge branch 'main' into versions/6.0.0 2022-09-29 15:31:42 +02:00
Joachim Van Herwegen
b0924bf168 feat: Allow JSON-LD contexts to be stored locally 2022-09-26 16:25:00 +02:00
Joachim Van Herwegen
4d9d1b90b0 fix: Prevent accidental nested storages 2022-09-26 11:57:42 +02:00
Joachim Van Herwegen
e050f8be93 feat: Allow multiple configurations to be used during startup 2022-09-26 10:26:00 +02:00