new user's experience report
Hi there, just wanted to share what it took me (and what confused me) to make a development version of kotahi run. Unfortunately I can't fork your project here, so I add my suggestions as a patch.
First, on my system I can (and are forced to) use docker compose
instead of docker-compose
, but I am not sure when that changed, and obviously depends on your development system. Apart from that, I found that I needed to register with ORCID sandbox as authorization source first, because otherwise the server would throw an error, leaving it in broken state:
server_1 | info: Registered component ./server/auth-orcid
server_1 | (node:114) UnhandledPromiseRejectionWarning: TypeError: OAuth2Strategy requires a clientID option
server_1 | at Strategy.OAuth2Strategy (/home/node/app/node_modules/passport-oauth2/lib/strategy.js:86:34)
server_1 | at new Strategy (/home/node/app/node_modules/passport-orcid/lib/strategy.js:51:18)
server_1 | at module.exports (/home/node/app/server/auth-orcid/orcid.js:17:5)
server_1 | at registerRecursively (/home/node/app/node_modules/pubsweet-server/src/register-components.js:11:22)
server_1 | at /home/node/app/node_modules/pubsweet-server/src/register-components.js:22:7
server_1 | at Array.forEach (<anonymous>)
server_1 | at module.exports (/home/node/app/node_modules/pubsweet-server/src/register-components.js:21:39)
server_1 | at configureApp (/home/node/app/server/app.js:109:3)
server_1 | at startServer (/home/node/app/node_modules/pubsweet-server/src/start-server.js:30:25)
server_1 | at main (/home/node/app/startServer.js:7:3)
server_1 | at processTicksAndRejections (internal/process/task_queues.js:97:5)
server_1 | (node:114) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
server_1 | (node:114) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
client_1 | [HPM] Error occurred while trying to proxy request /subscriptions from 0.0.0.0:4000 to ws://server:3000 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)
Apart from that, it all worked fine so far. Thanks a lot for providing this code, I will now look into it.
A minor suggestion: on https://kotahi.community/features/ it says that there is a "kotahi 1.0", but I only saw tags with alpha and beta status. Is there a public release already or yet planned?
Best wishes, Robert
(this patch can be applied via git apply filename-to-patch
and builds upon commit 9474f3c9 ...)