core: add wtfnode open handle detect

pull/30/head
undefined 4 years ago
parent c16a1248a0
commit 395b8bead8

@ -4,6 +4,7 @@
"workspaces": [
"packages/*"
],
"main": "package.json",
"scripts": {
"build": "node build/build.js",
"build:watch": "node build/build.js --watch",

@ -1 +1 @@
Subproject commit 627cbb9437268b82a74c6fabb85e3480ec6ad1fc
Subproject commit 88b1f57a84f4db58489fec74897cdd961d35c1a5

@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "2.13.58",
"version": "2.13.59",
"bin": "bin/hydrooj.js",
"main": "dist/loader.js",
"typings": "dist/loader.d.ts",
@ -32,6 +32,7 @@
"superagent": "^6.1.0",
"supports-color": "^7.2.0",
"systeminformation": "^4.30.1",
"wtfnode": "^0.8.4",
"yargs": "^16.1.1"
},
"devDependencies": {
@ -49,6 +50,7 @@
"@types/sockjs": "^0.3.32",
"@types/superagent": "^4.1.8",
"@types/supports-color": "^7.2.0",
"@types/wtfnode": "^0.7.0",
"@types/yargs": "^15.0.10"
},
"scripts": {

@ -6,6 +6,7 @@ import './interface';
import os from 'os';
import path from 'path';
import cluster from 'cluster';
import wtfnode from 'wtfnode';
import fs from 'fs-extra';
import { argv } from 'yargs';
import AdmZip from 'adm-zip';
@ -47,9 +48,13 @@ import { Logger } from './logger';
import * as bus from './service/bus';
const logger = new Logger('loader');
wtfnode.setLogger('error', logger.error.bind(logger));
wtfnode.setLogger('warn', logger.warn.bind(logger));
wtfnode.setLogger('info', logger.info.bind(logger));
logger.debug('%o', argv);
async function terminate() {
wtfnode.dump();
try {
await bus.parallel('app/exit');
} catch (e) {
@ -156,7 +161,7 @@ export function addon(addonPath: string) {
if (fs.existsSync(publicPath)) fs.copySync(publicPath, publicTemp);
global.addons.push(modulePath);
} catch (e) {
throw new Error(`Addon not found: ${addonPath}`);
logger.error(`Addon not found: ${addonPath}`);
}
} else if (modulePath.endsWith('.hydro')) {
try {
@ -180,7 +185,7 @@ export function addon(addonPath: string) {
logger.error('Addon load fail: ', e);
throw e;
}
} else throw new Error(`Addon not found: ${addonPath}`);
} else logger.error(`Addon not found: ${addonPath}`);
}
process.on('unhandledRejection', logger.error);

@ -140,6 +140,7 @@ SystemSetting(
Setting('setting_session', 'session.unsaved_expire_seconds', null, 3600 * 3, 'number', 'Unsaved session expire seconds'),
Setting('setting_storage', 'db.ver', null, 0, 'number', 'Database version', null, FLAG_DISABLED | FLAG_HIDDEN),
Setting('setting_storage', 'user', null, 1, 'number', 'User Counter', null, FLAG_DISABLED | FLAG_HIDDEN),
Setting('setting_storage', 'installid', null, String.random(64), 'text', 'Installation ID', null, FLAG_HIDDEN | FLAG_DISABLED),
);
bus.once('app/started', async () => {

Loading…
Cancel
Save