{"id":47375,"library":"data-migration","title":"data-migration","description":"data-migration v2.17.0 provides interfaces and utilities for creating database migration drivers and processors. It includes SQL file support for up/down scripts, TypeScript types, and integrates with Lerna for monorepo management. Released under ISC license, it is actively maintained on GitHub with a weekly download rate. Differentiators include a simple API for custom drivers and built-in SQL task abstraction.","status":"active","version":"2.17.0","language":"javascript","source_language":"en","source_url":"https://github.com/theBenForce/data-migration","tags":["javascript","typescript"],"install":[{"cmd":"npm install data-migration","lang":"bash","label":"npm"},{"cmd":"yarn add data-migration","lang":"bash","label":"yarn"},{"cmd":"pnpm add data-migration","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"TypeScript types are shipped, but the package itself may be used with JavaScript.","package":"typescript","optional":true}],"imports":[{"note":"ESM import is preferred; TypeScript types included.","wrong":"const { MigrationScript } = require('data-migration')","symbol":"MigrationScript","correct":"import { MigrationScript } from 'data-migration'"},{"note":"SqlFile is not exported from the main entry; must import from subpath.","wrong":"import { SqlFile } from 'data-migration'","symbol":"SqlFile","correct":"import { SqlFile } from 'data-migration/lib/tasks/sql'"},{"note":"For ESM modules, use default export with MigrationScript type assertion.","wrong":"module.exports = { ... };","symbol":"default (migration script)","correct":"export default { ... } as MigrationScript;"}],"quickstart":{"code":"import { MigrationScript } from 'data-migration';\nimport { SqlFile } from 'data-migration/lib/tasks/sql';\nimport * as path from 'path';\n\nconst script: MigrationScript = {\n  description: 'Create users table',\n  ...SqlFile({\n    driverName: 'PgDriver',\n    upFile: path.resolve(__dirname, './sql/up.sql'),\n    downFile: path.resolve(__dirname, './sql/down.sql'),\n  }),\n};\n\nexport default script;","lang":"typescript","description":"Defines a migration script using SqlFile task with up/down SQL files."},"warnings":[{"fix":"Use correct import path: import { SqlFile } from 'data-migration/lib/tasks/sql'","message":"SqlFile is not exported from the main package entry. Import from 'data-migration/lib/tasks/sql'.","severity":"gotcha","affected_versions":">=2.0.0"},{"fix":"Use SqlFile task with file paths or inline SQL strings.","message":"The 'downSql' and 'upSql' string properties on MigrationScript may be deprecated in favor of SqlFile task.","severity":"deprecated","affected_versions":">=2.0.0"},{"fix":"Check driver documentation for correct name.","message":"Ensure your driver names match exactly (e.g., 'PgDriver', 'MysqlDriver'). Case-sensitive.","severity":"gotcha","affected_versions":">=2.0.0"}],"env_vars":null,"search_vec":"'abstract':65 'activ':42 'api':55 'built':61 'built-in':60 'creat':13 'custom':57 'data':2,5 'data-migr':1,4 'databas':14 'differenti':51 'download':49 'driver':16,58 'file':22 'github':45 'includ':20,52 'integr':30 'interfac':9 'isc':38 'javascript':66 'lerna':32 'licens':39 'maintain':43 'manag':35 'migrat':3,6,15 'monorepo':34 'processor':18 'provid':8 'rate':50 'releas':36 'script':26 'simpl':54 'sql':21,63 'support':23 'task':64 'type':28 'typescript':27,67 'up/down':25 'util':11 'v2.17.0':7 'week':48","created_at":"2026-06-07T16:51:12.799808+00:00","updated_at":"2026-06-07T16:51:12.799808+00:00","problems":[{"fix":"Use import { SqlFile } from 'data-migration/lib/tasks/sql'","cause":"Missing or incorrect import path.","error":"Cannot find module 'data-migration/lib/tasks/sql'"},{"fix":"Ensure correct import: import { SqlFile } from 'data-migration/lib/tasks/sql'","cause":"Importing SqlFile from wrong path or not using named import.","error":"TypeError: SqlFile is not a function"},{"fix":"Use SqlFile task with upFile and downFile.","cause":"Using deprecated string properties instead of SqlFile task.","error":"Property 'upSql' does not exist on type 'MigrationScript'."}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://data-migration.js.org","github":"https://github.com/theBenForce/data-migration","docs":null,"changelog":null,"pypi":null,"npm":"data-migration","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}