{"id":42825,"library":"grunt-sails-mysql-transit","title":"Grunt task for Sails MySQL migration","description":"Grunt task that automigrates changes from Sails.js models to a MySQL/MariaDB database. Version 0.1.9 is the latest stable release; the package has not been updated since 2016 and appears to be unmaintained. It uses sequelize ORM for database introspection but claims to work with Waterline. Differentiators: integrates directly into Grunt workflow, handles automatic table/field creation and alteration, respects interactive mode for safety. Note: there is a known limitation—cannot drop fields with constraints (manual removal of keys is required).","status":"abandoned","version":"0.1.9","language":"javascript","source_language":"en","source_url":"https://github.com/AGCPartners/grunt-sails-mysql-transit","tags":["javascript","grunt","mysql","mariadb","automigration","migration"],"install":[{"cmd":"npm install grunt-sails-mysql-transit","lang":"bash","label":"npm"},{"cmd":"yarn add grunt-sails-mysql-transit","lang":"bash","label":"yarn"},{"cmd":"pnpm add grunt-sails-mysql-transit","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"core migration logic","package":"mysql-transit","optional":false}],"imports":[{"note":"The package is a Grunt plugin; you register it via loadNpmTasks, not direct require.","wrong":"require('grunt-sails-mysql-transit')","symbol":"grunt task","correct":"grunt.loadNpmTasks('grunt-sails-mysql-transit');"}],"quickstart":{"code":"// Install\nnpm install grunt-sails-mysql-transit --save-dev\n\n// In Gruntfile.js or tasks/config/migrate.js:\nmodule.exports = function(grunt) {\n  grunt.config.set('smTransit', {\n    mysql: true\n  });\n  grunt.loadNpmTasks('grunt-sails-mysql-transit');\n};\n\n// In tasks/register/migrate.js:\nmodule.exports = function (grunt) {\n  grunt.registerTask('migrate', [\n    'smTransit'\n  ]);\n};\n\n// Run with optional params:\ngrunt migrate --interactive=true --env=production","lang":"javascript","description":"Configures and registers the grunt task, then runs migration with interactive mode and environment selection."},"warnings":[{"fix":"Consider using an alternative migration tool for Sails.js or sequelize directly.","message":"Package is no longer maintained; may not work with modern Node.js versions.","severity":"deprecated","affected_versions":">=0.1.9"},{"fix":"Manually remove constraints on the field before running the migration.","message":"Cannot remove fields with constraints (primary key, foreign key); must drop constraints manually first.","severity":"gotcha","affected_versions":"all"},{"fix":"Test your models thoroughly after migration.","message":"Uses sequelize ORM under the hood; may behave differently with Waterline or custom adapter configurations.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.1.9':20 '2016':33 'alter':63 'appear':35 'automat':59 'automigr':10,90 'cannot':75 'chang':11 'claim':47 'constraint':79 'creation':61 'databas':18,44 'differenti':52 'direct':54 'drop':76 'field':77 'grunt':1,7,56,87 'handl':58 'integr':53 'interact':65 'introspect':45 'javascript':86 'key':83 'known':73 'latest':23 'limit':74 'manual':80 'mariadb':89 'migrat':6,91 'mode':66 'model':14 'mysql':5,88 'mysql/mariadb':17 'note':69 'orm':42 'packag':27 'releas':25 'remov':81 'requir':85 'respect':64 'safeti':68 'sail':4 'sails.js':13 'sequel':41 'sinc':32 'stabl':24 'table/field':60 'task':2,8 'unmaintain':38 'updat':31 'use':40 'version':19 'waterlin':51 'work':49 'workflow':57","created_at":"2026-06-05T16:56:50.882820+00:00","updated_at":"2026-06-05T16:56:50.882820+00:00","problems":[{"fix":"Ensure you have placed 'grunt.loadNpmTasks(\"grunt-sails-mysql-transit\");' in your Grunt configuration.","cause":"Grunt task not registered or loadNpmTasks not called.","error":"Warning: Task \"smTransit\" not found. Use --force to continue."},{"fix":"Run 'npm install mysql-transit' in your project.","cause":"Missing peer dependency mysql-transit.","error":"Cannot find module 'mysql-transit'"},{"fix":"Start MySQL service and verify your database connection settings in config/env/production.js (or appropriate file).","cause":"MySQL server is not running or connection config is wrong.","error":"Error: connect ECONNREFUSED"}],"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://github.com/AGCPartners/grunt-sails-mysql-transit","github":"https://github.com/AGCPartners/grunt-sails-mysql-transit","docs":null,"changelog":null,"pypi":null,"npm":"grunt-sails-mysql-transit","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database","devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-05","next_check":"2026-09-03","install_tag":null}}