taut-pg 0.2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ .DS_Store
2
+ .ruff_cache/
3
+ .mypy_cache/
4
+ .pytest_cache/
5
+ .hypothesis/
6
+ .coverage
7
+ htmlcov/
8
+ dist/
9
+ build/
10
+ *.egg-info/
11
+ __pycache__/
12
+ *.py[cod]
13
+ .venv/
14
+ .taut.db
15
+ .taut.lock
16
+ .taut.db-wal
17
+ .taut.db-shm
18
+ .envrc
19
+ .taut.toml
20
+ .weft
21
+ .broker*
taut_pg-0.2.1/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Van Lindberg
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
taut_pg-0.2.1/PKG-INFO ADDED
@@ -0,0 +1,85 @@
1
+ Metadata-Version: 2.4
2
+ Name: taut-pg
3
+ Version: 0.2.1
4
+ Summary: Postgres support package for Taut
5
+ Author-email: Van Lindberg <van.lindberg@gmail.com>
6
+ License: MIT
7
+ License-File: LICENSE
8
+ Requires-Python: >=3.11
9
+ Requires-Dist: simplebroker-pg>=2.4.0
10
+ Requires-Dist: taut>=0.2.1
11
+ Provides-Extra: dev
12
+ Requires-Dist: mypy>=1.0; extra == 'dev'
13
+ Requires-Dist: pytest-timeout>=2.4.0; extra == 'dev'
14
+ Requires-Dist: pytest-xdist>=3.0; extra == 'dev'
15
+ Requires-Dist: pytest>=7.0; extra == 'dev'
16
+ Requires-Dist: ruff>=0.1.0; extra == 'dev'
17
+ Description-Content-Type: text/markdown
18
+
19
+ # taut-pg
20
+
21
+ Postgres support package for Taut.
22
+
23
+ This package is intentionally separate from `taut`. It installs
24
+ `simplebroker-pg` in the same environment as the Taut CLI so `.taut.toml` can
25
+ select the public SimpleBroker Postgres backend.
26
+
27
+ ## Requirements
28
+
29
+ - Python 3.11+
30
+ - PostgreSQL
31
+ - A dedicated schema for Taut and SimpleBroker tables
32
+ - Core `taut` and `taut-pg` installed in the same environment
33
+
34
+ The Postgres database must already exist. `taut init` initializes the configured
35
+ schema and tables inside that database; it does not create the database.
36
+
37
+ ## Installation
38
+
39
+ Taut releases are GitHub-only until package-name clearance changes. Install the
40
+ core package first, then inject a compatible extension wheel from the extension
41
+ GitHub Release into the same environment. `taut-pg` uses its own
42
+ `taut_pg/vX.Y.Z` tag stream, so its version can differ from the core package
43
+ version:
44
+
45
+ ```bash
46
+ pipx install "git+https://github.com/VanL/taut.git@v0.3.0"
47
+ pipx inject taut ./taut_pg-0.2.1-py3-none-any.whl
48
+ ```
49
+
50
+ Do not use a PyPI install command for `taut-pg` until the project documents
51
+ PyPI publication.
52
+
53
+ ## Configuration
54
+
55
+ Create `.taut.toml` in the project root:
56
+
57
+ ```toml
58
+ version = 1
59
+ backend = "postgres"
60
+ target = "postgresql://postgres:postgres@127.0.0.1:54329/taut_test"
61
+
62
+ [backend_options]
63
+ schema = "taut_project"
64
+ ```
65
+
66
+ Then initialize Taut normally:
67
+
68
+ ```bash
69
+ taut init
70
+ taut join general
71
+ ```
72
+
73
+ `TAUT_DB`, `--db`, and `db_path=` remain filesystem path selectors. Use
74
+ `.taut.toml` to select Postgres.
75
+
76
+ ## Testing
77
+
78
+ From the repository root:
79
+
80
+ ```bash
81
+ uv run ./bin/pytest-pg
82
+ ```
83
+
84
+ That helper starts a temporary Docker Postgres container, runs shared Taut tests
85
+ against Postgres, runs `pg_only` extension tests, and removes the container.
@@ -0,0 +1,67 @@
1
+ # taut-pg
2
+
3
+ Postgres support package for Taut.
4
+
5
+ This package is intentionally separate from `taut`. It installs
6
+ `simplebroker-pg` in the same environment as the Taut CLI so `.taut.toml` can
7
+ select the public SimpleBroker Postgres backend.
8
+
9
+ ## Requirements
10
+
11
+ - Python 3.11+
12
+ - PostgreSQL
13
+ - A dedicated schema for Taut and SimpleBroker tables
14
+ - Core `taut` and `taut-pg` installed in the same environment
15
+
16
+ The Postgres database must already exist. `taut init` initializes the configured
17
+ schema and tables inside that database; it does not create the database.
18
+
19
+ ## Installation
20
+
21
+ Taut releases are GitHub-only until package-name clearance changes. Install the
22
+ core package first, then inject a compatible extension wheel from the extension
23
+ GitHub Release into the same environment. `taut-pg` uses its own
24
+ `taut_pg/vX.Y.Z` tag stream, so its version can differ from the core package
25
+ version:
26
+
27
+ ```bash
28
+ pipx install "git+https://github.com/VanL/taut.git@v0.3.0"
29
+ pipx inject taut ./taut_pg-0.2.1-py3-none-any.whl
30
+ ```
31
+
32
+ Do not use a PyPI install command for `taut-pg` until the project documents
33
+ PyPI publication.
34
+
35
+ ## Configuration
36
+
37
+ Create `.taut.toml` in the project root:
38
+
39
+ ```toml
40
+ version = 1
41
+ backend = "postgres"
42
+ target = "postgresql://postgres:postgres@127.0.0.1:54329/taut_test"
43
+
44
+ [backend_options]
45
+ schema = "taut_project"
46
+ ```
47
+
48
+ Then initialize Taut normally:
49
+
50
+ ```bash
51
+ taut init
52
+ taut join general
53
+ ```
54
+
55
+ `TAUT_DB`, `--db`, and `db_path=` remain filesystem path selectors. Use
56
+ `.taut.toml` to select Postgres.
57
+
58
+ ## Testing
59
+
60
+ From the repository root:
61
+
62
+ ```bash
63
+ uv run ./bin/pytest-pg
64
+ ```
65
+
66
+ That helper starts a temporary Docker Postgres container, runs shared Taut tests
67
+ against Postgres, runs `pg_only` extension tests, and removes the container.
@@ -0,0 +1,47 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "taut-pg"
7
+ version = "0.2.1"
8
+ description = "Postgres support package for Taut"
9
+ readme = "README.md"
10
+ requires-python = ">=3.11"
11
+ license = {text = "MIT"}
12
+ license-files = ["LICENSE"]
13
+ authors = [
14
+ {name = "Van Lindberg", email = "van.lindberg@gmail.com"},
15
+ ]
16
+ dependencies = [
17
+ "taut>=0.2.1",
18
+ "simplebroker-pg>=2.4.0",
19
+ ]
20
+
21
+ [project.optional-dependencies]
22
+ dev = [
23
+ "mypy>=1.0",
24
+ "pytest>=7.0",
25
+ "pytest-timeout>=2.4.0",
26
+ "pytest-xdist>=3.0",
27
+ "ruff>=0.1.0",
28
+ ]
29
+
30
+ [tool.uv.sources]
31
+ taut = { path = "../..", editable = true }
32
+
33
+ [tool.hatch.build]
34
+ include = [
35
+ "/taut_pg/**/*.py",
36
+ "/taut_pg/py.typed",
37
+ "/README.md",
38
+ "/LICENSE",
39
+ ]
40
+
41
+ [tool.pytest.ini_options]
42
+ minversion = "7.0"
43
+ testpaths = ["tests"]
44
+ addopts = "-ra -q --strict-markers"
45
+ markers = [
46
+ "pg_only: tests that validate the Postgres extension package",
47
+ ]
@@ -0,0 +1,5 @@
1
+ """Postgres support package for Taut."""
2
+
3
+ from __future__ import annotations
4
+
5
+ __all__: list[str] = []
@@ -0,0 +1 @@
1
+