This is an automated email from the ASF dual-hosted git repository.
hubcio pushed a change to branch cpp-high-level-client-2
in repository https://gitbox.apache.org/repos/asf/iggy.git
from 5ef7556af fixes
add 153088b3e fix(connectors): defer postgres source progress until ack
(#3957)
add e0a8196ef feat(python): expose update_user options (#4173)
add b68a506be fix(connectors): validate sink writes and startup readiness
(#4154)
add f239fca1e fix(connectors): defer source checkpoints and surface sink
failures (#4153)
add b4dd04ce2 fix(cluster): preserve group membership and reduce
produce/poll overhead (#4169)
add 7d0ee03ac chore(deps): Bump the csharp group with 5 updates (#4185)
add 90615962c chore(repo): refresh dependencies and strip edge versions
for 0.9.0 (#4187)
add f77d64b2f fix(server): distribute TCP-TLS and WSS connections across
shards (#4193)
add 71f29618b fix(cluster): prevent spurious heartbeat elections (#4194)
add 5c571cedd chore(deps): Bump the github-actions group with 2 updates
(#4197)
add 003cfe845 docs(node): fix "diclaimer" typo in README (#4188)
add 914bf23b7 feat(simulator): separate a vacuous run and assert through
the drain (#4191)
add 63362dc54 feat(gateways): Iggy Kafka bridge core — SDK client and
stream/topic mapping (#4043)
add de1a6fdd4 chore(deps): Bump the python group across 3 directories with
1 update (#4206)
add d8edf2fd0 chore(deps): Bump the java group across 3 directories with 5
updates (#4196)
add 4748a6540 docs: add the dev@ mailing list to the README and
CONTRIBUTING (#4189)
add bc092ce56 ci: allow the swift scope in PR titles (#4207)
add 1284e3044 fix(partitions): handle clippy with poll diagnostics
disabled (#4203)
add 13a0d9165 fix(partitions): account for segment-backed append batches
(#4202)
add b70be6ad7 chore(deps): Bump the web group across 1 directory with 6
updates (#4220)
add 63d97a66d docs(gateways): settle the Kafka record mapping, producer
ids, offsets (#4205)
add c1159864b chore(deps): Bump the node group across 2 directories with
14 updates (#4221)
add f5f4a9d4d chore(deps): Bump devalue from 5.8.1 to 5.9.2 in /web (#4223)
add 362bd7829 fix(server): note root password reset in generated password
log (#4217)
add ad8951f57 chore(deps): Bump github.com/onsi/ginkgo/v2 from 2.32.1 to
2.32.2 in /bdd/go in the go group across 1 directory (#4227)
add 2ad0b1900 refactor(gateways): prepare the Kafka gateway for parallel
handler work (#4228)
add 92aee83c4 fix(server): skip NUMA memory binding on a single-node host
(#4243)
add 5d33f9d11 docs: refresh the README (#4208)
add ee226f971 refactor(server): split responses.rs by role and unify reply
framing (#4089)
add 968a23e20 chore(java): start 0.9.1-SNAPSHOT and document the 0.9.0 SDK
(#4247)
add 9a59f7857 ci(rust): run clippy on macOS so cfg(target_os) code gets
linted (#4248)
add a69b4e36f fix(connectors): meilisearch_sink URL scheme check is
case-sensitive (#4158)
add 41c6956bb fix(ci): retry flaky downloads and stop dry runs promising
new tags (#4216)
add d1cb5aee7 fix(configs): check server env vars once and refuse boot
only in debug (#4200)
add 7bd69670f refactor(partitions): make purge recovery testable with
SimStorage (#4240)
add 77ca472d7 Merge branch 'master' into cpp-high-level-client-2
No new revisions were added by this update.
Summary of changes:
.claude/skills/connector-sink/TEMPLATE.md | 2 +-
.claude/skills/connector-source/SKILL.md | 55 +-
.claude/skills/connector-source/TEMPLATE.md | 49 +-
.config/nextest.toml | 20 +
.../actions/csharp-dotnet/post-merge/action.yml | 2 +-
.github/actions/java-gradle/post-merge/action.yml | 2 +-
.../actions/python-maturin/pre-merge/action.yml | 4 +-
.github/actions/rust/pre-merge/action.yml | 9 +-
.../actions/utils/setup-node-with-cache/action.yml | 2 +-
.../actions/utils/setup-rust-with-cache/action.yml | 17 +-
.../utils/validate-third-party-licenses/action.yml | 10 +-
.github/config/components.yml | 1 +
.github/workflows/_build_python_wheels.yml | 46 +-
.github/workflows/_build_rust_artifacts.yml | 6 +-
.github/workflows/_common.yml | 13 +-
.github/workflows/_detect.yml | 2 +-
.github/workflows/_publish_rust_crates.yml | 2 +-
.github/workflows/_test.yml | 4 +-
.github/workflows/coverage-baseline.yml | 10 +-
.github/workflows/post-merge.yml | 4 +-
.github/workflows/pr-title.yml | 1 +
.github/workflows/pre-merge.yml | 54 +-
.github/workflows/publish.yml | 127 +-
CONTRIBUTING.md | 4 +-
Cargo.lock | 1375 +++++++-------
Cargo.toml | 53 +-
README.md | 104 +-
assets/cli.png | Bin 231092 -> 151099
bytes
assets/server.png | Bin 1176428 -> 756489
bytes
assets/web_ui.png | Bin 145001 -> 136258
bytes
bdd/go/go.mod | 2 +-
bdd/go/go.sum | 4 +-
bdd/java/build.gradle.kts | 6 +-
bdd/python/uv.lock | 40 +-
core/ai/mcp/Cargo.toml | 2 +-
core/bench/Cargo.toml | 2 +-
core/bench/dashboard/frontend/Cargo.toml | 2 +-
core/bench/dashboard/server/Cargo.toml | 2 +-
core/bench/report/Cargo.toml | 2 +-
core/binary_protocol/Cargo.toml | 2 +-
core/binary_protocol/src/codes.rs | 16 +
core/binary_protocol/src/consensus/header.rs | 153 ++
core/binary_protocol/src/consensus/mod.rs | 5 +-
core/binary_protocol/src/consensus/reply_result.rs | 38 +-
core/binary_protocol/src/dispatch.rs | 8 +
core/binary_protocol/src/lib.rs | 13 +-
.../src/requests/consumer_offsets/mod.rs | 62 +
.../src/requests/system/attach_consumer_session.rs | 87 +
core/binary_protocol/src/requests/system/mod.rs | 2 +
core/binary_protocol/src/responses/messages/mod.rs | 2 +
.../src/responses/messages/poll_routing.rs | 95 +
core/cli/Cargo.toml | 2 +-
core/common/Cargo.toml | 2 +-
.../src/traits/binary_impls/consumer_offsets.rs | 4 +-
core/common/src/traits/binary_impls/messages.rs | 13 +-
core/common/src/traits/binary_impls/users.rs | 3 +
core/common/src/traits/binary_transport.rs | 35 +-
core/common/src/wire_conversions.rs | 15 +
core/configs/src/configs_impl/file_provider.rs | 101 +-
.../configs/src/configs_impl/typed_env_provider.rs | 100 +-
core/configs/src/server_config/defaults.rs | 1 +
core/configs/src/server_config/message_bus.rs | 41 +-
core/configs/src/server_config/partition.rs | 4 +-
core/configs/src/server_config/server.rs | 38 +-
core/configs/src/server_config/sharding.rs | 6 +-
core/configs/src/server_config/validators.rs | 8 +-
core/connectors/README.md | 2 +-
core/connectors/runtime/Cargo.toml | 2 +-
core/connectors/runtime/README.md | 2 +
.../example_config/connectors/quickwit_sink.toml | 2 +-
core/connectors/runtime/src/manager/source.rs | 35 +
core/connectors/runtime/src/source.rs | 122 +-
core/connectors/runtime/src/stream.rs | 47 +-
core/connectors/sdk/Cargo.toml | 2 +-
core/connectors/sdk/src/source.rs | 174 +-
core/connectors/sinks/clickhouse_sink/Cargo.toml | 2 +-
core/connectors/sinks/clickhouse_sink/README.md | 48 +-
core/connectors/sinks/clickhouse_sink/config.toml | 13 +-
.../connectors/sinks/clickhouse_sink/src/binary.rs | 273 ++-
.../connectors/sinks/clickhouse_sink/src/client.rs | 4 +-
core/connectors/sinks/delta_sink/Cargo.toml | 2 +-
core/connectors/sinks/delta_sink/README.md | 17 +-
core/connectors/sinks/delta_sink/config.toml | 2 +-
core/connectors/sinks/doris_sink/Cargo.toml | 2 +-
core/connectors/sinks/doris_sink/README.md | 26 +-
core/connectors/sinks/doris_sink/config.toml | 1 -
core/connectors/sinks/doris_sink/src/lib.rs | 6 +-
.../connectors/sinks/elasticsearch_sink/Cargo.toml | 5 +-
core/connectors/sinks/elasticsearch_sink/README.md | 9 +-
.../sinks/elasticsearch_sink/config.toml | 4 +-
.../connectors/sinks/elasticsearch_sink/src/lib.rs | 534 +++++-
core/connectors/sinks/http_sink/Cargo.toml | 2 +-
core/connectors/sinks/iceberg_sink/Cargo.toml | 2 +-
core/connectors/sinks/iceberg_sink/README.md | 69 +-
core/connectors/sinks/iceberg_sink/src/lib.rs | 41 +
core/connectors/sinks/iceberg_sink/src/sink.rs | 10 +
core/connectors/sinks/influxdb_sink/Cargo.toml | 2 +-
core/connectors/sinks/influxdb_sink/README.md | 89 +-
.../connectors/sinks/influxdb_sink/dependencies.md | 4 +-
core/connectors/sinks/influxdb_sink/src/lib.rs | 76 +-
.../connectors/sinks/influxdb_sink/src/protocol.rs | 30 +-
core/connectors/sinks/meilisearch_sink/Cargo.toml | 2 +-
core/connectors/sinks/meilisearch_sink/README.md | 58 +-
core/connectors/sinks/meilisearch_sink/src/lib.rs | 69 +-
core/connectors/sinks/mongodb_sink/Cargo.toml | 2 +-
core/connectors/sinks/mongodb_sink/README.md | 74 +-
core/connectors/sinks/mongodb_sink/src/lib.rs | 9 -
core/connectors/sinks/postgres_sink/Cargo.toml | 2 +-
core/connectors/sinks/postgres_sink/README.md | 108 +-
core/connectors/sinks/postgres_sink/src/lib.rs | 159 +-
core/connectors/sinks/quickwit_sink/Cargo.toml | 2 +-
core/connectors/sinks/quickwit_sink/README.md | 26 +-
core/connectors/sinks/quickwit_sink/config.toml | 2 +-
core/connectors/sinks/quickwit_sink/src/lib.rs | 252 ++-
core/connectors/sinks/rabbitmq_sink/Cargo.toml | 2 +-
core/connectors/sinks/redshift_sink/Cargo.toml | 2 +-
core/connectors/sinks/s3_sink/Cargo.toml | 3 +-
core/connectors/sinks/s3_sink/README.md | 69 +-
core/connectors/sinks/s3_sink/src/buffer.rs | 10 +
core/connectors/sinks/s3_sink/src/client.rs | 15 -
core/connectors/sinks/s3_sink/src/formatter.rs | 56 +-
core/connectors/sinks/s3_sink/src/sink.rs | 493 ++++-
core/connectors/sinks/stdout_sink/Cargo.toml | 2 +-
core/connectors/sinks/surrealdb_sink/Cargo.toml | 2 +-
core/connectors/sinks/surrealdb_sink/README.md | 103 +-
core/connectors/sinks/surrealdb_sink/config.toml | 1 -
core/connectors/sinks/surrealdb_sink/src/lib.rs | 9 +-
core/connectors/sources/README.md | 2 +-
.../sources/elasticsearch_source/Cargo.toml | 6 +-
.../sources/elasticsearch_source/README.md | 335 ++--
.../sources/elasticsearch_source/config.toml | 2 +-
.../sources/elasticsearch_source/src/lib.rs | 337 +++-
.../elasticsearch_source/src/state_manager.rs | 40 +-
core/connectors/sources/http_source/Cargo.toml | 2 +-
core/connectors/sources/influxdb_source/Cargo.toml | 2 +-
core/connectors/sources/influxdb_source/README.md | 106 +-
.../connectors/sources/influxdb_source/config.toml | 10 +-
.../sources/influxdb_source/dependencies.md | 4 +-
.../sources/influxdb_source/src/common.rs | 22 +-
core/connectors/sources/influxdb_source/src/lib.rs | 300 ++-
core/connectors/sources/influxdb_source/src/row.rs | 112 +-
core/connectors/sources/influxdb_source/src/v2.rs | 16 +-
core/connectors/sources/influxdb_source/src/v3.rs | 114 +-
core/connectors/sources/postgres_source/Cargo.toml | 5 +-
core/connectors/sources/postgres_source/README.md | 294 ++-
.../connectors/sources/postgres_source/config.toml | 4 +-
core/connectors/sources/postgres_source/src/lib.rs | 1941 +++++++++++++++++---
core/connectors/sources/random_source/Cargo.toml | 2 +-
core/consensus/src/client_table.rs | 114 ++
core/consensus/src/impls.rs | 256 ++-
core/consensus/src/plane_helpers.rs | 61 +-
.../src/harness/handle/connectors_runtime.rs | 16 +-
core/integration/src/harness/seeds.rs | 8 +-
.../tests/cluster/partition_primary_routing.rs | 831 ++++++++-
.../tests/cluster/register_forwarding.rs | 2 +-
.../connectors/elasticsearch/elasticsearch_sink.rs | 79 +
core/integration/tests/connectors/fixtures/mod.rs | 15 +-
.../tests/connectors/fixtures/mongodb/sink.rs | 2 -
.../tests/connectors/fixtures/postgres/cdc.rs | 41 +
.../tests/connectors/fixtures/postgres/mod.rs | 13 +-
.../tests/connectors/fixtures/postgres/sink.rs | 36 +
.../tests/connectors/fixtures/postgres/source.rs | 361 +++-
.../tests/connectors/fixtures/surrealdb/mod.rs | 4 +-
.../tests/connectors/fixtures/surrealdb/sink.rs | 52 +-
.../tests/connectors/influxdb/influxdb_sink.rs | 6 +-
.../tests/connectors/mongodb/mongodb_sink.rs | 10 +-
core/integration/tests/connectors/postgres/mod.rs | 58 +-
.../tests/connectors/postgres/postgres_sink.rs | 136 +-
.../tests/connectors/postgres/postgres_source.rs | 757 +++++++-
.../connectors/postgres/postgres_source_cdc.rs | 342 +++-
.../tests/connectors/postgres/restart.rs | 3 +-
core/integration/tests/connectors/s3/s3_sink.rs | 18 +-
.../tests/connectors/surrealdb/surrealdb_sink.rs | 33 +-
.../server/scenarios/authentication_scenario.rs | 51 +-
.../scenarios/reconnect_after_restart_scenario.rs | 13 +-
.../scenarios/segment_rotation_race_scenario.rs | 2 +-
.../tests/server/scenarios/system_scenario.rs | 39 +-
core/integration/tests/server/specific.rs | 189 +-
core/journal/Cargo.toml | 1 +
core/journal/src/durable_storage.rs | 192 +-
core/journal/src/partition_journal.rs | 207 ++-
core/message_bus/src/client_listener/mod.rs | 31 +-
core/message_bus/src/client_listener/tcp_tls.rs | 27 +-
core/message_bus/src/client_listener/wss.rs | 16 +-
core/message_bus/src/config.rs | 6 +-
core/message_bus/src/connector.rs | 38 +-
core/message_bus/src/fd_transfer.rs | 26 +-
core/message_bus/src/installer/common.rs | 7 +-
core/message_bus/src/installer/mod.rs | 56 +-
core/message_bus/src/installer/replica.rs | 14 +-
core/message_bus/src/installer/tcp.rs | 9 +-
core/message_bus/src/installer/tcp_tls.rs | 9 +-
core/message_bus/src/installer/wss.rs | 5 +-
core/message_bus/src/lib.rs | 52 +-
.../src/lifecycle/connection_registry.rs | 11 +-
core/message_bus/src/replica/io.rs | 45 +-
core/message_bus/src/transports/tcp_tls.rs | 6 +-
core/message_bus/src/transports/wss.rs | 28 +-
core/message_bus/tests/backpressure.rs | 11 +-
core/message_bus/tests/common/mod.rs | 111 +-
core/message_bus/tests/connection_lost_notify.rs | 4 +-
core/message_bus/tests/directional_connection.rs | 13 +-
core/message_bus/tests/head_of_line.rs | 4 +-
core/message_bus/tests/replica_roundtrip.rs | 4 +-
core/message_bus/tests/replica_tls_bench.rs | 4 +-
core/message_bus/tests/replica_tls_mitm.rs | 4 +-
core/message_bus/tests/replica_tls_roundtrip.rs | 8 +-
core/message_bus/tests/shard_zero_gating.rs | 11 +-
core/message_bus/tests/tcp_tls_client_listener.rs | 5 +
core/message_bus/tests/tcp_tls_client_roundtrip.rs | 3 +-
core/message_bus/tests/vectored_batch.rs | 11 +-
core/message_bus/tests/wss_client_listener.rs | 108 ++
core/message_bus/tests/wss_client_roundtrip.rs | 3 +-
core/metadata/src/stm/result.rs | 13 +-
core/metadata/src/stm/stream.rs | 173 +-
core/metadata/src/stm/user.rs | 2 +-
core/partitions/Cargo.toml | 7 +
core/partitions/src/iggy_partition.rs | 854 +++++++--
core/partitions/src/journal.rs | 300 ++-
core/partitions/src/offset_storage.rs | 247 ++-
core/partitions/src/persistence.rs | 241 ++-
core/partitions/src/poll_plan.rs | 599 +++++-
core/sdk/Cargo.toml | 3 +-
core/sdk/README.md | 11 +
core/sdk/src/leader_aware.rs | 19 +-
core/sdk/src/lib.rs | 1 +
core/sdk/src/poll_routing.rs | 1284 +++++++++++++
core/sdk/src/quic/quic_client.rs | 111 ++
core/sdk/src/tcp/tcp_client.rs | 263 ++-
core/sdk/src/vsr.rs | 18 +
core/sdk/src/websocket/websocket_client.rs | 221 ++-
core/server/Cargo.toml | 2 +-
core/server/README.md | 8 +
core/server/config.toml | 52 +-
core/server/src/boot/credentials.rs | 4 +-
core/server/src/boot/listeners.rs | 64 +-
core/server/src/boot/mod.rs | 9 +-
core/server/src/consumer_group.rs | 2 +-
core/server/src/dispatch/authz.rs | 33 +-
core/server/src/dispatch/failure.rs | 463 +++--
core/server/src/dispatch/mod.rs | 49 +-
core/server/src/dispatch/partition.rs | 160 +-
core/server/src/dispatch/reads.rs | 242 ++-
core/server/src/dispatch/session_ops.rs | 2 +-
core/server/src/dispatch/submit.rs | 21 +-
core/server/src/dispatch/test_support.rs | 18 +-
core/server/src/http.rs | 13 +-
core/server/src/http/forward.rs | 424 ++++-
core/server/src/http/handlers.rs | 5 +-
core/server/src/http/reads.rs | 26 +-
core/server/src/http/reply.rs | 9 +-
core/server/src/http/state.rs | 2 +-
core/server/src/http/submit.rs | 4 +-
core/server/src/http/wire.rs | 2 +-
core/server/src/lib.rs | 8 +-
core/server/src/namespace.rs | 362 ++++
core/server/src/offset_recovery.rs | 179 +-
core/server/src/partition_helpers.rs | 105 +-
core/server/src/reply_frame.rs | 875 +++++++++
core/server/src/responses.rs | 1354 +-------------
core/server/src/session_manager.rs | 120 ++
core/server/src/shard_allocator.rs | 44 +-
core/server/src/sysinfo_probe.rs | 151 ++
core/server_common/src/send_messages.rs | 78 +-
core/shard/Cargo.toml | 2 +-
core/shard/src/coordinator.rs | 308 +++-
core/shard/src/lib.rs | 77 +-
core/shard/src/metrics.rs | 35 +
core/shard/src/poll.rs | 127 +-
core/shard/src/poll/completion.rs | 16 +-
core/shard/src/poll/completion_tests.rs | 502 ++++-
core/shard/src/poll/timeout_tests.rs | 4 +-
core/shard/src/router.rs | 42 +-
core/simulator/src/bin/workload-fuzz.rs | 137 +-
core/simulator/src/bus.rs | 22 +-
core/simulator/src/lib.rs | 204 +-
core/simulator/src/storage.rs | 10 +-
core/simulator/src/storage/purge.rs | 469 +++++
core/simulator/src/storage/tests.rs | 106 +-
core/simulator/src/workload/mod.rs | 18 +-
core/simulator/src/workload/oracle.rs | 27 +-
core/simulator/src/workload/state_checker.rs | 66 +-
examples/java/build.gradle.kts | 4 +-
examples/node/package-lock.json | 178 +-
examples/node/package.json | 2 +-
examples/python/pyproject.toml | 2 +-
examples/python/uv.lock | 42 +-
foreign/csharp/Directory.Packages.props | 10 +-
.../TcpMessageStream.PollRouting.cs | 463 +++++
.../Implementations/TcpMessageStream.Vsr.cs | 8 +
.../IggyClient/Implementations/TcpMessageStream.cs | 26 +-
foreign/csharp/Iggy_SDK/Iggy_SDK.csproj | 2 +-
foreign/csharp/Iggy_SDK/Mappers/BinaryMapper.cs | 2 +-
foreign/csharp/Iggy_SDK/Utils/CommandCodes.cs | 4 +
foreign/csharp/Iggy_SDK/Vsr/VsrConnection.cs | 28 +-
foreign/csharp/Iggy_SDK/Vsr/VsrHeader.cs | 1 +
foreign/csharp/Iggy_SDK/Vsr/VsrOperation.cs | 5 +-
foreign/csharp/Iggy_SDK_Tests/VsrTests/MockNode.cs | 14 +-
.../Iggy_SDK_Tests/VsrTests/PrimaryPollingTests.cs | 635 +++++++
.../VsrTests/VsrProtocolDriftTests.cs | 1 +
foreign/csharp/README.md | 11 +-
foreign/go/README.md | 35 +-
foreign/go/client/tcp/cluster.go | 7 +
foreign/go/client/tcp/tcp_core.go | 70 +-
foreign/go/client/tcp/tcp_messaging.go | 17 +-
foreign/go/client/tcp/tcp_poll_routing.go | 435 +++++
foreign/go/client/tcp/tcp_poll_routing_test.go | 815 ++++++++
foreign/go/client/tcp/tcp_session_management.go | 4 +
foreign/go/client/tcp/tcp_testing_test.go | 6 +-
foreign/go/client/tcp/tcp_user_management.go | 40 +
foreign/go/contracts/client.go | 7 +
foreign/go/contracts/version.go | 2 +-
foreign/go/internal/command/code.go | 104 +-
foreign/go/internal/vsr/header.go | 14 +
foreign/go/internal/vsr/header_test.go | 31 +
foreign/go/internal/vsr/protocol_parity_test.go | 1 +
foreign/go/tests/e2e_test.go | 88 +
foreign/java/README.md | 26 +-
foreign/java/gradle/libs.versions.toml | 4 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 130 +-
.../iggy/client/async/tcp/AsyncTcpConnection.java | 136 +-
.../iggy/client/async/tcp/LoginRoutingHook.java | 3 +
.../iggy/client/async/tcp/MessagesTcpClient.java | 168 +-
.../apache/iggy/client/async/tcp/PollRouter.java | 499 +++++
.../iggy/client/async/tcp/UsersTcpClient.java | 15 +-
.../client/async/tcp/vsr/ConsensusSession.java | 18 +
.../iggy/client/async/tcp/vsr/VsrHeaders.java | 1 +
.../client/async/tcp/vsr/VsrResponseHandler.java | 6 +
.../org/apache/iggy/serde/BytesSerializer.java | 194 +-
.../java/org/apache/iggy/serde/CommandCode.java | 5 +-
.../AsyncIggyTcpClientTransientFailoverTest.java | 1026 ++++++++++-
.../tcp/AsyncTcpConnectionConcurrencyTest.java | 55 +
.../async/tcp/vsr/VsrResponseHandlerTest.java | 18 +
.../iggy/serde/MessagesBatchWireFormatTest.java | 123 +-
foreign/node/README.md | 9 +-
foreign/node/package-lock.json | 483 +++--
foreign/node/package.json | 6 +-
foreign/node/src/client/client.connection.ts | 4 +-
foreign/node/src/client/client.socket.test.ts | 641 +++++++
foreign/node/src/client/client.socket.ts | 302 ++-
foreign/node/src/wire/command.code.ts | 4 +
.../src/wire/message/poll-messages.command.test.ts | 14 +
.../node/src/wire/message/poll-messages.command.ts | 5 +-
foreign/node/src/wire/vsr/header.ts | 1 +
foreign/node/src/wire/vsr/index.ts | 2 +-
foreign/python/Cargo.toml | 4 +-
foreign/python/apache_iggy.pyi | 4 +
foreign/python/pyproject.toml | 2 +-
foreign/python/src/client.rs | 20 +-
foreign/python/tests/test_user.py | 36 +
foreign/python/uv.lock | 40 +-
gateways/kafka/Cargo.toml | 6 +
gateways/kafka/README.md | 170 ++
gateways/kafka/docs/BRIDGE_MAPPING.md | 275 +++
gateways/kafka/docs/IDEMPOTENCE.md | 179 ++
gateways/kafka/docs/OFFSET_STORAGE.md | 163 ++
gateways/kafka/docs/SCOPE.md | 28 +-
gateways/kafka/docs/TEST_SUITE.md | 17 +
gateways/kafka/src/bridge/config.rs | 379 ++++
gateways/kafka/src/bridge/error.rs | 395 ++++
.../kafka/src/bridge/iggy_bridge/fetch.rs | 11 +-
gateways/kafka/src/bridge/iggy_bridge/mod.rs | 187 ++
gateways/kafka/src/bridge/iggy_bridge/offsets.rs | 176 ++
.../kafka/src/bridge/iggy_bridge/produce.rs | 11 +-
gateways/kafka/src/bridge/iggy_bridge/topics.rs | 220 +++
.../kafka/src/bridge}/mod.rs | 21 +-
gateways/kafka/src/bridge/topic_map.rs | 566 ++++++
gateways/kafka/src/lib.rs | 1 +
gateways/kafka/src/main.rs | 110 +-
gateways/kafka/src/protocol/api.rs | 561 +-----
.../kafka/src/protocol/handlers/api_versions.rs | 107 ++
.../kafka/src/protocol/handlers/create_topics.rs | 130 ++
gateways/kafka/src/protocol/handlers/fetch.rs | 118 ++
.../kafka/src/protocol/handlers/list_offsets.rs | 115 ++
gateways/kafka/src/protocol/handlers/metadata.rs | 171 ++
gateways/kafka/src/protocol/handlers/mod.rs | 179 ++
gateways/kafka/src/protocol/handlers/produce.rs | 150 ++
gateways/kafka/src/protocol/mod.rs | 2 +-
gateways/kafka/src/protocol/responses.rs | 318 ----
gateways/kafka/src/server.rs | 52 +-
gateways/kafka/tests/api_handler_tests.rs | 200 +-
.../kafka/tests/bridge_iggy_integration_tests.rs | 639 +++++++
gateways/kafka/tests/broker_advertise_tests.rs | 5 +-
gateways/kafka/tests/common/iggy_server.rs | 406 ++++
gateways/kafka/tests/golden_wire_fixtures_tests.rs | 15 +-
gateways/kafka/tests/listener_robustness_tests.rs | 1 +
gateways/kafka/tests/response_negative_tests.rs | 42 +-
gateways/kafka/tests/server_e2e_tests.rs | 2 +-
gateways/kafka/tests/version_firewall_tests.rs | 148 +-
scripts/bump-version.sh | 4 +-
scripts/prepare-release.sh | 1 +
web/package-lock.json | 540 +++---
web/package.json | 16 +-
393 files changed, 32598 insertions(+), 7169 deletions(-)
create mode 100644
core/binary_protocol/src/requests/system/attach_consumer_session.rs
create mode 100644 core/binary_protocol/src/responses/messages/poll_routing.rs
create mode 100644 core/sdk/src/poll_routing.rs
create mode 100644 core/server/src/namespace.rs
create mode 100644 core/server/src/reply_frame.rs
create mode 100644 core/server/src/sysinfo_probe.rs
create mode 100644 core/simulator/src/storage/purge.rs
create mode 100644
foreign/csharp/Iggy_SDK/IggyClient/Implementations/TcpMessageStream.PollRouting.cs
create mode 100644
foreign/csharp/Iggy_SDK_Tests/VsrTests/PrimaryPollingTests.cs
create mode 100644 foreign/go/client/tcp/tcp_poll_routing.go
create mode 100644 foreign/go/client/tcp/tcp_poll_routing_test.go
create mode 100644
foreign/java/java-sdk/src/main/java/org/apache/iggy/client/async/tcp/PollRouter.java
create mode 100644 gateways/kafka/docs/BRIDGE_MAPPING.md
create mode 100644 gateways/kafka/docs/IDEMPOTENCE.md
create mode 100644 gateways/kafka/docs/OFFSET_STORAGE.md
create mode 100644 gateways/kafka/src/bridge/config.rs
create mode 100644 gateways/kafka/src/bridge/error.rs
copy bdd/rust/tests/steps/mod.rs =>
gateways/kafka/src/bridge/iggy_bridge/fetch.rs (85%)
create mode 100644 gateways/kafka/src/bridge/iggy_bridge/mod.rs
create mode 100644 gateways/kafka/src/bridge/iggy_bridge/offsets.rs
copy bdd/rust/tests/steps/mod.rs =>
gateways/kafka/src/bridge/iggy_bridge/produce.rs (85%)
create mode 100644 gateways/kafka/src/bridge/iggy_bridge/topics.rs
copy {core/binary_protocol/src/requests/partitions =>
gateways/kafka/src/bridge}/mod.rs (63%)
create mode 100644 gateways/kafka/src/bridge/topic_map.rs
create mode 100644 gateways/kafka/src/protocol/handlers/api_versions.rs
create mode 100644 gateways/kafka/src/protocol/handlers/create_topics.rs
create mode 100644 gateways/kafka/src/protocol/handlers/fetch.rs
create mode 100644 gateways/kafka/src/protocol/handlers/list_offsets.rs
create mode 100644 gateways/kafka/src/protocol/handlers/metadata.rs
create mode 100644 gateways/kafka/src/protocol/handlers/mod.rs
create mode 100644 gateways/kafka/src/protocol/handlers/produce.rs
delete mode 100644 gateways/kafka/src/protocol/responses.rs
create mode 100644 gateways/kafka/tests/bridge_iggy_integration_tests.rs
create mode 100644 gateways/kafka/tests/common/iggy_server.rs