1020 Commits

Author SHA1 Message Date
dependabot[bot]
cfd67d8da2 chore(deps): bump follow-redirects from 1.14.7 to 1.14.9
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.9.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.9)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-03 11:46:35 +02:00
dependabot[bot]
5a63a40164 chore(deps): bump minimist from 1.2.5 to 1.2.6
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-03 11:45:33 +02:00
dependabot[bot]
6a69414a95 chore(deps): bump ejs from 3.1.6 to 3.1.7
Bumps [ejs](https://github.com/mde/ejs) from 3.1.6 to 3.1.7.
- [Release notes](https://github.com/mde/ejs/releases)
- [Changelog](https://github.com/mde/ejs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mde/ejs/compare/v3.1.6...v3.1.7)

---
updated-dependencies:
- dependency-name: ejs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-03 11:43:52 +02:00
Jasper Vaneessen
0873005ca6 chore: add commit-msg hook 2022-05-03 11:11:26 +02:00
Jasper Vaneessen
c354f88f49 chore: add commitlinting and husky hook 2022-05-03 11:11:26 +02:00
Jasper Vaneessen
1af0f77977
chore: Enable dependabot for security only
* chore: enable dependabot for security only

* style: add newline
2022-04-27 09:12:30 +02:00
Jasper Vaneessen
6dd77cf8d8
test: Validate/test all default configs
* chore: add base script to test-run all configs

* chore: job for test-deploy

* chore: fine-tuning config validation

* chore: config validation fully functional

* chore: fix https-file-cli validation (missing var)

* fix: generate self-signed CA through openSSL

* chore: streamlining test script + review

* chore: validate-configs accepts config args

* chore: cleanup and best-practices

* chore: test-configs as precond + needs consistency

* chore: changes after review

* chore: fix argument variable expansion

* chore: more tweaks to script
2022-04-25 15:44:19 +02:00
Ruben Verborgh
50469e2c1f fix: Make delimiter encoding case-insensitive. 2022-04-25 10:09:46 +02:00
Wannes Kerckhove
dbdb9b424e fix: %2F not handled correctly in file backend #1184
Fix
2022-04-21 15:17:32 +02:00
Joachim Van Herwegen
3d6e3d2e39 chore: Drop support for Node 12 2022-04-21 14:54:12 +02:00
Joachim Van Herwegen
828f5ca457 docs: Update release documentation 2022-04-20 09:49:57 +02:00
Joachim Van Herwegen
3bea48ef20 chore: Update schedule.yml to use v5.0.0 branch 2022-04-20 09:26:42 +02:00
Joachim Van Herwegen
1c376cb23d Release version 4.0.0 of the npm package. v4.0.0 2022-04-19 15:24:03 +02:00
Joachim Van Herwegen
784bfc8c21 chore: Update configs to v4.0.0 2022-04-19 15:13:55 +02:00
Thomas Dupont
e2e2d0864f feat: add a Redis based Read-Write Locker
refactor: more elegant way of providing default attemptSettings to constructor

style(jsdoc): rewording of jsdoc comment

fix: RegExp(/regex/) => /regex/

fix: Replace Error with InternalServerError

docs: jsdoc for RedisReadWriteLocker class

feat: make RedisReadWriteLocker a ResourceLocker too

test: coverage back to 100%

refactor: linting fix

style(jsdoc): Add explanation to tryRedisFn() method

refactor: remove RedisResourceLocker

fix: bug in lua script

chore(deps): update ioredis, remove redlock

refactor: removed RedisResourceLocker in favor of generic RedisLocker class

test: add redis lua scripts tests and integrate all 3 redis integration tests in 1

refactor: remove .vscode folder from index

refactor: Add some typing and  change redis references to Redis in comments

refactor: more changes after PR review

refactor: remove redis.json

refactor: rename redis-rw.json to redis.json

docs: added readme and release notes
2022-04-19 13:52:31 +02:00
Joachim Van Herwegen
570e167a36 fix: Keep storage paths consistent with previous version 2022-04-19 11:52:56 +02:00
Joachim Van Herwegen
c0bc150122 test: Update CTH run to use client credentials 2022-04-15 11:35:00 +02:00
Joachim Van Herwegen
2ec8fabd54 feat: Add support for client_credentials authentication 2022-04-15 11:20:26 +02:00
Joachim Van Herwegen
bedab907f9 feat: Allow dynamically adding CLI parameters in configs 2022-04-15 10:56:05 +02:00
Joachim Van Herwegen
e6519992bf Merge branch 'main' into versions/4.0.0
# Conflicts:
#	test/unit/storage/accessors/FileDataAccessor.test.ts
2022-04-15 10:28:50 +02:00
Joachim Van Herwegen
30799f6667 fix: Add missing imports from default configs 2022-04-15 10:15:58 +02:00
Joachim Van Herwegen
4f7eec3200 docs: Mention metadata predicate change 2022-04-15 09:55:10 +02:00
Jasper Vaneessen
668d0a331f
feat: Only accept NamedNodes as predicates for metadata
* refactor: move toCachedNamedNode (private)

* chore: only NamedNodes predicates in removes

* feat: enforce NamedNode predicates in most cases

* feat: getAll only accepts NamedNodes

* feat: toCachedNamedNode only accepts string arg

* tests: use NamedNodes for getAll calls

* test: remove unnecessary string check for coverage

* tests: fix NamedNodes in new tests after rebase

* feat: metadatawriters store NamedNodes

* refactor: toCachedNamedNode as utility function

* fix: double write of linkRelMap

* test: use the CONTENT_TYPE constant
2022-04-15 09:53:39 +02:00
Joachim Van Herwegen
db906ae872 test: Add pod seeding integration test 2022-04-14 10:34:04 +02:00
Wannes Kerckhove
283c301f08 feat: new helper functions to replace regexes #807
Implemented new StringUtil helper functions: splitCommaSeparated, sanitizeUrlPart, isValidFileName.
Added helper functions to HeaderUtil: matchesAuthorizationScheme, hasScheme.
Added unit tests for the new helper functions.
Refactored codebase to use helper functions instead of regexes if applicable.
2022-04-13 11:26:07 +02:00
Jasper Vaneessen
fe39f97ee0
refactor: Use fs-extra instead of fs to simplify file access
* refactor: use fs-extra instead of fs

* tests: manual mocks for fs-extra base + ensureDir

* refactor: mockFileSystem + mockFs and mockFsExtra

* add remove mock and some further test tweaks

* test: FileDataAccessor tests passing

* refactor: remove try-catch due to fs-extra handlin

* refactor: fs-extra in atomicFileDataAccessor

* refactor: AtomicFileDataAccessor fs-extra

* test: fix coverage

* refactor: use read/writeJson from fs-extra

* refactor: less duplicate mocking code

* refactor: re-use opendir mocking code
2022-04-12 11:02:30 +02:00
Joachim Van Herwegen
1b7cc1ea3a Merge branch 'main' into versions/4.0.0
# Conflicts:
#	test/unit/util/errors/RedirectHttpError.test.ts
2022-04-11 10:21:49 +02:00
Joachim Van Herwegen
dd568869ca chore: Increase CI timeout to 15 minutes 2022-04-11 10:15:24 +02:00
Joachim Van Herwegen
559fe170dc docs: Add RedirectingHttpHandler entry to release notes 2022-04-11 10:02:23 +02:00
Joachim Van Herwegen
841ec2a3eb chore: Fix package-lock.json 2022-04-11 09:55:25 +02:00
Wouter Termont
468e11d906
feat: Add RedirectingHttpHandler
* feat: redirect handler

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* chore: rewrite reduction as loop

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* chore: remove example import

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* feat: add more redirect flavours

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* chore: RedirectingHttpHandler with RedirectAllHttpHandler

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* chore: replace RedirectAllHttpHandler with RedirectingHttpHandler

* chore: revert 5956385 (chore: replace RedirectAllHttpHandler with RedirectingHttpHandler)

This reverts commit 5956385c4180e8e8914b9199c4ed6ca8ae7d39fb.

* docs: complete constructor params

Signed-off-by: Wouter Termont <woutermont@gmail.com>
2022-04-11 09:49:36 +02:00
Ruben Verborgh
11bc657e68 docs: Fix new repo folder name. 2022-04-08 13:30:16 +01:00
wkerckho
d42125a91d
fix: Throw error when accessing URLs out of scope
* feat: allow OriginalUrlExtractor to be configured with an identifierStrategy. Included the existing parameter 'includeQueryString' in the OriginalUrlExtractorArgs type.

* test: fixed OriginalUrlExtractor instantiation in OriginalUrlExtractor and RequestParser tests

* fix: Server no longer warns when accessing a URL out of scope #1148

* test: updated tests broken by #1148 fix

* test: ensuring 100% coverage

Co-authored-by: Wannes Kerckhove <wannes.kerckhove@ugent.be>
2022-04-08 09:33:22 +02:00
Wouter Termont
5e6c42e1f8
fix: Restore eslint plugins
* fix: restore eslint plugins

Signed-off-by: Wouter Termont <woutermont@gmail.com>

* fix: re-fix eslint-config-es version
2022-04-05 17:37:07 +02:00
Joachim Van Herwegen
97e600bf4f fix: Undo authorization on OPTIONS requests 2022-04-04 13:35:15 +02:00
Thomas Dupont
48efc6fae1
feat: Create MetadataParser that detects JSON with Context link and throws an error
* feat: add PlainJsonLdFilter to reject JSON with context link

* refactor: abstract parseLinkHeader into HeaderUtils

* docs: typo in comment field

Co-authored-by: Ruben Verborgh <ruben@verborgh.org>

* refactor: Replace BadRequestHttpError with NotImplementedError

Co-authored-by: Ruben Verborgh <ruben@verborgh.org>

* refactor: incorporate requested changes

* refactor: requested changes incorporated

* refactor: remove obsolete code lines

Co-authored-by: Ruben Verborgh <ruben@verborgh.org>
2022-04-01 14:25:09 +02:00
Ruben Verborgh
3685b7c659 refactor: Make Logger an interface. 2022-04-01 14:18:58 +02:00
Ruben Verborgh
5c218193ab feat: Warn about UnsecureWebSocketsProtocol. 2022-04-01 14:18:58 +02:00
Ruben Verborgh
238570b3d2 feat: Make LazyLoggerFactory buffer messages. 2022-04-01 14:18:58 +02:00
Ruben Verborgh
2c6167e0cb feat: Remove meta parameter from logging. 2022-04-01 14:18:58 +02:00
Joachim Van Herwegen
ce5a98b16f test: Add integration test that simulates running 2 hours 2022-03-31 17:00:09 +02:00
Joachim Van Herwegen
f08cdf75f7 fix: Prevent expired storage cleanup from crashing the server 2022-03-31 17:00:09 +02:00
Joachim Van Herwegen
16e9368734 test: Add flushPromises utility function 2022-03-31 17:00:09 +02:00
Joachim Van Herwegen
76548011f2 fix: Support entries function in JsonResourceStorage 2022-03-31 17:00:09 +02:00
Joachim Van Herwegen
46132da8c2 chore: Add line about updating documentation to PR template 2022-03-29 15:40:06 +02:00
Joachim Van Herwegen
f089ffda47 docs: Integrate pod seeding documentation 2022-03-29 15:29:48 +02:00
Joachim Van Herwegen
641d39d4bc Merge branch 'main' into versions/4.0.0 2022-03-29 14:54:59 +02:00
Joachim Van Herwegen
6e98c6aae4 feat: Dynamically generate Allow and Accept-* headers 2022-03-29 14:52:36 +02:00
Joachim Van Herwegen
effc20a270 feat: Store methods in MethodNotAllowedHttpError 2022-03-29 14:52:36 +02:00
Joachim Van Herwegen
f3dedf4e27 feat: Add utility functions for generating error classes 2022-03-29 14:52:36 +02:00