Skip to main content

etlantic-sqlmodel

Optional bridge between ETLantic Data contracts and SQLModel table models, plus optional CP1 control-plane reference stores. Install when you need contract_to_sqlmodel helpers or SQLModel-backed definition/submission stores for local CP1 demos. Package version is 0.41.0 — pin with core.

Install

pip install 'etlantic-sqlmodel==0.41.0'
# pip install 'etlantic==0.41.0'

Schema bridge

from etlantic import Data
from etlantic_sqlmodel import contract_to_sqlmodel, compare_metadata


class Customer(Data):
    customer_id: int
    name: str


CustomerTable = contract_to_sqlmodel(
    Customer,
    table_name="customer",
    primary_key=("customer_id",),
)
assert compare_metadata(Customer, CustomerTable).valid

Control-plane reference stores (CP1/CP2)

Request-scoped sessions and SQLModel-backed DefinitionRepository / SubmissionStore / CP2 RegistryProvider implementations. Persistence models are separate from HTTP response models. create_control_plane_tables and create_registry_tables are for tests and local demos only — production must apply versioned migrations via etlantic_sqlmodel.migrations (do not use create_all as the sole schema path).

from etlantic_sqlmodel.control_plane import (
    SQLModelDefinitionRepository,
    SQLModelSubmissionStore,
    SqlModelRegistryProvider,
    create_sqlite_engine,
)
from etlantic_sqlmodel.migrations import apply_migrations

engine = create_sqlite_engine("sqlite:///cp.db")
apply_migrations(engine)  # CP2 registry tables (001_registry_cp2)
registry = SqlModelRegistryProvider(engine)
definitions = SQLModelDefinitionRepository(engine)
submissions = SQLModelSubmissionStore(engine)

Registry conformance (memory vs SQLModel promote/suspend):

uv run python scripts/check_registry_conformance.py --fake

These stores honor scoped idempotency and survive process restart when backed by a durable database URL. They are not a production multi-tenant claim.

Links

Optional packages · Source · Issues

Download files

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

Source Distribution

etlantic_sqlmodel-0.41.0.tar.gz (23.2 kB view details)

Uploaded Source

Built Distribution

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

etlantic_sqlmodel-0.41.0-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file etlantic_sqlmodel-0.41.0.tar.gz.

File metadata

  • Download URL: etlantic_sqlmodel-0.41.0.tar.gz
  • Upload date:
  • Size: 23.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for etlantic_sqlmodel-0.41.0.tar.gz
Algorithm Hash digest
SHA256 09f5709d336645463c8a6c81f7b961c05af019e1365625080335c9c5545def75
MD5 366af21ddc519370f9e39f997e6eb376
BLAKE2b-256 4dbee767c8d4b3cc25af74d79c302f567436a7b7f71c69108ba43a836f463855

See more details on using hashes here.

File details

Details for the file etlantic_sqlmodel-0.41.0-py3-none-any.whl.

File metadata

  • Download URL: etlantic_sqlmodel-0.41.0-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for etlantic_sqlmodel-0.41.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c762f727d01aae1c212fccff22953fb05e59bc7d21931d096107c0696d9f718e
MD5 3278232a433a11f23ed20a9232c34f70
BLAKE2b-256 b0963fa22b47775c1e09475e324ac2c3fc0e6af1dd556fa42515898b435042ea

See more details on using hashes here.

Release history Release notifications | RSS feed

0.53.0

2 files

0.52.1

2 files

0.52.0

2 files

0.51.0

2 files

0.50.1

2 files

0.50.0

2 files

0.49.0

2 files

0.48.0

2 files

0.47.0

2 files

0.46.0

2 files

0.45.0

2 files

0.44.0

2 files

0.43.0

2 files

0.42.0

2 files

This release

0.41.0 This release

2 files

0.40.0

2 files

0.39.0

2 files

0.38.0

2 files

0.37.0

2 files

0.36.0

2 files

0.35.0

2 files

0.34.0

2 files

0.33.0

2 files

0.32.0

2 files

0.31.0

2 files

0.30.0

2 files

0.29.0

2 files

0.27.0

2 files

0.26.0

2 files

0.25.0

2 files

0.24.0

2 files

0.23.0

2 files

0.22.0

2 files

0.21.0

2 files

0.20.0

2 files

0.19.0

2 files

0.18.0

2 files

0.14.0

2 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