Registry / devops / no-migration

no-migration

JSON →
library1.4.1jsnpmunverified

A CLI tool to manage migration changes and user changes separately for React Native miniapp projects. It helps maintain clean git history by separating migration-generated changes from manual code changes using snapshots and an exclude list. Version 1.4.1 is the latest stable release. The tool integrates with git commits, tracking files modified by migrations to keep them out of user commits. It is primarily designed for Momo miniapp developers and requires Node >=14.0.0. Key differentiators include automatic separation of changes, snapshot-based tracking, and scripts integration with package.json.

npm install no-migration
INSTALL
IMPORT
SIG · NO-MIGRATION
N
no-migration
devopsjavascriptv1.4.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
import migrationTool from 'nono-migration'
const migrationTool = require('nono-migration')
Package is ESM-only. TypeScript types are bundled.

Shows programmatic usage of the CLI tool via child_process, including migration, commit, and update commands.

import migrationTool from 'nono-migration'; import { execSync } from 'child_process'; async function main() { // Initialize migration (similar to CLI: nono migration) execSync('nono migration', { stdio: 'inherit' }); // After making changes, commit only user changes const commitMsg = process.env.COMMIT_MSG ?? 'fix(chat): SC-1 update profile'; execSync(`nono commit -m "${commitMsg}"`, { stdio: 'inherit' }); // Update migration tools execSync('nono update', { stdio: 'inherit' }); } main().catch(console.error);
Debug
Known issues
gotchaThe CLI command 'nono commit' must be used instead of 'git commit' to properly separate migration changes. Using plain 'git commit' will include all migration changes and break the separation logic.
fix
Use 'nono commit -m "message"' instead of 'git commit -m "message"'.
affects: >=1.0.0
gotchaThe .git-exclude-list file is automatically generated and should not be manually edited. Incorrect entries will cause the commit command to fail or misbehave.
fix
Do not edit .git-exclude-list manually; only modify user-changes.json or run 'nono migration' again.
affects: >=1.0.0
gotchaThe migration command updates ports from 8181 to 8182 if your package name is 'vn.momo.profile' or '@momo-mini-app/profile'. This may break other services expecting port 8181.
fix
Ensure other services are updated to use port 8182 or override the behavior by not using the default package name.
affects: >=1.4.0
deprecatedUsing 'git commit' after running 'nono migration' is deprecated; always use 'nono commit' to maintain separation.
fix
Replace any 'git commit' calls with 'nono commit' in scripts/documentation.
affects: >=1.0.0
breakingVersion 1.4.0 changed the snapshot format. Old snapshot files (migration-changes.json, user-changes.json) from prior versions may not be compatible and need to be regenerated.
fix
Delete old snapshot files and run 'nono migration' again to regenerate them.
affects: >=1.4.0
Errors
Common errors & fixes
ERROR: You need to run 'nono migration' first before committing.
Attempting to use 'nono commit' without first initializing migration.
fix
Run 'nono migration' in the project root before using any other commands.
TypeError: Cannot read properties of undefined (reading 'migration-changes')
Snapshot file migration-changes.json is missing or corrupted.
fix
Delete all tracking files (migration-changes.json, user-changes.json, .git-exclude-list) and run 'nono migration' again.
fatal: not a git repository (or any parent up to mount point /)
The command is run outside a Git repository.
fix
Initialize a Git repository first: 'git init' and then run 'nono migration'.
Upgrade
Version history
1.4.1latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
4 hits · last 30 days
node
4
Resources
no-migration — npm install no-migration · libregistry