sbs20 / scanservjs

SANE scanner nodejs web ui
https://sbs20.github.io/scanservjs/
GNU General Public License v2.0
686 stars 137 forks source link

Missing package `dayjs`, when using one of configuration recipes #693

Closed ceskyDJ closed 7 months ago

ceskyDJ commented 7 months ago

Describe the bug When I use this recipe (from https://sbs20.github.io/scanservjs/docs/12-recipes.html):

const dayjs = require('dayjs');
module.exports = {
  afterConfig(config) {
    config.filename = () => {
      return `my_filestem_${dayjs().format('DD-MM-YYYY HH-mm-ss')}`;
    };

    config.log.level = 'DEBUG';
  }
}

I have a problem with dependency dayjs. I followed guide for upgrading scanservjs from v2 to v3, so I removed npm and other related stuff (I practically just copy-pasted commands from guide on https://sbs20.github.io/scanservjs/docs/01-install.html). After that I copied old config.local.js and tried to restart scanservjs (it worked well before), but it failed:

Nov 14 00:29:45 flat.ceskydj.cz systemd[1]: Stopped scanservjs. Nov 14 00:29:45 flat.ceskydj.cz systemd[1]: Started scanservjs. Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: internal/modules/cjs/loader.js:818 Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: throw err; Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: ^ Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: Error: Cannot find module 'dayjs' Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: Require stack: Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: - /etc/scanservjs/config.local.js Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: - /usr/lib/scanservjs/server/classes/user-options.js Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: - /usr/lib/scanservjs/server/application.js Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: - /usr/lib/scanservjs/server/server.js Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Function.Module._load (internal/modules/cjs/loader.js:667:27) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Module.require (internal/modules/cjs/loader.js:887:19) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at require (internal/modules/cjs/helpers.js:74:18) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Object. (/etc/scanservjs/config.local.js:4:15) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Module._compile (internal/modules/cjs/loader.js:999:30) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Module.load (internal/modules/cjs/loader.js:863:32) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Function.Module._load (internal/modules/cjs/loader.js:708:14) Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: at Module.require (internal/modules/cjs/loader.js:887:19) { Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: code: 'MODULE_NOT_FOUND', Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: requireStack: [ Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: '/etc/scanservjs/config.local.js', Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: '/usr/lib/scanservjs/server/classes/user-options.js', Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: '/usr/lib/scanservjs/server/application.js', Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: '/usr/lib/scanservjs/server/server.js' Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: ] Nov 14 00:29:46 flat.ceskydj.cz server.js[3783915]: } Nov 14 00:29:46 flat.ceskydj.cz systemd[1]: scanservjs.service: Main process exited, code=exited, status=1/FAILURE Nov 14 00:29:46 flat.ceskydj.cz systemd[1]: scanservjs.service: Failed with result 'exit-code'. Nov 14 00:29:46 flat.ceskydj.cz systemd[1]: scanservjs.service: Scheduled restart job, restart counter is at 2. Nov 14 00:29:46 flat.ceskydj.cz systemd[1]: Stopped scanservjs. Nov 14 00:29:46 flat.ceskydj.cz systemd[1]: Started scanservjs.

It looks like the dayjs is missing, but I don't know how to resolve this (npm isn't used any more). Could you update the guide, please?

Server (please complete the following information):

ceskyDJ commented 7 months ago

Anyway, thanks for a huge update! It looks even better than before, so it's amazing! Installation worked like a charm, so I hope it will work well in the future.