Skip to main content

nessie-backend-conformance

The substrate-agnostic conformance suite every nessie-store backend must pass — and the inside extension point: write a storage backend in Python and validate it against the exact same suites a Rust backend passes.

Install

pip install nessie-backend-conformance      # Python
cargo add nessie-backend-conformance         # Rust (dev-dependency)

Usage (Python) — validate a Python-authored backend

from nessie_backend_conformance import run_all, ConformanceError

class MyBackend:
    def capabilities(self): return {"snapshots": True, "clones": True, "replication": False}
    def create_volume(self, name, size_bytes): ...
    def get_volume(self, uuid): ...        # return None when absent
    # … list_volumes / delete_volume / patch_volume / access_handle
    # … create_snapshot / list_snapshots / get_snapshot / delete_snapshot / create_clone

run_all(MyBackend())   # raises ConformanceError on the first violation

Methods exchange plain domain-shaped dicts ({uuid, name, state, style, vol_type, size_bytes?, clone?} for volumes). A Rust adapter wraps the Python object and runs the suites by calling back into Python under the GIL. See examples/python_backend.py for a complete reference backend.

Usage (Rust)

nessie_backend_conformance::run_all(&my_backend);  // panics on the first violation

Dual-licensed MIT OR Apache-2.0.

Metadata

Release files for nessie-backend-conformance 0.3.1

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

Built distributions (wheels)

Table of built distributions (wheels) for nessie-backend-conformance 0.3.1
File
nessie_backend_conformance-0.3.1-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details
nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64 Details
nessie_backend_conformance-0.3.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.10 abi3 macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64 Details

Total release size: 2.1 MB

Release files / nessie_backend_conformance-0.3.1-cp310-abi3-win_amd64.whl

Download URL nessie_backend_conformance-0.3.1-cp310-abi3-win_amd64.whl
Size 318.5 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
09ff3b89339e761a8294dadbf3db6a1454cf1ee3634e1b34fa3efb48fe925b6c
BLAKE2b-256 checksum
How to use checksums
41172ac9bf6c9fafa26fc848848b465bb65df4e2a58d98858420193336045b7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 456.8 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
9fd14ba8b3c36c7ff120e912385e3ee1909563bfdab874fb182d2904045fd99f
BLAKE2b-256 checksum
How to use checksums
589e130098b67414f20e30f6c146f3fa440825e359aaccdfd6b43a897e2dee2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL nessie_backend_conformance-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 450.3 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
929d934191c48efc2459402cb84d0b2056ea8749f94ce009ecd96a8edd3cae71
BLAKE2b-256 checksum
How to use checksums
a89ee99f72caf16bf35ef1ee321e8acb22827efa5d7b6f443439d57ddee14343
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / nessie_backend_conformance-0.3.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL nessie_backend_conformance-0.3.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 835.4 kB
Tags CPython 3.10 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f8d8fee7ee476012c99e9bfcbb857fe85e7de461d6cedc52710ef02e035c9f34
BLAKE2b-256 checksum
How to use checksums
9bcef38827fe942fd51ad45ff826f0058b9c07468fb8a1e573a1ccc7e170d9a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

0.3.1 This release

4 release files

0.3.0

4 release files

0.2.1

4 release files

0.2.0

1 release file

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