Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to fix Cannot find module '@vscode/sqlite3' when running npx knex migrate:make test

Tags:

node.js

sqlite

When npx knex migrate:make executed this error pop up

Using environment: development
Knex: run
$ npm install sqlite3 --save
Cannot find module '@vscode/sqlite3'
Require stack:
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\internal\config-resolver.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\Knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js
Error: Cannot find module '@vscode/sqlite3'
Require stack:
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\internal\config-resolver.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\Knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
    at Function.Module._load (internal/modules/cjs/loader.js:746:27)
    at Module.require (internal/modules/cjs/loader.js:974:19)
    at require (internal/modules/cjs/helpers.js:93:18)
    at Client_SQLite3._driver (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js:32:12)
    at Client_SQLite3.initializeDriver (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\client.js:190:26)
    at new Client (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\client.js:75:12)
    at new Client_SQLite3 (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js:21:5)
    at knex (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\Knex.js:12:28)
    at initKnex (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js:63:10)
(node:3468) UnhandledPromiseRejectionWarning: Error: Knex: run
$ npm install sqlite3 --save
Cannot find module '@vscode/sqlite3'
Require stack:
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\internal\config-resolver.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\Knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\index.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\knex.js
- C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js
    at Client_SQLite3.initializeDriver (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\client.js:194:13)
    at new Client (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\client.js:75:12)
    at new Client_SQLite3 (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\dialects\sqlite3\index.js:21:5)
    at knex (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\lib\knex-builder\Knex.js:12:28)
    at initKnex (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js:63:10)
    at async Command.<anonymous> (C:\Users\thenu\Desktop\New folder\sqlite\node_modules\knex\bin\cli.js:208:24)       
(Use `node --trace-warnings ...` to show where the warning was created)
(node:3468) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:3468) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I have Installed sqlite3 .its shows on package.json file .

  "dependencies": {
    "express": "^4.17.2",
    "knex": "^1.0.1",
    "sqlite3": "^5.0.2"
  }

xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx

like image 464
heyiis Avatar asked Jan 23 '26 19:01

heyiis


2 Answers

It works on this version of knex

    "knex": "^0.95.15",
like image 86
heyiis Avatar answered Jan 26 '26 12:01

heyiis


I ran into this as well. Per the change log: https://knexjs.org/#changelog there was a breaking change at version 1.0.0. You now need to use @vscode/sqlite3(link) instead of sqlite3 npm package.

like image 39
Bryan Avatar answered Jan 26 '26 14:01

Bryan