Joachim Van Herwegen
6424b07fc6
fix: Prevent setRepresentation crash if there is no root container
2021-02-11 14:35:56 +01:00
Joachim Van Herwegen
c05933f652
fix: Simply GuardedStream check
2021-02-11 10:46:24 +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
0ffd332828
feat: Use end-of-stream to know when to release lock
2021-02-10 16:37:34 +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
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