728 Commits

Author SHA1 Message Date
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
Ruben Verborgh
e72117a21a refactor: Deduplicate mapper. 2021-01-18 16:42:18 +01:00
Ruben Taelman
01217e2e5c test: cache moduleState in integration tests to reduce exec time 2021-01-18 16:28:31 +01:00
Joachim Van Herwegen
af88e130ff test: Always collect coverage
But only set the threshold when running unit tests specifically.
This way coverage for single classes can easily be tested.
2021-01-18 13:38:28 +01:00
Ruben Verborgh
3a4ec48720 refactor: Rename BasicTargetExtractor to OriginalUrlExtractor. 2021-01-18 09:48:32 +01:00
Ruben Verborgh
7adc9edb76 refactor: Make representation conversion unconditional. 2021-01-18 09:47:06 +01:00
Ruben Verborgh
6763500466 feat: Add IfNeededConverter and PassthroughConverter. 2021-01-18 09:47:06 +01:00
Ruben Verborgh
7dcde1e0e3 refactor: Improve logging for access control. 2021-01-15 18:25:37 +01:00
Ruben Taelman
c5ea83c405 Fix failing LdpHandlerWithoutAuth integration test 2021-01-15 14:56:31 +01:00
Ruben Verborgh
e544e6dc11 feat: Allow custom root ACL. 2021-01-15 12:43:34 +01:00
Ruben Verborgh
a5413a64d3 refactor: Move pod templates to pod subfolder. 2021-01-15 12:43:34 +01:00
Ruben Verborgh
4638ba4bce feat: Use baseIRI in QuadToRdfConverter.
Closes https://github.com/solid/community-server/issues/512
2021-01-15 12:43:34 +01:00
Joachim Van Herwegen
ee50f40062 docs: Add comments referencing the Solid spec where relevant
Also some minor changes to completely match the spec there.
2021-01-15 08:42:36 +01:00
Joachim Van Herwegen
50e3cf5036 fix: Throw correct errors and streamline in DataAccessorBasedStore 2021-01-15 08:42:36 +01:00
Joachim Van Herwegen
b642393a15 fix: Have PATCH/POST/PUT operations handlers check content-type 2021-01-15 08:42:36 +01:00
Joachim Van Herwegen
9160b52d5b refactor: Remove toSystemFilePath 2021-01-14 16:14:30 +01:00
Ruben Verborgh
5bb7822dc7 change: Use solid-0.1 as protocol string.
See https://github.com/solid/solid-spec/pull/230
2021-01-14 15:21:29 +01:00
Ruben Taelman
748476afbb refactor: Update to Components.js 4 2021-01-14 13:38:42 +01:00
Joachim Van Herwegen
27cc1ec15e fix: Always keep guarded error listener attached 2021-01-12 17:15:05 +01:00
Joachim Van Herwegen
0f3680db8d test: Add crash test for guard stream edge case
See https://github.com/solid/community-server/pull/462#issuecomment-758013492
for details on why this crashes the server.
2021-01-12 17:15:05 +01:00
Ruben Verborgh
16ef86acef fix: Allow Content-Type: 0 on GET.
Fixes https://github.com/solid/community-server/issues/498
2021-01-12 15:50:48 +01:00
Ruben Verborgh
ba42861699 feat: Use ldp: prefix in container representations. 2021-01-12 09:12:54 +01:00