node-firebird
node-firebird copied to clipboard
deno
test.js:
import * as fb from "npm:node-firebird";
let options = {}; options.host = "localhost"; options.port = 3050; options.database = "test1"; options.user = "SYSDBA"; options.password = "masterkey";
fb.attach(options, function (err, db) { console.log("debug1"); });
deno run -A test.js
under deno callback is never called, under node.js works ok
Has anyone resolved this problem? Some silent error occurs on this line:
cb.response.removeAllListeners('error');
File: connection.js Line: 1799
I managed to trace the internal error that occurs, and the cause is a missing function 'removeAllListeners'. Now, how can we fix it?
TypeError: cb.response.removeAllListeners is not a function at exports.Connection.Connection.attach (file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:3687:21) at file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:1757:25 at cb (file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:3615:13) at doCallback (file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:1368:5) at file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:3140:21 at decodeResponse (file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:3419:24) at Socket. (file:///test/firebird/problem_deno/node_modules/.deno/[email protected]/node_modules/node-firebird/lib/index.js:3115:13) at Socket.emit (ext:deno_node/_stream.mjs:1851:9) at addChunk (ext:deno_node/_stream.mjs:2873:16) at readableAddChunk (ext:deno_node/_stream.mjs:2852:13) {stack: 'TypeError: cb.response.removeAllListeners is …eAddChunk (ext:deno_node/_stream.mjs:2852:13)', message: 'cb.response.removeAllListeners is not a function', __callSiteEvals: Array(10)}
I haven't tested it enough yet, but I at least got it working. Everywhere socket functions are used, I added ._socket. And I manually set it where I saw it was undefined. Example:
The solution, at least temporarily, may be along this way.
Great! I will test it and let you know
With the update to version 1.1.9, I had to redo the changes. I will attach the files here. I haven't done a full test yet, but it appears to be working.