MeridianKafkaAdapter
meridian-storage-kafka is the Apache Kafka engine adapter for the released
Meridian streaming Catalog. This public repository owns exactly this one
Python distribution and contributes only meridian_storage.adapters.kafka.
Applications never import this package or confluent_kafka. They use the
mapping-first streaming Catalog methods from meridian-storage-streaming:
publish, publish_batch, subscribe, poll, acknowledge,
negative_acknowledge, and read_range. Replay and ConsumerGroup position
changes remain explicit versioned Operations. Deployment IaC installs and
selects this adapter through a closed Meridian Binding.
Compatibility
Version 1.0.0 is pinned to:
| Component | Supported version |
|---|---|
| Python | 3.12, 3.13, 3.14 |
meridian-storage-core |
exactly 1.0.0 |
meridian-storage-semantics |
exactly 1.0.0 |
meridian-storage-streaming |
exactly 1.0.0 |
confluent-kafka / librdkafka |
exactly 2.15.0 |
| Apache Kafka | 4.1.2, 4.2.1, 4.3.1 |
Kafka 3.9.2 and 4.0.2 are documented only as archived migration-source boundaries and are not accepted by the runtime or part of the supported production matrix. See docs/compatibility.md for the exact capability and evidence policy.
Install
The adapter is installed only at a composition or deployment boundary:
python -m pip install \
meridian-storage-core==1.0.0 \
meridian-storage-semantics==1.0.0 \
meridian-storage-streaming==1.0.0 \
meridian-storage-kafka==1.0.0
Core discovers the immutable meridian.kafka factory through the
meridian_storage.adapters entry-point group. A Binding supplies opaque
identity, credential, TLS, topic, group, schema, Capability, and physical
fingerprints. Startup performs authenticated probes and read-only physical
verification; it never creates topics, changes partitions or retention,
installs ACLs, or owns broker/controller lifecycle.
Guarantees
- At-least-once delivery by default, with ordering only within one logical partition.
- Opaque, authenticated Cursors, positions, and delivery tokens; raw Kafka topics, partitions, offsets, groups, and generations are never public Data.
- Monotonic safe-position acknowledgement, negative acknowledgement and redelivery, explicit dead-letter routing, and retained finite range reads.
- Idempotent Kafka production. Transactional consume-publish is advertised only when its single-Binding and committed-read preconditions are enabled.
- Stable Meridian failures with Kafka details retained only as redacted adapter diagnostics.
- Generic audit, lineage, telemetry, lag, rebalance, transaction, and probe evidence through the configured composition boundary.
Authority boundary
Platform or Vangu IaC through MeridianConstructs owns engine selection,
provisioning or external reference, state, identities, secrets, ACLs, topic and
partition migrations, retention, compaction, recovery, and broker/controller
lifecycle. This runtime validates those outputs. It has no infrastructure
mutation API and no NativeQuery surface.
See docs/architecture.md, docs/operations.md, and docs/security-and-lifecycle.md.
Development and conformance
python -m pip install -e '.[test]'
ruff check .
ruff format --check .
mypy src scripts conformance/scripts tests
pytest -q -m 'not cluster'
python conformance/scripts/run_cluster.py --kafka-version 4.3.1 --full
python conformance/scripts/run_cluster.py --kafka-version 4.2.1
python conformance/scripts/run_cluster.py --kafka-version 4.1.2
The primary real-cluster profile runs the full acceptance matrix against Apache Kafka 4.3.1. Compatibility profiles repeat portable semantics against 4.1.2 and 4.2.1. Cluster evidence is emitted as a deterministic JSON report and attached to each release with its SPDX SBOM and provenance attestations.
License
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 meridian_storage_kafka-1.0.0.tar.gz.
File metadata
- Download URL: meridian_storage_kafka-1.0.0.tar.gz
- Upload date:
- Size: 73.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79387172a29c3bf07081a012cc621967cacaead591535855888581da9a2eb425
|
|
| MD5 |
25dec8ced813a3025386fa0881042ffd
|
|
| BLAKE2b-256 |
d15370b728215ce18ffadbcffd775a3ef7e6006c8ef0f215c13ed803c1c9a36e
|
Provenance
The following attestation bundles were made for meridian_storage_kafka-1.0.0.tar.gz:
Publisher:
release.yml on zephytiju/MeridianKafkaAdapter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
meridian_storage_kafka-1.0.0.tar.gz -
Subject digest:
79387172a29c3bf07081a012cc621967cacaead591535855888581da9a2eb425 - Sigstore transparency entry: 2595912726
- Sigstore integration time:
-
Permalink:
zephytiju/MeridianKafkaAdapter@02651e0ba2f68769092d88854b8726789d922849 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/zephytiju
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@02651e0ba2f68769092d88854b8726789d922849 -
Trigger Event:
push
-
Statement type:
File details
Details for the file meridian_storage_kafka-1.0.0-py3-none-any.whl.
File metadata
- Download URL: meridian_storage_kafka-1.0.0-py3-none-any.whl
- Upload date:
- Size: 50.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
813f674248e4992aff2f7aa0d12432b0e674fbafe671a89f5e5ec0fce1909ae0
|
|
| MD5 |
ae9fd1fb31d244fc662ef024111587a0
|
|
| BLAKE2b-256 |
9cfc66620b18b04623e12e95f34f00dd6cb53d1688e86c778a0a7fff42eea615
|
Provenance
The following attestation bundles were made for meridian_storage_kafka-1.0.0-py3-none-any.whl:
Publisher:
release.yml on zephytiju/MeridianKafkaAdapter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
meridian_storage_kafka-1.0.0-py3-none-any.whl -
Subject digest:
813f674248e4992aff2f7aa0d12432b0e674fbafe671a89f5e5ec0fce1909ae0 - Sigstore transparency entry: 2595912775
- Sigstore integration time:
-
Permalink:
zephytiju/MeridianKafkaAdapter@02651e0ba2f68769092d88854b8726789d922849 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/zephytiju
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@02651e0ba2f68769092d88854b8726789d922849 -
Trigger Event:
push
-
Statement type: