This release is a pre-release and may not be stable for production use.
storage-kernel-contracts
Provider-agnostic contracts for Storage Kernel.
This package owns the portable public API: storage paths, locations, operation options, async client protocols, provider aliases, shared helpers and normalized errors.
Install
uv add storage-kernel-contracts
Usage
from storage_kernel.contracts import StorageLocation, StoragePath
location = StorageLocation(bucket="files", prefix="production")
path = StoragePath("documents/readme.md")
Provider packages depend on this package. This package does not import provider SDKs.
Directory reads default to recursive=True and include_directories=True.
StorageClientClass describes provider classes accepted by the generic
factory. STORAGE_PROVIDER_ALIASES and STORAGE_PROVIDER_TARGETS are the
canonical built-in registries. BufferedStorageWritableStream provides the
portable in-memory writable-stream implementation.
Observability
Clients use StorageClientOptions.logger when provided. If no logger is
provided and debug=True, events are emitted through Python's standard
logging conventions under the storage_kernel logger. Otherwise clients are
silent by default.
ObservedStorageClient applies the common behavior once at the public client
boundary. Event contexts use StorageEventContext and contain provider,
operation, optional logical path, optional destination_path, and an
optional location limited to directory, bucket, and prefix. Provider SDK
paths and location metadata are not logged by this boundary.
decorate_storage_client(client, options, provider) is the direct Python
equivalent of the JavaScript client decorator. It is idempotent, preserves
provider extension attributes, and lets the generic factory apply the same
behavior to injected provider classes without requiring inheritance.
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 storage_kernel_contracts-0.1.0a1.tar.gz.
File metadata
- Download URL: storage_kernel_contracts-0.1.0a1.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49395b856cc3f9f688da32b83d5fea226d827c243983e974fa6214c7f9cf7220
|
|
| MD5 |
51cee2fa31c6b39ec829b6560eeb2e54
|
|
| BLAKE2b-256 |
48e2b17ec4e41e71cc06b284ba155a6eb28151068883a14c7cd44dc58a83bbf5
|
File details
Details for the file storage_kernel_contracts-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: storage_kernel_contracts-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
998ebfb5736217e41925bef6a3ab4defb56565444cb06d2805899a250df8f21b
|
|
| MD5 |
8094e779fb8c33bda384c2783dbb6dda
|
|
| BLAKE2b-256 |
25e24ce6121633f1bfcb18b3154286883a5994560123f077a6d4644c043ee45c
|