diff --git a/.npm.release b/.npm.release index 65e2464..ba5bc21 100644 --- a/.npm.release +++ b/.npm.release @@ -1 +1 @@ -Sun Jan 15 01:13:51 CST 2023 +Sun Jan 15 02:20:06 CST 2023 diff --git a/package-lock.json b/package-lock.json index ba0e94c..fd9040e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "diskernet", - "version": "2.7.1", + "version": "2.8.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "diskernet", - "version": "2.7.1", + "version": "2.8.0", "license": "PolyForm Strict 1.0", "dependencies": { "@667/ps-list": "^1.1.3", diff --git a/package.json b/package.json index 812b4ea..c5ef41a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "diskernet", - "version": "2.7.1", + "version": "2.8.0", "type": "module", "description": "Library server and an archivist browser controller.", "main": "src/app.js", diff --git a/scripts/build_only.sh b/scripts/build_only.sh index 52505a6..a33551b 100755 --- a/scripts/build_only.sh +++ b/scripts/build_only.sh @@ -2,7 +2,7 @@ ./node_modules/.bin/esbuild src/app.js --bundle --outfile=dist/diskernet.mjs --format=esm --platform=node --minify --analyze ./node_modules/.bin/esbuild src/app.js --bundle --outfile=build/out.cjs --platform=node --minify --analyze -./node_modules/.bin/esbuild src/app.js --bundle --outfile=build/test.cjs --platform=node +#./node_modules/.bin/esbuild src/app.js --bundle --outfile=build/test.cjs --platform=node echo "#!/usr/bin/env node" > build/diskernet.cjs cat build/out.cjs >> build/diskernet.cjs chmod +x build/diskernet.cjs diff --git a/src/archivist.js b/src/archivist.js index 7741b76..2980616 100644 --- a/src/archivist.js +++ b/src/archivist.js @@ -211,8 +211,8 @@ async function collect({chrome_port:port, mode} = {}) { const {library_path} = args; const exitHandlers = []; - process.on('SIGUSR2', runHandlers); process.on('beforeExit', runHandlers); + process.on('SIGUSR2', code => runHandlers(code, 'SIGUSR2', {exit: true})); process.on('exit', code => runHandlers(code, 'exit', {exit: true})); State.connection = State.connection || await connect({port}); State.onExit = { diff --git a/src/common.js b/src/common.js index f680f4c..fe45657 100644 --- a/src/common.js +++ b/src/common.js @@ -2,6 +2,7 @@ import path from 'path'; import {fileURLToPath} from 'url'; import fs from 'fs'; import os from 'os'; +import {APP_ROOT as __ROOT} from './root.js'; const DEEB = false; @@ -13,6 +14,10 @@ export const DEBUG = { } export const SHOW_FETCH = false; +if ( DEBUG.debug ) { + console.log({APP_ROOT}); +} + // server related export const PUBLIC_SERVER = true; @@ -74,9 +79,7 @@ export const SNIP_CONTEXT = 31; export const NO_SANDBOX = (process.env.DEBUG_22120 && process.env.SET_22120_NO_SANDBOX) || false; -//export const APP_ROOT = '.'; -export const APP_ROOT = path.dirname(process.argv[0]); -//export const APP_ROOT = path.dirname(fileURLToPath(import.meta.url)); +export const APP_ROOT = __ROOT export const sleep = ms => new Promise(res => setTimeout(res, ms)); diff --git a/src/libraryServer.js b/src/libraryServer.js index 4a5fb8b..a11523f 100644 --- a/src/libraryServer.js +++ b/src/libraryServer.js @@ -68,7 +68,12 @@ async function start({server_port}) { throw err; } upAt = new Date; - say({server_up:{upAt,port}}); + say({server_up:{upAt,port, + ...(DEBUG.verboseSlow ? { + static_site_path: SITE_PATH, + app_root: APP_ROOT, + } : {}) + }}); }); } catch(e) { running = false; diff --git a/src/root.cjs b/src/root.cjs new file mode 100644 index 0000000..9d3dda9 --- /dev/null +++ b/src/root.cjs @@ -0,0 +1,15 @@ +const path = require('path'); +const url = require('url'); + +const file = __filename; +const dir = path.dirname(file); +const APP_ROOT = dir; + +console.log({APP_ROOT}); + +module.exports = { + APP_ROOT, + dir, + file +} + diff --git a/src/root.js b/src/root.js new file mode 100644 index 0000000..a92afd4 --- /dev/null +++ b/src/root.js @@ -0,0 +1,22 @@ +import path from 'path'; +import url from 'url'; + +let root; +let esm = false; + +try { + console.log(__dirname, __filename); +} catch(e) { + esm = true; +} + +if ( ! esm ) { + root = require('./root.cjs').APP_ROOT; +} else { + root = path.dirname(url.fileURLToPath(import.meta.url)); +} + +console.log({root}); + +export const APP_ROOT = root; +