Skip to main content

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. dlt's own fabric destination does the loading; this unit supplies the two things it cannot get by itself: an audience-bound access token in place of a client secret, and a credential for the OneLake staging area the run is configured with, holding the parquet that COPY INTO reads back.

The same pipeline runs in the Studio-local intent venv and, once published, as a Fabric notebook. Only where the token and the Domain's Key Vault come from differs, and the unit resolves that from the environment.

Import this unit before dlt. In a Fabric notebook it has to stand the kernel's preloaded storage stack aside, and import dlt binds that stack at module scope; the wrong order raises rather than loading silently against two different copies.

from vibedata.dlt.fabric_warehouse import setup_environment, finalize, onelake_staging
import dlt

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 venue's token provider and secret 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 location is read from dlt config as [destination.filesystem] bucket_url, overridable through DESTINATION__FILESYSTEM__BUCKET_URL. It must be an abfss:// URL on OneLake naming its workspace by GUID: Fabric's OneLake endpoints reject display names, so a non-GUID is refused at setup. Absent the key there is no staging location and the load goes row by row.

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.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vibedata-dlt-fabric-warehouse-studio 0.4.0
File Size Uploaded
vibedata_dlt_fabric_warehouse_studio-0.4.0.tar.gz 24.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vibedata-dlt-fabric-warehouse-studio 0.4.0
File Interpreter ABI Platform
vibedata_dlt_fabric_warehouse_studio-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 45.3 kB

Release files / vibedata_dlt_fabric_warehouse_studio-0.4.0.tar.gz

Download URL vibedata_dlt_fabric_warehouse_studio-0.4.0.tar.gz
Size 24.6 kB
Tags Source
SHA-256 checksum
How to use checksums
17be9824d5c655d6d65481c78dca3a9a5706bbd85ba0d6f0cedc67c8ba750f66
BLAKE2b-256 checksum
How to use checksums
db312fcdca14b4e60f3a8d16f7967b9bba8375ee8f133419b73586dc1c8a215b
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.4.0-py3-none-any.whl

Download URL vibedata_dlt_fabric_warehouse_studio-0.4.0-py3-none-any.whl
Size 20.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bf60343293645b4e4fe9b2500e562325de747051dd07b488e54774d3885730f2
BLAKE2b-256 checksum
How to use checksums
0a8fb6b58b257c9d1f75b3745c0276ddcae526d93d45b458a02d9e1f0758732c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

0.5.0

2 release files

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release 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