Skip to content

Pgmig

v0.0.4 Feature

This release adds 4 notable features for engineering teams evaluating rollout.

Published 14d Relational Databases
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Summary

AI summary

Updates feat, refactor, and fix across a mixed release.

Changes in this release

Feature Medium

Adds pgmig CLI with a generate command.

Adds pgmig CLI with a generate command.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for enum types (create, drop, ADD VALUE).

Adds diff support for enum types (create, drop, ADD VALUE).

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for triggers.

Adds diff support for triggers.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for foreign keys (basic).

Adds diff support for foreign keys (basic).

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for standalone sequences.

Adds diff support for standalone sequences.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for check constraints.

Adds diff support for check constraints.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for primary key and unique constraints.

Adds diff support for primary key and unique constraints.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for column comments.

Adds diff support for column comments.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Medium

Adds diff support for column NOT NULL and DEFAULT attributes.

Adds diff support for column NOT NULL and DEFAULT attributes.

Source: llm_adapter@2026-07-18

Confidence: high

Feature Low

Adds diff support for table column add/drop operations on existing tables.

Adds diff support for table column add/drop operations on existing tables.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Feature Low

Emits serial columns as a special pseudo-type in diffs.

Emits serial columns as a special pseudo-type in diffs.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Feature Low

Adds diff support for comments on non‑table objects (e.g., indexes, constraints).

Adds diff support for comments on non‑table objects (e.g., indexes, constraints).

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Bugfix Medium

Fixes latent KeyError when filtering index/constraint queries by relkind.

Fixes latent KeyError when filtering index/constraint queries by relkind.

Source: llm_adapter@2026-07-18

Confidence: high

Bugfix Low

Drops foreign keys referencing dropped tables during FK phase processing.

Drops foreign keys referencing dropped tables during FK phase processing.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Bugfix Low

Introspects table columns in their physical storage order rather than alphabetically.

Introspects table columns in their physical storage order rather than alphabetically.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Bugfix Low

Raises an error on unsupported column type or identity changes during diffing.

Raises an error on unsupported column type or identity changes during diffing.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Bugfix Low

Excludes extension‑owned tables from introspection results.

Excludes extension‑owned tables from introspection results.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Unifies index and constraint rename detection into a shared routine.

Unifies index and constraint rename detection into a shared routine.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Introduces phase‑tagged statement ordering for generated migrations.

Introduces phase‑tagged statement ordering for generated migrations.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Moves build_db_info SQL queries into dedicated build_queries/*.sql files.

Moves build_db_info SQL queries into dedicated build_queries/*.sql files.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Adds table and schema pair walkers to simplify traversal logic.

Adds table and schema pair walkers to simplify traversal logic.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Splits _generate_tables into focused helper functions for clarity.

Splits _generate_tables into focused helper functions for clarity.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Provides SQL quoting primitives and fixes unescaped extension version handling.

Provides SQL quoting primitives and fixes unescaped extension version handling.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Introduces a shared comment_on renderer to centralize comment rendering.

Introduces a shared comment_on renderer to centralize comment rendering.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Defines a uniform Iterator[Statement] generator protocol across diff components.

Defines a uniform Iterator[Statement] generator protocol across diff components.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Parses introspection rows into typed Pydantic models for better type safety.

Parses introspection rows into typed Pydantic models for better type safety.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Refactor Low

Splits build_db_info into per‑kind loaders to improve modularity.

Splits build_db_info into per‑kind loaders to improve modularity.

Source: granite4.1:30b@2026-07-18-audit

Confidence: low

Full changelog

What's Changed

  • feat: diff table comments by @Apakottur in https://github.com/Apakottur/pgmig/pull/10
  • feat: diff indexes (create, drop, rename) by @Apakottur in https://github.com/Apakottur/pgmig/pull/11
  • feat: diff column add/drop on existing tables by @Apakottur in https://github.com/Apakottur/pgmig/pull/12
  • feat: diff column NOT NULL and DEFAULT by @Apakottur in https://github.com/Apakottur/pgmig/pull/13
  • test: add --stop-docker flag and name compose project by @Apakottur in https://github.com/Apakottur/pgmig/pull/14
  • feat: diff column comments by @Apakottur in https://github.com/Apakottur/pgmig/pull/15
  • test: speed up per-test DB recreate and fix teardown race by @Apakottur in https://github.com/Apakottur/pgmig/pull/16
  • feat: diff primary key and unique constraints by @Apakottur in https://github.com/Apakottur/pgmig/pull/18
  • feat: diff check constraints by @Apakottur in https://github.com/Apakottur/pgmig/pull/19
  • test: reuse database connections instead of reconnecting per query by @Apakottur in https://github.com/Apakottur/pgmig/pull/17
  • feat: diff standalone sequences by @Apakottur in https://github.com/Apakottur/pgmig/pull/20
  • feat: diff foreign keys (basic) by @Apakottur in https://github.com/Apakottur/pgmig/pull/22
  • test: add execute_both helper for same-query-on-both-DBs by @Apakottur in https://github.com/Apakottur/pgmig/pull/23
  • test: per-branch database names to avoid worktree collisions by @Apakottur in https://github.com/Apakottur/pgmig/pull/24
  • fix: filter index/constraint queries by relkind (latent KeyError) by @Apakottur in https://github.com/Apakottur/pgmig/pull/25
  • feat: diff functions and procedures by @Apakottur in https://github.com/Apakottur/pgmig/pull/27
  • feat: emit serial columns as serial pseudo-type by @Apakottur in https://github.com/Apakottur/pgmig/pull/26
  • test: verify generated migrations actually apply and converge by @Apakottur in https://github.com/Apakottur/pgmig/pull/21
  • refactor: unify index/constraint rename detection by @Apakottur in https://github.com/Apakottur/pgmig/pull/28
  • refactor: phase-tagged statement ordering by @Apakottur in https://github.com/Apakottur/pgmig/pull/30
  • refactor: move build_db_info SQL into build_queries/*.sql by @Apakottur in https://github.com/Apakottur/pgmig/pull/29
  • refactor: table/schema pair walkers by @Apakottur in https://github.com/Apakottur/pgmig/pull/31
  • refactor: split _generate_tables into focused helpers by @Apakottur in https://github.com/Apakottur/pgmig/pull/33
  • refactor: _sql quoting primitives + fix unescaped extension version by @Apakottur in https://github.com/Apakottur/pgmig/pull/32
  • refactor: shared comment_on renderer by @Apakottur in https://github.com/Apakottur/pgmig/pull/34
  • feat: diff triggers by @Apakottur in https://github.com/Apakottur/pgmig/pull/35
  • fix: drop foreign keys of dropped tables in FK phase by @Apakottur in https://github.com/Apakottur/pgmig/pull/37
  • fix: introspect table columns in physical order, not alphabetical by @Apakottur in https://github.com/Apakottur/pgmig/pull/38
  • fix: raise on unsupported column type / identity changes by @Apakottur in https://github.com/Apakottur/pgmig/pull/40
  • feat: diff comments on other objects by @Apakottur in https://github.com/Apakottur/pgmig/pull/39
  • fix: exclude extension-owned tables from introspection by @Apakottur in https://github.com/Apakottur/pgmig/pull/41
  • feat: diff enum types (create, drop, ADD VALUE) by @Apakottur in https://github.com/Apakottur/pgmig/pull/42
  • refactor: uniform Iterator[Statement] generator protocol by @Apakottur in https://github.com/Apakottur/pgmig/pull/44
  • refactor: parse introspection rows into typed Pydantic models by @Apakottur in https://github.com/Apakottur/pgmig/pull/43
  • chore: add pull request template by @Apakottur in https://github.com/Apakottur/pgmig/pull/45
  • refactor: split build_db_info into per-kind loaders by @Apakottur in https://github.com/Apakottur/pgmig/pull/46
  • refactor: split _migration.py into a _diff package by @Apakottur in https://github.com/Apakottur/pgmig/pull/47
  • feat: add pgmig CLI with a generate command by @Apakottur in https://github.com/Apakottur/pgmig/pull/36
  • refactor: split _build.py into a _build package by @Apakottur in https://github.com/Apakottur/pgmig/pull/48
  • feat: raise on unsupported relation kinds instead of silent no-op by @Apakottur in https://github.com/Apakottur/pgmig/pull/49
  • fix: raise on serial change in the alter-column path by @Apakottur in https://github.com/Apakottur/pgmig/pull/50
  • fix: refuse dropping a function that other objects depend on by @Apakottur in https://github.com/Apakottur/pgmig/pull/51
  • refactor: shared _diff_comments helper; fix nondeterministic comment order by @Apakottur in https://github.com/Apakottur/pgmig/pull/52
  • fix: apply all extension-ownership exclusion legs consistently by @Apakottur in https://github.com/Apakottur/pgmig/pull/53
  • fix: extension portability, CLI output errors, function return type by @Apakottur in https://github.com/Apakottur/pgmig/pull/54
  • docs: revamp README and add CONTRIBUTING.md by @Apakottur in https://github.com/Apakottur/pgmig/pull/55

Full Changelog: https://github.com/Apakottur/pgmig/compare/v0.0.3...v0.0.4

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Pgmig

Get notified when new releases ship.

Sign up free

About Pgmig

All releases →

Related context

Beta — feedback welcome: [email protected]