Handler.close() logs error and hangs when no agents were created
claabs opened this issue · 0 comments
claabs commented
A followup on #370
If a handler is created, but never used (creates an agent), it will log an error and prevent the parent process from exiting (hangs).
Here's the reproduction code:
import { Handler } from 'secret-agent';
async function main() {
const handler = new Handler();
await handler.close();
}
main().then(() => console.log('complete'));
Which outputs:
complete
2021-11-28T00:22:05.635Z ERROR [/home/demo/node_modules/@secret-agent/client/connections/ConnectionFactory] Error connecting to core { context: {}, sessionId: null, sessionName: undefined } DisconnectedFromCore: This Agent has been disconnected from Core (coreHost: undefined)
at RemoteConnectionToCore.internalDisconnect (/home/demo/node_modules/client/connections/ConnectionToCore.ts:235:37)
at RemoteConnectionToCore.disconnect (/home/demo/node_modules/client/connections/ConnectionToCore.ts:129:16)
at /home/demo/node_modules/client/lib/Handler.ts:176:51
at Array.map (<anonymous>)
at Handler.close (/home/demo/node_modules/client/lib/Handler.ts:176:40)
at main (/home/demo/src/repro.ts:5:17)
at Object.<anonymous> (/home/demo/src/repro.ts:8:1)
at Module._compile (node:internal/modules/cjs/loader:1101:14)
at Module.m._compile (/home/demo/node_modules/ts-node/src/index.ts:1371:23)
at Module._extensions..js (node:internal/modules/cjs/loader:1153:10) {
coreHost: undefined,
code: 'DisconnectedFromCore'
}
Should I be checking for something before deciding to close a handler?