Brandon Aaron
de51a231e3
feat: Fallback to X-Forwarded-* headers
...
* Fallback to X-Forwarded-* headers
This uses the first value from X-Forwarded-Host and
X-Forwarded-Proto if they're present and the standard Forwarded
header is not.
* Update parseForwarded to handle X-Forwarded-*
This updates the signature for parseForwarded to take in the headers
and handle the logic of falling back to X-Forwarded-* headers.
* Update src/util/HeaderUtil.ts
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
* Inline parseXForwarded helper
Additionally fixes a typo, updates a unit test, and removes a
typing that is no longer necessary.
* Tweak handling of X-Forwarded value checking and assignment
* Fix: terminology & consistency suggestions from review
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
Co-authored-by: Wouter Termont <woutermont@gmail.com>
2021-03-23 12:44:43 +01:00
Arne Vandoorslaer
dd5b496f1d
fix: Fix issue when there are multiple values for the same CLI parameter
...
* fix: added check for multiple values for the same option
* Update test/unit/init/CliRunner.test.ts
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
* fix: made CliRunner.run sync
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
2021-03-05 11:00:24 +01:00
Arthur Joppart
1589def066
fix: Error when unknown parameters are passed to the main executable
...
* bug: error when unknown parameters are passed to the main executable
* bug: error on unknown paramters and adapted to review
* fix: test wont pass in ci
* Update src/init/CliRunner.ts
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
* fix: adapted to review
* fix: made CliRunner.run async
Co-authored-by: Arne Vandoorslaer <arne@digita.ai>
Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
2021-03-04 11:41:13 +01:00
Arthur Joppart
ee88bf14de
feat: Added cloneRepresentation function to ResourceUtil
...
* feat: added cloneRepresentation function to ResourceUtil
* fix: adapted to review
* fix: adapted to review
Co-authored-by: Arne Vandoorslaer <arne@digita.ai>
2021-03-04 08:43:53 +01:00
Joachim Van Herwegen
e500a82680
feat: Create configurations to integrate dynamic pod creation
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
6288003915
feat: Create KeyValueStorage with a JSON file backend
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
28b077b84e
feat: Create initializer to instantiate dynamic pods
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
b78599182c
feat: Create router rule based on matching the base URL
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
b160121176
feat: Add implementation for dynamically instantiating pods
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
88d008e36f
feat: Create pod manager for generating dynamic pods
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
38afd72098
refactor: Rename Agent to PodSettings
2021-03-02 11:47:07 +01:00
Joachim Van Herwegen
0f00a8dffd
feat: Update KeyValueStorage interface with entries function
2021-03-02 11:47:07 +01:00
Matthieu Bosquet
23473f59e6
fix: SPARQL body parser test content type metadata
2021-02-26 15:51:35 +01:00
Matthieu Bosquet
2a34a430fa
fix: SPARQL PATCH Content Type
2021-02-26 15:51:35 +01:00
Arne Vandoorslaer
b3f292d718
feat: Added resourceExists method to ResourceStore
...
* feat: added resourceExists method to ResourceStore
* Merge remote-tracking branch 'origin/main' into feat/add-resourceExists-method-to-ResourceStore
* fix: adapted to review
* fix: adapted to review
2021-02-25 13:43:58 +01:00
Joachim Van Herwegen
6e2a4b5c2b
feat: Create SubdomainIdentifierGenerator
...
To be used when creating pods.
2021-02-25 13:16:26 +01:00
Joachim Van Herwegen
a28fb0258f
feat: Use an IdentifierStrategy in InMemoryDataAccessor
...
Now it's also possible to support multiple root containers.
2021-02-25 13:16:26 +01:00
Joachim Van Herwegen
29df380396
feat: Create SubdomainIdentifierStrategy
...
This strategy interprets all subdomains of the base to also be root containers.
2021-02-25 13:16:26 +01:00
Joachim Van Herwegen
bdb3621ee3
feat: Create SubdomainExtensionBasedMapper
...
This is required for file backends when supporting identifiers containing subdomains.
2021-02-25 13:16:26 +01:00
Ruben Verborgh
c3cff553e3
feat: Emit container pub event on PUT.
...
Closes https://github.com/solid/community-server/issues/612
2021-02-24 12:04:42 +01:00
Ruben Verborgh
6edc255707
feat: Make stores return modified resources.
2021-02-24 12:04:42 +01:00
Arthur Joppart
28c0eb7e88
Correctly handle slugs in POST requests
...
* bug: correctly handle slug in POST request
* bug: disallow slashes in slug + modified tests
* fix: fixed tests to work with PUT instead of POST+slug
* fix: fixed tests failing in ci
* fix: adapted to reviews
* fix: adapted to review
2021-02-24 12:03:41 +01:00
Matthieu Bosquet
894d4589d9
fix: Allow non-variable BGP boedies in SPARQL updates
...
* fix: SPARQL algebra update
* fix: SPARQL algebra bgp only
* fix: No SPARQL variables and refactor tests
2021-02-24 08:56:31 +01:00
Michiel de Jong
91791a0a14
Fix #621 : acl:AuthenticatedAgent instead of foaf:AuthenticatedAgent
2021-02-18 15:28:29 +01:00
Joachim Van Herwegen
139342470e
feat: Add WAC-Allow header when required
2021-02-18 14:13:47 +01:00
Joachim Van Herwegen
f2f265c586
feat: Let Authorizers output an Authorization
2021-02-18 14:13:47 +01:00
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
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
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
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