Skip to main content

Engine-agnostic medallion facade on ETLantic (native authoring + SparkForge IR migrate).

Project description

Medallantic

Engine-agnostic medallion facade on ETLantic: native bronze/silver/gold authoring plus a SparkForge IR migrate path. Prefer medallantic over the deprecated etlantic-sparkforge redirect.

Medallantic owns bronze/silver/gold authoring conventions; ETLantic owns the portable contracts, graph, validation, planning, execution lifecycle, and plugin coordination underneath it. ETLantic core never gains medallion types.

The current 0.36 line includes native authoring, portable quality gates, importable transform execution, lifecycle/write semantics, PySpark and Delta differential coverage, SQLAlchemy relational parity, observability providers, durable run history, event consumers, production conformance, and the completed M7 migration plus joint compatibility burn-in. Native PySpark Column and Moltres rules remain explicitly capability-gated.

Documentation:

Install

pip install medallantic

Native authoring

from medallantic import MedallionBuilder

defn = (
    MedallionBuilder("ecommerce", schema="demo")
    .bronze("orders", asset="bronze_orders")
    .silver("clean", source="orders", asset="silver_orders")
    .gold("kpis", source="clean", asset="gold_kpis", write_mode="merge")
    .build()
)

Migration bridges

Feed SparkForgePipelineSpec (JSON/YAML fixtures or hand-built dataclasses) via adapt_pipeline or medallantic.migrate.sparkforge. Existing live builders can use:

from medallantic.migrate.sparkforge import from_pipeline_builder
from medallantic.migrate.sql import from_sql_pipeline_builder

The adapted result supplies an ordinary ETLantic pipeline and profile; select execution plugins such as Profile.spark_engine="pyspark" separately. Production profiles must allowlist every trusted execution plugin.

Links

Documentation · Source · Issues

Project details


Download files

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

Source Distribution

medallantic-0.36.0.tar.gz (56.9 kB view details)

Uploaded Source

Built Distribution

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

medallantic-0.36.0-py3-none-any.whl (56.9 kB view details)

Uploaded Python 3

File details

Details for the file medallantic-0.36.0.tar.gz.

File metadata

  • Download URL: medallantic-0.36.0.tar.gz
  • Upload date:
  • Size: 56.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","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 medallantic-0.36.0.tar.gz
Algorithm Hash digest
SHA256 dda135cd77e9e0e505380f49f9da2c24315546a7a148519f3c37d2ba446a4360
MD5 213bd78f104e09f7439f8202f73c8c77
BLAKE2b-256 032e826dd365c9054cc65600c05fa06d50989e52cb4d8d950285d2002c6c0399

See more details on using hashes here.

File details

Details for the file medallantic-0.36.0-py3-none-any.whl.

File metadata

  • Download URL: medallantic-0.36.0-py3-none-any.whl
  • Upload date:
  • Size: 56.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","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 medallantic-0.36.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c119430a9de2b0372f80d32b84107added8ccc607fbe31e5c57760f12b640745
MD5 6019b7a1eaecbb67d7f36468dc394a9d
BLAKE2b-256 4be6a0ab72c25399d021bff3cfba96dc4a33f4d52228de538220d063232f63a8

See more details on using hashes here.

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