741 Commits

Author SHA1 Message Date
Joachim Van Herwegen
23f0b37c28 feat: Change permission interface to store identifiers 2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
b5d5071403 feat: Add a SetMultiMap interface and implementation 2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
c35cd599a3 feat: Add a map that can check equality between object keys 2022-07-11 14:07:43 +02:00
Joachim Van Herwegen
45f8aa157d feat: Add utilities for Iterables 2022-07-11 14:07:43 +02:00
Thomas Dupont
31cdb20bce test: add test for env variable startup of apprunner 2022-07-07 14:29:17 +02:00
Thomas Dupont
311f8756ec fix: return contenttype header value string with parameters 2022-07-07 10:02:24 +02:00
Arthur Joppart
e0954cf2a7
feat: Rework ResourceStore to return extra info
* feat: change return types in ResourceStore.ts

* feat: change return types in BaseResourceStore.ts

* feat: change return types in LockingResourceStore.ts

* feat: change return types in RoutingResourceStore.ts

* feat: change return types in MonitoringStore.ts

* feat: change return types in PassthroughStore.ts

* feat: change return types in ReadOnlyStore.ts

* feat: change return types in PatchHandler.ts

* feat: change return types in PatchingStore.ts

* feat: change return types in RepresentationPatchHandler.ts

* feat: create createResourceIdentifier() function for convenience

* feat: adapt PostOperationHandler.ts to new typing

* feat: change return types in RepresentationConvertingStore.ts

* feat: adapt DataAccessorBasedStore.ts implementation to new typings

* feat: adapt UnsecureWebSocketsProtocol.ts to new typing

* chore: add temporary comments

* fix: return correct Location header on POST request with slug

* fix: npm run lint command needs more packages

* fix: linting errors

* chore: revert ed9952b

* test: adapt PostOperationHandler tests

* test: adapt UnsecureWebSocketsProtocol tests

* test: adapt DataAccessorBasedStore tests

* fix: linting errors

* feat: emit specific created, deleted, updated events in MonitoringStore

* test: adapt RepresentationPatchHandler tests

* fix: revert UnsecureWebSocketsProtocol changes

* feat: emit extra parameter on changed

* test: adapt MonitoringStore tests

* fix: linting errors

* test: add test to MonitorStore.test for coverage

* fix: linting error

* chore: update doc in ResourceStore.ts

* test: improve MonitoringStore tests

* chore: update RELEASE_NOTES.md

* chore: add extra info about the MonitoringStore to documentation/resource-store.md

* chore: Update RELEASE_NOTES.md

Co-authored-by: Anton Wiklund <ixuz07@gmail.com>

* chore: Update documentation/resource-store.md

Co-authored-by: Anton Wiklund <ixuz07@gmail.com>

* chore: very small changes

* chore: simplify metadata creation

* fix: DataAccessorBasedStore improvement and bugfix

* chore: improve resource-store.md

* chore: adapt MonitoringStore event names, update docs and apply code suggestion

* chore: use ResourceStoreResponse type

* fix: typo

* chore: rename ResourceStoreResponse type to ChangeMap

* chore: adapt .gitignore to name change

Co-authored-by: Anton Wiklund <ixuz07@gmail.com>
2022-07-06 14:40:28 +02:00
Wannes Kerckhove
1c65b06392 fix: Introducing initializers for handling lock cleanup on start 2022-07-06 10:00:15 +02:00
Joachim Van Herwegen
affcb7a7b3 Merge branch 'main' into versions/5.0.0
# Conflicts:
#	RELEASE_NOTES.md
#	config/quota-file.json
2022-07-04 13:53:17 +02:00
Thomas Dupont
9ecb769e09 fix: rdf convertors should not read or write plain JSON 2022-06-30 09:08:29 +02:00
Ruben Verborgh
ba40374c66 chore: Clarify error messages. 2022-06-23 15:55:21 +02:00
Ruben Verborgh
82f90709a6 fix: Use encrypted field to check for TLS. 2022-06-23 15:55:21 +02:00
Thomas Dupont
a99db00fb2 fix: remove workaround for cli parameters being turned into string 2022-06-01 11:00:06 +02:00
Joachim Van Herwegen
3f817b14b0 feat: Extend OIDC error descriptions 2022-06-01 10:05:36 +02:00
Joachim Van Herwegen
df0825936a feat: Parse Accept headers as early as possible 2022-06-01 10:05:36 +02:00
Thomas Dupont
dee08ebd89 fix: redislocker test 2022-06-01 09:13:29 +02:00
Joachim Van Herwegen
7e8c3bc0a0 Merge branch 'main' into versions/5.0.0 2022-05-24 10:40:27 +02:00
Jasper Vaneessen
2814e72b34
feat: Respect root path for static assets and HTML links
* feat: rootpath for static assets and links1

* fix: static asset handler respects root path

* fix: use rootPath for links

* tests: fix the tests after adding consuctor params

* feat: change matchregex instead of stored URLs

* feat: baseUrl for handlebar engine and templates

* feat: full baseUrl passed to templates

* test: fix integration tests + templates

* chore: implement requested changes

* docs: Describe TemplateEngine interface changes

Co-authored-by: Joachim Van Herwegen <joachimvh@gmail.com>
2022-05-24 10:20:41 +02:00
Thomas Dupont
c89cc4b395 fix: logging component logs as coming from a worker 2022-05-19 14:13:57 +02:00
Thomas Dupont
5399e75ae4 feat: regexRoutes stored as ordered array 2022-05-18 09:49:51 +02:00
Jasper Vaneessen
0a84230307
fix: Rewrite request with a root path to OIDC Provider
* fix(oidc): rewrite requests with rootpath

* fix: respect query parameters
2022-05-18 09:42:01 +02:00
Thomas Dupont
afed963a23 fix: revert ef6f01a 2022-05-17 13:20:04 +02:00
Thomas Dupont
5989a1fdc5 fix: revert 50dfea1
fix: revert ef6f01a
2022-05-17 13:20:04 +02:00
Jasper Vaneessen
7c6eae0ee6
chore: Use conventional changelog and automate config version bumps
* chore: add the reference change to npm version

* chore: remove unused require

* chore: add conventional-changelog

* chore: add git to pre-release config changes

* style: formatting

* chore: fix commit message

* chore: add no-verify to commit of configs

* chore: no more shellJs

* chore: fixing async

* chore: committing restored

* refactor: move and rename

* chore: remove shelljs devdep and old script

* chore: change npm script ref after refactor

* chore: upgrade-config code improvements

* chore: edit package.json (not package-lock)

* chore(changelog): use conventionalcommits preset

* chore: add conventional changelog config

* chore: use .versionrc directly

* chore: update changelog config

* chore: update .versionrc.json

* chore: use standard-version

* chore: change to standard version

* styling(changelog): remove a tags + formatting

* styling: conventiontal-changelog styling

* chore: postformatting of changelog

* chore: remove unnecessary dependencies

* chore: add upgrade-config to version as backup

* docs: update release.md

* styling: order scripts alphabetically

* docs: requested changes + dry-run explanation

* chore: release script to TS

* chore: use ts-node to execute the TS scripts

* docs: add some documentation comments to script

* docs: remove unnecessary newline

* docs: fix comment linting

* chore: add test/integration and templates configs

* chore: correct automated commit message

* chore: remove fdir dependency

* chore: remove manual-git-changelog dependency

* chore: impl requested changes

* docs: update script comments

* chore: ensure full cov

* chore: review comments
2022-05-17 11:36:12 +02:00
Joachim Van Herwegen
d290848096 fix: Accept client WebIDs with a context array 2022-05-17 10:34:29 +02:00
Thomas Dupont
236bbc6e5d feat: initial proposal for multithreaded execution 2022-05-16 10:15:37 +02:00
Wannes Kerckhove
13dbcb662b fix: prevent JsonResourceStorage from generating too long filenames 2022-05-12 10:01:16 +02:00
Wannes Kerckhove
fbbccb0cf1 fix: Stop creating meta files for each new resource #1217 2022-05-06 08:20:55 +02:00
Joachim Van Herwegen
77eeae9c9e chore: Update configs to v5.0.0 2022-05-05 11:20:53 +02:00
Wannes Kerckhove
ff80079000 feat: file-based backend fallback for unknown media types 2022-04-28 14:20:49 +02:00
Thomas Dupont
fa78bc6856 feat: add a process-/thread-safe file-based ResourceLocker
test: unit test succeeds

fix: not quiting loop when releasing unexisting lock

refactor: pull wait() function into TimerUtils

feat: store all locks inside a single lock folder

feat: use md5 hashing for filepath hashes

test: coverage back to 100%

fix: store locks in proper .internal/locks folder
feat: reworked tryfn

test: coverage back to 100%

buidl: package json types next to lib

style: linting

dos: add more documentation to Locker classes

refactor: SingleThreadedResourceLocker -> MemoryResourceLocker

refactor: MultiThreadedResourceLocker -> FileSystemResourceLocker

feat: update all file-based backend configs to use the new FileSystemResourceLocker

feat: add warning on starting the MemoryResourceLocker in a worker process

test: coverage back to 100%

fix: finalizer of file.json was configured wrong

docs: updated release notes for 5.0.0

refactor: incorporated changes so far

refactor: retryFunctions are less complex now

test: jitter fix
2022-04-28 14:12:30 +02:00
Joachim Van Herwegen
7e5483a36d Merge branch 'main' into versions/5.0.0 2022-04-25 16:03:19 +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
Joachim Van Herwegen
d2bc995272 refactor: Replace RedirectAllHttpHandler usage with RedirectingHttpHandler 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
6f4e70dbb9 fix: Change YargsCliExtractor structure to avoid Components.js issues 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
1de1f7c12a fix(deps): Update to Comunica v2 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
cfdd1221f0 fix: Always define @type in configs 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
ce27bec207 fix: Update prefixes in all configs 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
0e32d9ad9b fix: Fix typing issues with latest Components.js generator 2022-04-25 09:09:39 +02:00
Joachim Van Herwegen
58bc42994c chore: Update Node target to v14 in CTH tsconfig.json 2022-04-22 08:50:54 +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
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
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
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