Skip to main content

taut-pg

Postgres support package for Taut.

This package is intentionally separate from the core taut-chat distribution. It installs simplebroker-pg in the same environment as the taut CLI so .taut.toml can select the public SimpleBroker Postgres backend.

Requirements

  • Python 3.11+
  • PostgreSQL
  • A dedicated schema for Taut and SimpleBroker tables
  • Core distribution taut-chat and extension taut-pg installed in the same environment

The Postgres database must already exist. taut init initializes the configured schema and tables inside that database; it does not create the database.

The package also supplies Taut's PostgreSQL search provider. It uses only PostgreSQL's built-in tsvector, pg_catalog.simple configuration, GIN, and advisory locks. It never requires CREATE EXTENSION or a separately compiled server extension.

Installation

The core distribution is taut-chat; it still installs the taut command and import package. taut-pg keeps its own distribution name and taut_pg/vX.Y.Z tag stream. Once the first coordinated PyPI release is published:

pipx install taut-chat
pipx inject taut-chat taut-pg

The tag gate reuses the exact wheel and sdist built by canonical Test. It stages them in a draft GitHub Release, publishes them through the taut-pg top-level PyPI Trusted Publisher, verifies filenames and SHA-256 digests, and only then publishes the GitHub Release as immutable.

Configuration

Create .taut.toml in the project root:

version = 1
backend = "postgres"
target = "postgresql://postgres:postgres@127.0.0.1:54329/taut_test"

[backend_options]
schema = "taut_project"

The credentials above are for a disposable local test database. A real target DSN may contain a password and must be treated as a secret. If .taut.toml contains one, add the file to your project's .gitignore, do not commit production credentials, and restrict it to the owner on POSIX systems (for example, chmod 600 .taut.toml). Taut does not interpolate environment variables in this file.

Then initialize Taut normally:

taut init
taut join general

taut init initializes the configured schema and tables; it does not provision the database. taut init --json reports db as the resolved backend display target, and for Postgres created is false because Taut has no public backend creation signal.

TAUT_DB, --db, and db_path= remain filesystem path selectors. Use .taut.toml to select Postgres.

Testing

From the repository root:

uv run ./bin/pytest-pg

That helper starts a temporary Docker Postgres container, runs shared Taut tests against Postgres, runs pg_only extension tests, and removes the container.

Metadata

Release files for taut-pg 0.9.11

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

Source distribution (sdist)

Source distribution for taut-pg 0.9.11
File Size Uploaded
taut_pg-0.9.11.tar.gz 7.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for taut-pg 0.9.11
File Interpreter ABI Platform
taut_pg-0.9.11-py3-none-any.whl Python 3 none any Details

Total release size: 18.3 kB

Release files / taut_pg-0.9.11.tar.gz

Download URL taut_pg-0.9.11.tar.gz
Size 7.4 kB
Tags Source
SHA-256 checksum
How to use checksums
eef99c8a4fbc3ad31652aaa1855a523aa5eeac81d3497b5e22c38a6a009f5505
BLAKE2b-256 checksum
How to use checksums
3620d1e7dbe31cba3327beb35926887a8c20d7ab5e8bfd04900417aa9ea59264
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / taut_pg-0.9.11-py3-none-any.whl

Download URL taut_pg-0.9.11-py3-none-any.whl
Size 10.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
698e936bd4ebced8c28af4f7460036028c0b9fa985b6865f9b7d547477c61603
BLAKE2b-256 checksum
How to use checksums
32a1e6ef7c13bcebbfd37a16574bcc857730a6bf7f6c6244c845ed67d8aed511
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.9.11 This release

2 release files

0.9.10

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.7

2 release files

0.8.6

2 release files

0.8.5

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.2.1

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