Skip to main content

Pum stands for "Postgres Upgrades Manager". It is a Database migration management tool very similar to flyway-db or Liquibase, based on metadata tables.

Project description

PostgreSQL Upgrades Manager (PUM)

logo

New version

This is the code of pum version 1. You can find version 0.x documentation at https://github.com/opengisch/pum/tree/old-v1

About

PUM (PostgreSQL Upgrades Manager) is a robust database migration management tool designed to streamline the process of managing PostgreSQL database upgrades. Inspired by tools like FlywayDB and Liquibase, PUM leverages metadata tables to ensure seamless database versioning and migration.

Key Features

  • Flexible Database Connections: Connect using PostgreSQL service names or direct connection strings (URI or parameters).
  • Command-line and Python Integration: Use PUM as a standalone CLI tool or integrate it into your Python project.
  • Database Versioning: Automatically manage database versioning with a metadata table.
  • Changelog Management: Apply and track SQL delta files for database upgrades.
  • Droppable & recreatable app with data isolation: PUM supports a clean rebuild workflow where an application environment can be dropped and recreated deterministically using hooks (pre and post migration).

Why PUM?

Managing database migrations in a Version Control System (VCS) can be challenging, especially for production databases. PUM simplifies this process by embedding version metadata directly into the database, enabling efficient tracking and application of migrations.

PUM was developed to address challenges in the TEKSI project, an open-source GIS for network management based on QGIS.

Project details


Release history Release notifications | RSS feed

This version

1.3.5

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pum-1.3.5.tar.gz (71.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pum-1.3.5-py3-none-any.whl (61.6 kB view details)

Uploaded Python 3

File details

Details for the file pum-1.3.5.tar.gz.

File metadata

  • Download URL: pum-1.3.5.tar.gz
  • Upload date:
  • Size: 71.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pum-1.3.5.tar.gz
Algorithm Hash digest
SHA256 ef5443c3100a75be7f70fc9b391a776b8afe7587aedd445c767f4bd7bbe95308
MD5 956fff59ed4dc41d0f4671201b273432
BLAKE2b-256 0f0cc9a7bff8fbf64209e879766115e002d61ee55717e871477ae8d2b3caee98

See more details on using hashes here.

Provenance

The following attestation bundles were made for pum-1.3.5.tar.gz:

Publisher: deploy-to-pypi.yml on opengisch/pum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pum-1.3.5-py3-none-any.whl.

File metadata

  • Download URL: pum-1.3.5-py3-none-any.whl
  • Upload date:
  • Size: 61.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pum-1.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 deab03b99b53c249be95f03b848af26e8d41ef1f3d674ff35d22aac810d7abc3
MD5 3b35122671d4dc99e9d7c032d203e468
BLAKE2b-256 2c163ad0cea932679a49af4288f647fcb9e6d453e40872f3407cf165e1a86f09

See more details on using hashes here.

Provenance

The following attestation bundles were made for pum-1.3.5-py3-none-any.whl:

Publisher: deploy-to-pypi.yml on opengisch/pum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page