vibedata-dlt-fabric-warehouse-studio
Fabric Warehouse Studio execution unit for the VibeData dlt runtime — the installed distribution for Domains whose Fabric data platform is a Warehouse rather than a Lakehouse, running in the Studio-local intent venv. dlt's own fabric destination does the loading; this unit supplies the two things it cannot get inside a Studio container: a brokered, audience-bound access token in place of a client secret, and an OneLake staging area in the Intent's bridge Lakehouse for the parquet that COPY INTO reads back.
import dlt
from vibedata.dlt.fabric_warehouse import setup_environment, finalize, onelake_staging
setup_environment()
pipeline = dlt.pipeline(pipeline_name="<name>", destination="fabric",
staging=onelake_staging(), dataset_name="<schema>")
try:
pipeline.run(source)
except Exception as e:
finalize(pipeline, error_message=str(e)); raise
finalize(pipeline)
setup_environment() and finalize() are the whole API — the same pair every execution unit exposes. setup_environment() asserts dlt's fabric destination is patched for token auth, registers the credential-broker token provider, and resolves the staging location. finalize() persists the audit tables and stops there: dlt performs the load itself, so unlike the Lakehouse unit there is nothing left to sync.
The staging identity is read from dlt config on the fabric destination — destination.fabric.workspace_id and destination.fabric.bridge_lakehouse_id, both GUIDs, overridable through DESTINATION__FABRIC__*. Fabric's OneLake endpoints reject display names, so a non-GUID is refused at setup.
The dlt pin
dlt>=1.30,<1.31. The fabric destination arrived in 1.30 and only speaks client-secret service-principal auth, so this unit patches five of its private seams: the destination's config spec, FabricCredentials.on_partial, FabricCredentials.get_odbc_dsn_dict, FabricSqlClient.open_connection, and FabricCopyFileLoadJob._ensure_fabric_token_initialized. None of those is public API, so a minor bump can move them and the upper bound is a correctness fence rather than caution. mssql and synapse are never touched.
Upstream support for an access token on the Fabric credentials — an access_token field and attrs_before on the connection — would make _spec.py and _patch.py deletable, leaving only staging and bootstrap.
Metadata
Release files for vibedata-dlt-fabric-warehouse-studio 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vibedata_dlt_fabric_warehouse_studio-0.2.0.tar.gz | 17.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vibedata_dlt_fabric_warehouse_studio-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.6 kB
Release files / vibedata_dlt_fabric_warehouse_studio-0.2.0.tar.gz
| Download URL | vibedata_dlt_fabric_warehouse_studio-0.2.0.tar.gz |
|---|---|
| Size | 17.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
df664e3678f96b7e867cee08e00925d4ae3ed58017ce2928db50183b4a1e68c6
|
|
BLAKE2b-256 checksum How to use checksums |
b60130106025ecb22d66d6ed333ac6976ee5b7f875c15d1c9a118903b033333a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / vibedata_dlt_fabric_warehouse_studio-0.2.0-py3-none-any.whl
| Download URL | vibedata_dlt_fabric_warehouse_studio-0.2.0-py3-none-any.whl |
|---|---|
| Size | 15.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b12b787b74aa2fdb87c9c9ee7cc3f9f685cdc5766b63e0bfc7f652ec13c77bd
|
|
BLAKE2b-256 checksum How to use checksums |
37ad078ca1c9529fbd81051da8bcecc9e4b89b4d1b17af2fc5919d01af72d801
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|