switch to mariadb library

ok mdmck you can stop putting eggs in my mailbox now
This commit is contained in:
Elijah R
2024-08-04 15:30:19 -04:00
committed by Elijah R
parent b0c23c3cdf
commit 5aa842bb3e
3 changed files with 28 additions and 92 deletions

View File

@@ -17,9 +17,9 @@
"@maxmind/geoip2-node": "^5.0.0",
"execa": "^8.0.1",
"ip-address": "^9.0.5",
"mariadb": "^3.3.1",
"mnemonist": "^0.39.5",
"msgpackr": "^1.10.2",
"mysql2": "^3.11.0",
"pino": "^9.3.1",
"sharp": "^0.33.3",
"toml": "^3.0.0",

View File

@@ -1,17 +1,17 @@
import pino, { Logger } from "pino";
import { MySQLConfig } from "./IConfig";
import * as mysql from 'mysql2/promise';
import mariadb from 'mariadb';
export class Database {
cfg: MySQLConfig;
logger: Logger;
db: mysql.Pool;
db: mariadb.Pool;
constructor(config: MySQLConfig) {
this.cfg = config;
this.logger = pino({
name: "CVMTS.Database"
});
this.db = mysql.createPool({
this.db = mariadb.createPool({
host: this.cfg.host,
user: this.cfg.username,
password: this.cfg.password,
@@ -37,8 +37,8 @@ export class Database {
async isIPBanned(ip: string): Promise<boolean> {
let conn = await this.db.getConnection();
let res = (await conn.query('SELECT COUNT(ip) AS cnt FROM bans WHERE ip = ?', [ip])) as mysql.RowDataPacket;
let res = (await conn.query('SELECT COUNT(ip) AS cnt FROM bans WHERE ip = ?', [ip]));
conn.release();
return res[0][0]['cnt'] !== 0;
return res[0]['cnt'] !== 0n;
}
}

108
yarn.lock
View File

@@ -83,9 +83,9 @@ __metadata:
"@types/ws": "npm:^8.5.5"
execa: "npm:^8.0.1"
ip-address: "npm:^9.0.5"
mariadb: "npm:^3.3.1"
mnemonist: "npm:^0.39.5"
msgpackr: "npm:^1.10.2"
mysql2: "npm:^3.11.0"
pino: "npm:^9.3.1"
pino-pretty: "npm:^11.2.1"
prettier: "npm:^3.2.5"
@@ -1473,6 +1473,13 @@ __metadata:
languageName: node
linkType: hard
"@types/geojson@npm:^7946.0.14":
version: 7946.0.14
resolution: "@types/geojson@npm:7946.0.14"
checksum: 10c0/54f3997708fa2970c03eeb31f7e4540a0eb6387b15e9f8a60513a1409c23cafec8d618525404573468b59c6fecbfd053724b3327f7fca416729c26271d799f55
languageName: node
linkType: hard
"@types/jsbn@npm:^1.2.33":
version: 1.2.33
resolution: "@types/jsbn@npm:1.2.33"
@@ -1489,7 +1496,7 @@ __metadata:
languageName: node
linkType: hard
"@types/node@npm:^20.12.5, @types/node@npm:^20.14.10":
"@types/node@npm:^20.11.17, @types/node@npm:^20.12.5, @types/node@npm:^20.14.10":
version: 20.14.14
resolution: "@types/node@npm:20.14.14"
dependencies:
@@ -1619,13 +1626,6 @@ __metadata:
languageName: node
linkType: hard
"aws-ssl-profiles@npm:^1.1.1":
version: 1.1.1
resolution: "aws-ssl-profiles@npm:1.1.1"
checksum: 10c0/a2889bae943fed1629350cbe7979e9da507c89c57b554b159844f369fa92bd9b0a344e63540f40770a0957d4f58f80a98a83c300cd86b163d3f30cbdc7edb8bd
languageName: node
linkType: hard
"balanced-match@npm:^1.0.0":
version: 1.0.2
resolution: "balanced-match@npm:1.0.2"
@@ -2292,15 +2292,6 @@ __metadata:
languageName: node
linkType: hard
"generate-function@npm:^2.3.1":
version: 2.3.1
resolution: "generate-function@npm:2.3.1"
dependencies:
is-property: "npm:^1.0.2"
checksum: 10c0/4645cf1da90375e46a6f1dc51abc9933e5eafa4cd1a44c2f7e3909a30a4e9a1a08c14cd7d5b32da039da2dba2a085e1ed4597b580c196c3245b2d35d8bc0de5d
languageName: node
linkType: hard
"get-port@npm:^4.2.0":
version: 4.2.0
resolution: "get-port@npm:4.2.0"
@@ -2610,13 +2601,6 @@ __metadata:
languageName: node
linkType: hard
"is-property@npm:^1.0.2":
version: 1.0.2
resolution: "is-property@npm:1.0.2"
checksum: 10c0/33ab65a136e4ba3f74d4f7d9d2a013f1bd207082e11cedb160698e8d5394644e873c39668d112a402175ccbc58a087cef87198ed46829dbddb479115a0257283
languageName: node
linkType: hard
"is-stream@npm:^3.0.0":
version: 3.0.0
resolution: "is-stream@npm:3.0.0"
@@ -2873,13 +2857,6 @@ __metadata:
languageName: node
linkType: hard
"long@npm:^5.2.1":
version: 5.2.3
resolution: "long@npm:5.2.3"
checksum: 10c0/6a0da658f5ef683b90330b1af76f06790c623e148222da9d75b60e266bbf88f803232dd21464575681638894a84091616e7f89557aa087fd14116c0f4e0e43d9
languageName: node
linkType: hard
"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0":
version: 10.4.3
resolution: "lru-cache@npm:10.4.3"
@@ -2894,20 +2871,6 @@ __metadata:
languageName: node
linkType: hard
"lru-cache@npm:^7.14.1":
version: 7.18.3
resolution: "lru-cache@npm:7.18.3"
checksum: 10c0/b3a452b491433db885beed95041eb104c157ef7794b9c9b4d647be503be91769d11206bb573849a16b4cc0d03cbd15ffd22df7960997788b74c1d399ac7a4fed
languageName: node
linkType: hard
"lru-cache@npm:^8.0.0":
version: 8.0.5
resolution: "lru-cache@npm:8.0.5"
checksum: 10c0/cd95a9c38497611c5a6453de39a881f6eb5865851a2a01b5f14104ff3fee515362a7b1e7de28606028f423802910ba05bdb8ae1aa7b0d54eae70c92f0cec10b2
languageName: node
linkType: hard
"make-fetch-happen@npm:^13.0.0":
version: 13.0.1
resolution: "make-fetch-happen@npm:13.0.1"
@@ -2928,6 +2891,19 @@ __metadata:
languageName: node
linkType: hard
"mariadb@npm:^3.3.1":
version: 3.3.1
resolution: "mariadb@npm:3.3.1"
dependencies:
"@types/geojson": "npm:^7946.0.14"
"@types/node": "npm:^20.11.17"
denque: "npm:^2.1.0"
iconv-lite: "npm:^0.6.3"
lru-cache: "npm:^10.2.0"
checksum: 10c0/980358fd69be905b1f8e69a685c70bc8c7accedac3ab6aff8742e3f3dec649b7cedb060d7c834a460fc6c48f56eca2125b0fcb9e64198cbb54c69a85c3fdc9ee
languageName: node
linkType: hard
"maxmind@npm:^4.2.0":
version: 4.3.21
resolution: "maxmind@npm:4.3.21"
@@ -3153,32 +3129,6 @@ __metadata:
languageName: node
linkType: hard
"mysql2@npm:^3.11.0":
version: 3.11.0
resolution: "mysql2@npm:3.11.0"
dependencies:
aws-ssl-profiles: "npm:^1.1.1"
denque: "npm:^2.1.0"
generate-function: "npm:^2.3.1"
iconv-lite: "npm:^0.6.3"
long: "npm:^5.2.1"
lru-cache: "npm:^8.0.0"
named-placeholders: "npm:^1.1.3"
seq-queue: "npm:^0.0.5"
sqlstring: "npm:^2.3.2"
checksum: 10c0/7cc408ecfce01cda0692e72879e9812855a91b03940ac4e8acb715c55f25f8d262a05df5fe25fe3b707a1f40a61e68cde5c3e00b6a81343b00f9595bd4adc790
languageName: node
linkType: hard
"named-placeholders@npm:^1.1.3":
version: 1.1.3
resolution: "named-placeholders@npm:1.1.3"
dependencies:
lru-cache: "npm:^7.14.1"
checksum: 10c0/cd83b4bbdf358b2285e3c51260fac2039c9d0546632b8a856b3eeabd3bfb3d5b597507ab319b97c281a4a70d748f38bc66fa218a61cb44f55ad997ad5d9c9935
languageName: node
linkType: hard
"negotiator@npm:^0.6.3":
version: 0.6.3
resolution: "negotiator@npm:0.6.3"
@@ -3737,13 +3687,6 @@ __metadata:
languageName: node
linkType: hard
"seq-queue@npm:^0.0.5":
version: 0.0.5
resolution: "seq-queue@npm:0.0.5"
checksum: 10c0/ec870fc392f0e6e99ec0e551c3041c1a66144d1580efabae7358e572de127b0ad2f844c95a4861d2e6203f836adea4c8196345b37bed55331ead8f22d99ac84c
languageName: node
linkType: hard
"sharp@npm:^0.33.3":
version: 0.33.4
resolution: "sharp@npm:0.33.4"
@@ -3910,13 +3853,6 @@ __metadata:
languageName: node
linkType: hard
"sqlstring@npm:^2.3.2":
version: 2.3.3
resolution: "sqlstring@npm:2.3.3"
checksum: 10c0/3b5dd7badb3d6312f494cfa6c9a381ee630fbe3dbd571c4c9eb8ecdb99a7bf5a1f7a5043191d768797f6b3c04eed5958ac6a5f948b998f0a138294c6d3125fbd
languageName: node
linkType: hard
"srcset@npm:4":
version: 4.0.0
resolution: "srcset@npm:4.0.0"