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.1.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.1.0.tar.gz | 16.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vibedata_dlt_fabric_warehouse_studio-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.5 kB
Release files / vibedata_dlt_fabric_warehouse_studio-0.1.0.tar.gz
| Download URL | vibedata_dlt_fabric_warehouse_studio-0.1.0.tar.gz |
|---|---|
| Size | 16.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
07966de9461ce092d1dbded848b04cbf5ab238972425371c64e2175a0c220f81
|
|
BLAKE2b-256 checksum How to use checksums |
b8dc8c96fb457dd1358ebbffee9a737ee2a65cec2d71e81fab5e19d5dbca2e15
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|
Release files / vibedata_dlt_fabric_warehouse_studio-0.1.0-py3-none-any.whl
| Download URL | vibedata_dlt_fabric_warehouse_studio-0.1.0-py3-none-any.whl |
|---|---|
| Size | 15.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4f2a3d48672f7e8156a6c3fe2f5a478f425f9e9faabea6749e2c80148ecd08bb
|
|
BLAKE2b-256 checksum How to use checksums |
56eeb6c002d5ac321ae47d14f88ec95541922b07ffefb6df7f0f44d1ed03e77d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.9
|