Skip to main content

Postgres Migration Lock Lint

Runs the same checker as our npm package on a Node.js runtime that pip installs for you (nodejs-wheel-binaries) - no system Node.js needed. Your files are checked locally.

Postgres Migration Lint - locks and downtime (ALTER TABLE, CREATE INDEX) — finds the line

Names every statement in a Rails, Django or raw SQL migration that takes a table-blocking Postgres lock, and prints the non-blocking rewrite. 36 rules, PostgreSQL 12-17.

Install

pg-migration-lock-lint file

Node 18+. The same 36 rules as the VS Code extension, from a terminal or CI.

Free

  • Check the migration file you have open against all 36 rules and get the lock mode, the failure and the safe rewrite for every statement.
  • --rules lists every rule

With a licence ($29 once)

  • Check every migration in the workspace in one pass, export the review as Markdown or JSON for the change ticket, and fail CI on an exit code.
pg-migration-lock-lint --dir ./templates --report html --out report.html

Independent Postgres consultancies bill migration and lock review at $150/hour and up; this is one review, priced once.

Use from an AI agent (MCP)

Claude Code · Cursor · Windsurf · any MCP client - add to your MCP config:

{ "mcpServers": { "pg-migration-lock-lint": { "command": "pg-migration-lock-lint", "args": ["--mcp"] } } }

Tools: check_text and check_file (free) · check_dir (licence). The agent gets every finding with the line number.

Use in CI

- name: Postgres Migration Lock Lint
  run: pip install rulestamp-pg-migration-lock-lint && pg-migration-lock-lint --dir . --ci

The folder sweep, reports and CI mode need one licence — one payment, no subscription. Set READYSTACK_LICENSE=<key> or run --license <key> once.

Get a licence

Install (PyPI)

pip install rulestamp-pg-migration-lock-lint
pg-migration-lock-lint --help

Metadata

Release files for rulestamp-pg-migration-lock-lint 1.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rulestamp-pg-migration-lock-lint 1.0.7
File Size Uploaded
rulestamp_pg_migration_lock_lint-1.0.7.tar.gz 17.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rulestamp-pg-migration-lock-lint 1.0.7
File Interpreter ABI Platform
rulestamp_pg_migration_lock_lint-1.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 37.4 kB

Release files / rulestamp_pg_migration_lock_lint-1.0.7.tar.gz

Download URL rulestamp_pg_migration_lock_lint-1.0.7.tar.gz
Size 17.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ba5891c9d97b7cff2189a53c3e77796c2a4a471f3a67efffc7f3b83d0fc01e76
BLAKE2b-256 checksum
How to use checksums
ae99014075086d4278b12b8b26bafa051c0af585b0b0131ad792ae9ca51521ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / rulestamp_pg_migration_lock_lint-1.0.7-py3-none-any.whl

Download URL rulestamp_pg_migration_lock_lint-1.0.7-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9cbe9dd1152ef83f172bd06175b8d5785bb3a72b3421ba21f7decd34785a30bc
BLAKE2b-256 checksum
How to use checksums
658480820676718a14d18b5f96e02b8a65fc496fc7d3a77237fb2947279f37d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.0.7 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page