Skip to main content

floe-python

Python bindings for floe — a high-performance data ingestion and quality engine written in Rust.

Run floe pipelines at full Rust speed directly from Python notebooks, scripts, or orchestrators.

Installation

pip install floe-python

Quick start

import floe

# Validate a pipeline config
floe.validate("pipeline.yml")

# Run the full pipeline
outcome = floe.run("pipeline.yml")
print(outcome.summary["results"])

# Dry run — see which files would be processed
outcome = floe.run("pipeline.yml", dry_run=True)
for preview in outcome.dry_run_previews:
    print(preview["name"], preview["scanned_files"])

# Run a subset of entities
outcome = floe.run("pipeline.yml", entities=["customers", "orders"])

# Live progress in Jupyter
floe.set_observer(lambda e: print(f"[{e['event']}]", e.get("name", "")))
outcome = floe.run("pipeline.yml")
floe.clear_observer()

# Profile overrides (variables + catalog config)
floe.run("pipeline.yml", profile_path="profile.yml")
floe.run("pipeline.yml", profile_vars={"output_bucket": "s3://my-bucket"})

# Inspect / reset incremental state
state = floe.inspect_entity_state("pipeline.yml", "customers")
floe.reset_entity_state("pipeline.yml", "customers")

Error handling

try:
    floe.validate("config.yml")
except floe.FloeConfigError as e:
    print(f"Config problem: {e}")
except floe.FloeRunError as e:
    print(f"Run failed: {e}")
except floe.FloeError as e:
    print(f"Floe error: {e}")

API reference

Function Description
validate(config_path, *, entities, profile_vars, profile_path) Validate a config file
run(config_path, *, entities, dry_run, run_id, profile_vars, profile_path) Execute the pipeline
load_config(config_path) Parse config into a RootConfig object
extract_config_env_vars(config_path) List placeholder variables in the config
inspect_entity_state(config_path, entity_name) Inspect incremental state for an entity
reset_entity_state(config_path, entity_name) Delete incremental state for an entity
set_observer(callback) Register a live-event callback
clear_observer() Remove the current callback

Jupyter

RunOutcome renders as a color-coded HTML table automatically in Jupyter — no extra code needed. Just end a cell with the variable:

outcome = floe.run("orders.yml")
outcome  # renders inline HTML table with per-entity status, accepted/rejected counts

Use outcome.to_dict() to turn results into a plain dict for pandas:

import pandas as pd
df = pd.DataFrame(outcome.entity_reports)

Observing progress

Register a callback to receive live events as the run proceeds:

floe.set_observer(lambda e: print(f"[{e['event']}]", e.get("name", e.get("entity", ""))))
outcome = floe.run("orders.yml")
floe.clear_observer()

Event types: run_started, entity_started, file_started, file_finished, schema_evolution_applied, entity_finished, run_finished, log. See the full guide for all event fields.

Profile overrides

Override config variables or cloud credentials without editing the YAML:

floe.run("orders.yml", profile_vars={"incoming_root": "s3://my-bucket/incoming"})
floe.run("orders.yml", profile_path="prod.yml")

Building from source

pip install maturin
git clone https://github.com/malon64/floe
cd floe/crates/floe-python
maturin develop

License

Apache 2.0


→ Full API reference and examples: docs/python-bindings.md

Download files

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

Source Distribution

floe_python-0.6.11.tar.gz (408.8 kB view details)

Uploaded Source

Built Distributions

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

floe_python-0.6.11-cp310-abi3-win_amd64.whl (70.1 MB view details)

Uploaded CPython 3.10+Windows x86-64

floe_python-0.6.11-cp310-abi3-musllinux_1_2_x86_64.whl (70.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

floe_python-0.6.11-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (70.8 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

floe_python-0.6.11-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (66.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

floe_python-0.6.11-cp310-abi3-macosx_11_0_arm64.whl (61.1 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

floe_python-0.6.11-cp310-abi3-macosx_10_12_x86_64.whl (65.2 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file floe_python-0.6.11.tar.gz.

File metadata

  • Download URL: floe_python-0.6.11.tar.gz
  • Upload date:
  • Size: 408.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for floe_python-0.6.11.tar.gz
Algorithm Hash digest
SHA256 3d6b770f41d4994014e6d1817323832a0af55912d19efe5453538e99876fb114
MD5 a80ea1f9f67ef74a538910e16cc7bd16
BLAKE2b-256 68aee65521a840f38c107c6a781989d87141176e87b9d89ee6a1c20603cbefd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11.tar.gz:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: floe_python-0.6.11-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 70.1 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1546134b570e1191034aac7603026fbb58dd37bb517b4e5d47a4815c8e82409a
MD5 b47f46d8091514df246cf4a79541a520
BLAKE2b-256 6b9840e38ac770d94b22fd55b7307ae01e00b9d80275d3afe9552034c2e7b486

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-win_amd64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 36a5c63b26ef0a9404fd88d76efaeed575cec142e242633d39e315ae5977c965
MD5 b15e24dc7b4cc358a523de4e91f51432
BLAKE2b-256 7d711906717c0d76467189de97e755c6bcded17f07db3c046d6df2027c9c560a

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e3754691883e0f567fc25680a124e342f0e865fd3933d53e8f1e2e60ca6ac8f6
MD5 60be25c1eaa089616070005d691d98ad
BLAKE2b-256 212394beadd7d4b3d4c7b0f4845267fb049033bde2789e8cc755b28971452fd3

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ea17d4c8169c6fab1313a6e279e4c2d5aba44ee9bada43e23fafd97a3fec1cab
MD5 3a918dd38c83f8b685a9d09694591f5c
BLAKE2b-256 043cbad903101b4aad2eeb5458a4ac88021a01a7adb0a8bd08aa7aec1556bc38

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 28a1eba8f1f55d15ae5e1f8a1ab6e85f0cd9a7ceb3b0256c2b49073791989c27
MD5 91bd50910b48310892573c8e1b928e11
BLAKE2b-256 bf5e3de2324592901c60d8fa3da4ed1f6d61a36c75fef77a13d06128d6b5a054

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file floe_python-0.6.11-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for floe_python-0.6.11-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0b31f35b1e912da8ee1e2fda8f0250939838f069d3d187cd77ab0e215fcb8d4e
MD5 0a7b527723e52bf8e65e88bd1c0d0b40
BLAKE2b-256 feae5291811993b196695387ed7dc427516435efb0aeecba7ad81e0a6e389b35

See more details on using hashes here.

Provenance

The following attestation bundles were made for floe_python-0.6.11-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: release.yml on malon64/floe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.6.11 This release

7 files

0.6.10

7 files

0.6.9

7 files

0.6.8

7 files

0.6.7

7 files

0.6.6

7 files

0.6.5

7 files

0.6.4

7 files

0.6.3

7 files

0.6.2

7 files

0.6.1

7 files

0.5.6

7 files

0.5.5

7 files

0.5.4

7 files

0.5.3

7 files

0.5.2

7 files

0.5.1

7 files

0.5.0

7 files

0.4.6

7 files

0.4.5

7 files

0.4.4

7 files

0.4.3

7 files

0.4.2

7 files

0.4.1

7 files

0.4.0

7 files

0.3.10

7 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