706 Commits

Author SHA1 Message Date
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
Stijn Taelemans
9b6eab27bc refactor: upgraded @types/cors 2021-02-10 11:11:57 +01:00
Joachim Van Herwegen
38b1c98cb6 feat: Integrate GreedyReadWriteLocker 2021-02-09 14:35:12 +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
6c4378a2de fix: Fix problem with piping streams for PATCH requests 2021-02-08 08:52:11 +01:00
Joachim Van Herwegen
73acb9cd52 fix: Prevent race condition in OPTIONS call 2021-02-05 17:18:45 +01:00
Ruben Verborgh
df19aa26ef chore: Use main as default branch.
Closes https://github.com/solid/community-server/issues/365
2021-02-03 09:11:42 +01:00
Renovate Bot
0fe1bbd004 fix(deps): update dependency @types/yargs to v16 2021-02-01 09:06:20 +01:00
Joachim Van Herwegen
386d78277d fix: Close unpiped streams 2021-01-29 15:42:34 +01:00
Ruben Verborgh
904c069451 change: Move FaviconHandler config to facilitate reuse. 2021-01-29 15:39:59 +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
Matthieu Bosquet
03e631ff17 feat: Static favicon asset 2021-01-28 23:27:41 +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
59a7c51f60 Release version 0.7.0 of the npm package. v0.7.0 2021-01-28 11:20:48 +01: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
Ruben Verborgh
6346760d1d test: Only show coverage details with unit tests. 2021-01-27 12:06:59 +01:00
Joachim Van Herwegen
93e53b3d24 fix: Only require append permissions on POST requests 2021-01-27 11:54:15 +01:00
Ruben Verborgh
13409bd91e refactor: Execute handlers in parallel when possible. 2021-01-27 11:29:35 +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
Ruben Verborgh
d7256fb20a test: Test on Node 15. 2021-01-27 09:37:20 +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
Ruben Verborgh
f1304d8d04 test: Run CI on first and last of each stable version. 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
394e28b69d change: Make header capitalization consistent. 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
Renovate Bot
a07fdde2a7 chore(deps): update dependency @microsoft/tsdoc-config to ^0.14.0 2021-01-25 09:09:39 +01:00
Joachim Van Herwegen
69c31446dd feat: Update config to include LockingResourceStore 2021-01-22 11:34:51 +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
038693a679 Release version 0.6.0 of the npm package. v0.6.0 2021-01-21 13:59:36 +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 Verborgh
b9a280e64c chore(deps): update componentsjs-generator to 2.1.0 2021-01-19 21:28:20 +01:00