Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

storage-kernel-core

Shared Storage Kernel implementation: portable path handling, directory selection, stream helpers, observability and provider error normalization.

This distribution belongs to the Storage Kernel package family. It sits between storage-kernel-contracts and the provider distributions.

Install it when you build a provider or reuse the kernel helpers directly. If you only need to type a storage client or catch storage errors, depend on storage-kernel-contracts alone.

Install

pip install storage-kernel-core storage-kernel-contracts

Usage

from storage_kernel.contracts import StoragePathNotFoundError
from storage_kernel.core import normalize_storage_path, normalize_provider_error

key = normalize_storage_path("./reports//2026.csv")

try:
    read_object(key)
except Exception as error:
    raise normalize_provider_error(error, "aws-s3", key) from error

What it provides

Module Responsibility
options client option defaults, location and overwrite resolution
path portable path normalization, traversal rejection, path and URL joins
text text encoding and line handling
content_type content type inferred from the path extension
directory recursive and non-recursive directory entry selection
streams the readable stream providers return, the shared send_stream, stream collection, buffered upload stream
logging one log line written to the logger's method for its level
error_normalization provider failures mapped onto the kernel error contract
client_behavior client decoration with observability and error normalization

Error normalization

Not-found and permission failures are normalized, because a caller must branch on them without knowing which provider is behind the contract. Every other failure keeps the provider message and gains provider, path and code, with the original exception preserved in cause and in the exception chain.

An exception that already is a StorageKernelError keeps its class and instance. Only the context it is missing is filled in.

License

MIT

Metadata

Release files for storage-kernel-core 0.1.0a5

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

Source distribution (sdist)

Source distribution for storage-kernel-core 0.1.0a5
File Size Uploaded Provenance
storage_kernel_core-0.1.0a5.tar.gz 12.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for storage-kernel-core 0.1.0a5
File Interpreter ABI Platform
storage_kernel_core-0.1.0a5-py3-none-any.whl Python 3 none any Details

Total release size: 29.3 kB

Release files / storage_kernel_core-0.1.0a5.tar.gz

Download URL storage_kernel_core-0.1.0a5.tar.gz
Size 12.6 kB
Tags Source
SHA-256 checksum
How to use checksums
788e5c51230888d5593d886af01eec4da22ad851c80ac1a24bc8cc121a6ed547
BLAKE2b-256 checksum
How to use checksums
68dbeeb775982e8da9f8990789b2e41edc8f1447268fad7d96e4608d894f6c92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / storage_kernel_core-0.1.0a5-py3-none-any.whl

Download URL storage_kernel_core-0.1.0a5-py3-none-any.whl
Size 16.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c0433ff98401a965a9d2cbd511d3a573a3d217693f2bb9f3d1d956d9c942ccc8
BLAKE2b-256 checksum
How to use checksums
f78ae2276d0046ed83b7a747ca040205747d2a91fdda5ea8464316c6d53c1ede
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for storage-kernel-core 0.1.0a5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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