rdf-connect / LDES-Solid-Server

An implementation of an LDES server built within the Community Solid Server
4 stars 1 forks source link

Windows cannot build and run ldes-solid-server from repo #7

Open woutslabbinck opened 1 year ago

woutslabbinck commented 1 year ago

Currently, it is not possible to run this project from the github repository on a windows machine (tested with windows 10).

Following steps were executed to get this behaviour:

git clone https://github.com/TREEcg/LDES-Solid-Server.git
cd LDES-Solid-Server
npm i
npm run build

Building results in the following error:

PS C:\<dir>\ldes\LDES-Solid-Server> npm run build

> ldes-solid-server@0.0.7 build
> npm run build:ts && npm run build:components

> ldes-solid-server@0.0.7 build:ts
> tsc

error TS2688: Cannot find type definition file for 'fs-capacitor'.
  The file is in the program because:
    Entry point for implicit type library 'fs-capacitor'

error TS2688: Cannot find type definition file for 'glob'.
  The file is in the program because:
    Entry point for implicit type library 'glob'

error TS2688: Cannot find type definition file for 'long'.
  The file is in the program because:
    Entry point for implicit type library 'long'

error TS2688: Cannot find type definition file for 'minimatch'.
  The file is in the program because:
    Entry point for implicit type library 'minimatch'

error TS2688: Cannot find type definition file for 'zen-observable'.
  The file is in the program because:
    Entry point for implicit type library 'zen-observable'

Found 5 errors.

Then going to server and trying to run the ldes-solid-server also fails:

cd server
npm i
npm start

This results in the following error:

PS C:\<dir>\ldes\LDES-Solid-Server\server> npm start

> server@1.0.0 start
> npx community-solid-server -c ./examples/config-ldes.json

oidc-provider WARNING: Unsupported Node.js runtime version. Use ^12.19.0, ^14.15.0, or ^16.13.0
2023-04-14T08:39:03.480Z [Components.js] info: Initiating component discovery from C:/Users/wouts/Documents/Universiteit/Doctoraat/ldes/LDES-Solid-Server/server/node_modules/@solid/community-server/
node ./bin/server.js [args]

Options:
      --version         Show version number                            [boolean]
  -c, --config                                                 [array] [default:
  ["C:/Users/wouts/Documents/Universiteit/Doctoraat/ldes/LDES-Solid-Server/serve
                   r/node_modules/@solid/community-server/config/default.json"]]
  -l, --loggingLevel
        [string] [choices: "error", "warn", "info", "verbose", "debug", "silly"]
                                                               [default: "info"]
  -m, --mainModulePath                                                  [string]

Could not build the config files from C:/Users/wouts/Documents/Universiteit/Doctoraat/ldes/LDES-Solid-Server/server/examples/config-ldes.json
Cause: ENOENT: no such file or directory, open 'C:\<dir>\ldes\LDES-Solid-Server\dist\components\context.jsonld'
Error: ENOENT: no such file or directory, open 'C:\<dir>\ldes\LDES-Solid-Server\dist\components\context.jsonld'
woutslabbinck commented 1 year ago

It is however possible to run the server when doing the following:

npm i ldes-solid-server

npx community-solid-server -c .\config-ldes.json

For this, the config url of the mongo DB url also had to be changed. Otherwise, following error is retrieved when trying to connect to mongoDB: MongoServerSelectionError: connect ECONNREFUSED ::1:27017 Replacing localhost with 127.0.0.1 fixed this problem. This was also an issue made on the mongodb forum: Econnrefused error

So in an ldes-config "dbUrl": "mongodb://localhost:27017/ldes2" MUST be replaced with "dbUrl": "mongodb:// 127.0.0.1:27017/ldes2".

Tested with node v18.16.0 and mongodb version 6.0.5 on windows 10.

Ingesting

For ingesting members, I also had to replace localhost agin with 127.0.0.1. Furthermore, I also had to npm install them instead of using the github repositories.

Github repo tested: https://github.com/TREEcg/LDES-timeseries