diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ceed57a58..c4ba021d0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -124,7 +124,7 @@ jobs: - run: npm test - sqlite_better-sqlite3_sqljs: + better-sqlite3: runs-on: ubuntu-latest strategy: fail-fast: false @@ -137,7 +137,41 @@ jobs: steps: - uses: actions/checkout@v4 - run: npm i - - run: cp .github/workflows/test/sqlite-better-sqlite3-sqljs.ormconfig.json ormconfig.json + - run: cp .github/workflows/test/better-sqlite3.ormconfig.json ormconfig.json + - run: npm test + + + sqlite: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + node-container: ["node:18"] #["node:16", "node:18", "node:20", "node:22"] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + container: ${{ matrix.node-container }} + + steps: + - uses: actions/checkout@v4 + - run: npm i + - run: cp .github/workflows/test/sqlite.ormconfig.json ormconfig.json + - run: npm test + + + sqljs: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + node-container: ["node:18"] #["node:16", "node:18", "node:20", "node:22"] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + container: ${{ matrix.node-container }} + + steps: + - uses: actions/checkout@v4 + - run: npm i + - run: cp .github/workflows/test/sqljs.ormconfig.json ormconfig.json - run: npm test diff --git a/.github/workflows/test/better-sqlite3.ormconfig.json b/.github/workflows/test/better-sqlite3.ormconfig.json new file mode 100644 index 000000000..63836497d --- /dev/null +++ b/.github/workflows/test/better-sqlite3.ormconfig.json @@ -0,0 +1,21 @@ +[ + { + "skip": false, + "name": "better-sqlite3", + "type": "better-sqlite3", + "database": "temp/better-sqlite3db.db", + "logging": false + }, + + { + "skip": true, + "name": "postgres", + "type": "postgres", + "host": "postgres", + "port": 5432, + "username": "postgres", + "password": "postgres", + "database": "postgres", + "logging": false + } +] diff --git a/.github/workflows/test/sqlite-better-sqlite3-sqljs.ormconfig.json b/.github/workflows/test/sqlite.ormconfig.json similarity index 61% rename from .github/workflows/test/sqlite-better-sqlite3-sqljs.ormconfig.json rename to .github/workflows/test/sqlite.ormconfig.json index 47510470a..55a30706a 100644 --- a/.github/workflows/test/sqlite-better-sqlite3-sqljs.ormconfig.json +++ b/.github/workflows/test/sqlite.ormconfig.json @@ -1,10 +1,4 @@ [ - { - "skip": false, - "name": "sqljs", - "type": "sqljs", - "logging": false - }, { "skip": false, "name": "sqlite", @@ -13,13 +7,6 @@ "logging": false, "relationLoadStrategy": "join" }, - { - "skip": false, - "name": "better-sqlite3", - "type": "better-sqlite3", - "database": "temp/better-sqlite3db.db", - "logging": false - }, { "skip": true, diff --git a/.github/workflows/test/sqljs.ormconfig.json b/.github/workflows/test/sqljs.ormconfig.json new file mode 100644 index 000000000..897ada411 --- /dev/null +++ b/.github/workflows/test/sqljs.ormconfig.json @@ -0,0 +1,20 @@ +[ + { + "skip": false, + "name": "sqljs", + "type": "sqljs", + "logging": false + }, + + { + "skip": true, + "name": "postgres", + "type": "postgres", + "host": "postgres", + "port": 5432, + "username": "postgres", + "password": "postgres", + "database": "postgres", + "logging": false + } +] diff --git a/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts b/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts index d7fcc8ada..5375fa5ec 100644 --- a/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts +++ b/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts @@ -4,6 +4,7 @@ import { AbstractSqliteQueryRunner } from "../sqlite-abstract/AbstractSqliteQuer import { Broadcaster } from "../../subscriber/Broadcaster" import { BetterSqlite3Driver } from "./BetterSqlite3Driver" import { QueryResult } from "../../query-runner/QueryResult" +import { BroadcasterResult } from "../../subscriber/BroadcasterResult" /** * Runs queries on a single sqlite database connection. @@ -83,7 +84,14 @@ export class BetterSqlite3QueryRunner extends AbstractSqliteQueryRunner { const connection = this.driver.connection + const broadcasterResult = new BroadcasterResult() + this.driver.connection.logger.logQuery(query, parameters, this) + this.broadcaster.broadcastBeforeQueryEvent( + broadcasterResult, + query, + parameters, + ) const queryStartTime = +new Date() const stmt = await this.getStmt(query) @@ -121,6 +129,16 @@ export class BetterSqlite3QueryRunner extends AbstractSqliteQueryRunner { this, ) + this.broadcaster.broadcastAfterQueryEvent( + broadcasterResult, + query, + parameters, + true, + queryExecutionTime, + result.raw, + undefined, + ) + if (!useStructuredResult) { return result.raw }