mirror of
https://github.com/knex/knex.git
synced 2025-06-26 22:00:25 +00:00
Mysql2 require breaks with Node 12 (#5579)
This commit is contained in:
parent
5ffe289c33
commit
0f8bbe92b5
4
.github/workflows/unit-tests.yml
vendored
4
.github/workflows/unit-tests.yml
vendored
@ -37,6 +37,10 @@ jobs:
|
||||
- name: Run npm install
|
||||
run: npm install
|
||||
|
||||
- name: Run npm install mysql2@3.2.0 if Node 12.x
|
||||
run: npm install mysql2@3.2.0
|
||||
if: matrix.node-version == '12.x'
|
||||
|
||||
- run: npm run build
|
||||
|
||||
- name: Run Tests
|
||||
|
@ -14,6 +14,26 @@ class Client_MySQL2 extends Client_MySQL {
|
||||
_driver() {
|
||||
return require('mysql2');
|
||||
}
|
||||
|
||||
initializeDriver() {
|
||||
try {
|
||||
this.driver = this._driver();
|
||||
} catch (e) {
|
||||
let message = `Knex: run\n$ npm install ${this.driverName}`;
|
||||
|
||||
const nodeMajorVersion = process.version.replace(/^v/, '').split('.')[0];
|
||||
if (nodeMajorVersion <= 12) {
|
||||
message += `@3.2.0`;
|
||||
this.logger.error(
|
||||
'Mysql2 version 3.2.0 is the latest version to support Node.js 12 or lower.'
|
||||
);
|
||||
}
|
||||
message += ` --save`;
|
||||
this.logger.error(`${message}\n${e.message}\n${e.stack}`);
|
||||
throw new Error(`${message}\n${e.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
validateConnection(connection) {
|
||||
return (
|
||||
connection &&
|
||||
|
Loading…
x
Reference in New Issue
Block a user