Joachim Van Herwegen
8ccc68d29c
feat: Add acl link headers based on headers instead of hardcoding
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
0c047234e3
feat: Support auxiliary behaviour in DataAccessorBasedStore
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
f87fc61ab0
feat: Support updating multiple metadata values for a predicate
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
061c856161
feat: Add auxiliary support to LockingResourceStore
...
This way locks are always on the associated resource
if there is a request on an auxiliary resource.
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
7f34fe6ae3
feat: Create separate authorizer for auxiliary functions
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
8339413ab4
feat: Add permissions extractor for acl resources
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
758f5ed083
feat: Generalize AclManager to AuxiliaryManager
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
d6cdd7dbdf
feat: Introduce generic auxiliary resource support
2021-02-18 13:26:08 +01:00
Joachim Van Herwegen
766e6318ba
feat: Add control permission to PermissionSet
...
This is in preparation of generalizing permissions
of auxiliary resources.
2021-02-18 13:26:08 +01:00
Wouter Termont
1486f01aaf
fix: do not output filesystem container size
...
* fix: do not output filesystem container size
* fix: only omit size metadata for containers
Signed-off-by: Wouter Termont <woutermont@gmail.com>
2021-02-12 09:18:09 +01:00
Joachim Van Herwegen
49a04c4d0a
test: Remove root folder creation from integration tests
...
This should be handled by the initializer
2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
bb65630441
fix: Remove default root container from InMemoryDataAccessor
2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
6424b07fc6
fix: Prevent setRepresentation crash if there is no root container
2021-02-11 14:35:56 +01:00
Stijn Taelemans
ce1f4300ff
feat: Replace express with native http module
...
* refactor: replace express with native http module
* fix: 404 when unhandled
* chore: removed express dependency
* chore: updated package-lock.json
* docs: added documentation for BaseHttpServerFactory
* chore: updated package-lock.json
Co-authored-by: Arthur Joppart <arthur@digita.ai>
2021-02-11 10:15:40 +01:00
Joachim Van Herwegen
230303e7d7
test: Add fetch-based integration tests
...
This way we already have some basic test
until the mocking library is completely removed.
2021-02-10 16:00:35 +01:00
Joachim Van Herwegen
fd45779159
feat: Pipe streams with the pump library
...
The library handles some edge cases we didn't yet.
The GuardedStream was also updated to ignore error listeners
already attached to the stream (since pump adds internal listeners).
2021-02-10 16:00:35 +01:00
Joachim Van Herwegen
a3f41c1d43
feat: Create GreedyReadWriteLocker using read/write locking algorithm
2021-02-09 14:35:12 +01:00
Joachim Van Herwegen
59deb989ec
feat: Introduce internal storing mechanism
2021-02-09 14:35:12 +01:00
Joachim Van Herwegen
b61d46900f
feat: Create new interface for lockers with only 1 kind of lock
2021-02-09 14:35:12 +01:00
Joachim Van Herwegen
59600b07f8
fix: Fixed bug with empty Accept headers and internal/quads bodies
...
In case the Accept header was empty and the store returned an internal/quads
resource, our mechanism to prevent internal data from being returned
was ignored.
2021-02-09 13:26:36 +01:00
Joachim Van Herwegen
73acb9cd52
fix: Prevent race condition in OPTIONS call
2021-02-05 17:18:45 +01:00
Joachim Van Herwegen
386d78277d
fix: Close unpiped streams
2021-01-29 15:42:34 +01:00
Joachim Van Herwegen
c29928c32c
fix: Test error classes correctly
2021-01-29 09:40:10 +01:00
Ruben Verborgh
a57105be8e
change: Query string does not influence identifier.
2021-01-29 09:12:49 +01:00
Ruben Verborgh
6e50443a39
fix: Preserve query string in transformations.
2021-01-29 09:12:49 +01:00
Ruben Verborgh
c899e6c4b1
fix: Do not re-encode static assets. ( #566 )
...
Fix serving binary static assets.
2021-01-28 22:02:32 +00:00
Ruben Verborgh
2563335403
feat: Support folders in StaticAssetHandler.
...
Closes https://github.com/solid/community-server/issues/548
2021-01-28 09:07:54 +01:00
Joachim Van Herwegen
93e53b3d24
fix: Only require append permissions on POST requests
2021-01-27 11:54:15 +01:00
Ruben Verborgh
817cf3ac0d
feat: Add ParallelHandler.
2021-01-27 11:29:35 +01:00
Ruben Verborgh
eb1440851a
refactor: Move handlers into subfolder.
2021-01-27 11:29:35 +01:00
Joachim Van Herwegen
7cf22be00c
fix: Remove data.once('data') checks from test
...
They were not needed for the test (only need to check if stream is destroyed
or not), and caused errors in Node 14.0.
2021-01-26 23:32:44 +01:00
Joachim Van Herwegen
2c3300028e
feat: Add acl link header writer
...
This writer will add a link to the corresponding acl file
for all LDP requests.
2021-01-26 11:38:46 +01:00
Ruben Verborgh
153d2d9fe4
feat: Set Accept-Patch header.
2021-01-26 10:52:38 +01:00
Ruben Verborgh
8c2f737fe0
feat: Set MS-Author-Via header.
...
Closes https://github.com/solid/community-server/issues/539
2021-01-26 10:52:38 +01:00
Ruben Verborgh
fe3957f0ae
feat: Add ConstantMetadataWriter.
2021-01-26 10:52:38 +01:00
Joachim Van Herwegen
e752927171
fix: Remove all instanceof checks
...
This prevents problems with different environments.
Also introduces unit tests to double check HttpError values.
2021-01-25 16:11:43 +01:00
Joachim Van Herwegen
c17402517e
feat: Update LockingResourceStore to use new locking interface
...
This has as added bonus that, in the case of getRepresentation,
the stream will be destroyed with an error in case of a timeout.
2021-01-22 11:34:51 +01:00
Joachim Van Herwegen
077f5d7069
fix: Remove locking from the SparqlUpdatePatchHandler
...
Due to not having re-entrant locks this would cause deadlocks
with the LockingResourceStore or require more advanced configurations.
If this is needed in the future we can potentially add a LockingPatchHandler.
2021-01-22 11:34:51 +01:00
Joachim Van Herwegen
b59357ec30
feat: Update WrappedExpiringResourceLocker to new interface
...
Due to the new interface, it is now possible to throw an error
if there is a timeout which should make it easier
to find locking issues.
2021-01-22 11:34:51 +01:00
Joachim Van Herwegen
4d440c6c69
feat: Update ResourceLocker interface
...
By making use of withReadLock and withWriteLock instead
of acquiring the locks themselves it's easier to keep control
of what happens.
2021-01-22 11:34:51 +01:00
Ruben Verborgh
75d0d4152a
feat: Add placeholders for static assets to configuration.
2021-01-21 10:35:07 +01:00
Ruben Verborgh
5a12315554
feat: Add StaticAssetHandler.
2021-01-21 10:35:07 +01:00
Ruben Verborgh
693d48b9eb
feat: Set Vary header.
2021-01-21 08:50:30 +01:00
Ruben Verborgh
b487dc738c
fix: Create basic representations with streams.
2021-01-20 16:30:29 +01:00
Ruben Verborgh
5416d66a31
feat: Add ConstantConverter.
2021-01-20 14:36:17 +01:00
Ruben Verborgh
a21532ebf8
refactor: Allow IfNeededConverter to short-circuit.
2021-01-20 14:36:17 +01:00
Ruben Verborgh
dd9d873122
feat: Implement UnsupportedAsyncHandler.
2021-01-20 14:36:17 +01:00
Ruben Taelman
4ac0167c8d
Add optional path and url suffixes to FixedContentTypeMapper
2021-01-19 10:54:49 +01:00
Joachim Van Herwegen
cf6270d161
fix: Accept absolute paths in CliRunner
2021-01-19 10:54:37 +01:00
Joachim Van Herwegen
36761e8124
feat: Support composite PATCH updates
2021-01-18 17:01:24 +01:00