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.
0.29 (M1) ships MedallionPipeline, MedallionBuilder, Bronze /
Silver / Gold, and medallantic.migrate.sparkforge. 0.30 (M2) enforces
portable rules= via etlantic.quality/1 gates (Polars/Pandas/local live;
SQL/PySpark fail-closed). Transform callables remain 0.31.
Documentation:
Install
pip install 'etlantic==0.31.0' 'medallantic==0.31.0'
# or
pip install 'etlantic[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()
)
SparkForge IR migrate
Feed SparkForgePipelineSpec (JSON/YAML fixtures or hand-built dataclasses)
via adapt_pipeline or medallantic.migrate.sparkforge. There is no live
pipeline_builder / SparkForge Python API bridge in this release.
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file medallantic-0.31.0.tar.gz.
File metadata
- Download URL: medallantic-0.31.0.tar.gz
- Upload date:
- Size: 39.7 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cffe1ba6886a53ed1c41cdac185e376345b69cc6e2f50becd1ea6f08a3e4384f
|
|
| MD5 |
6a33f2816db41ec060e3578c54cad940
|
|
| BLAKE2b-256 |
183bd0c0ce234ecc6722baaaad1932db33de0f03d8ae789a580ef56b257e75af
|
File details
Details for the file medallantic-0.31.0-py3-none-any.whl.
File metadata
- Download URL: medallantic-0.31.0-py3-none-any.whl
- Upload date:
- Size: 33.0 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f9c064cb0dd5cf4da37f5ad651c548a3f1f5caf47fa96b9eaef2430e12724c5c
|
|
| MD5 |
85bd497f8f49d2e3ec8c04da6d19580e
|
|
| BLAKE2b-256 |
521f8f5b79688bb00da9768d3ec4ffdd613e6bf60d1d224527066c1017b9d3a3
|