This is an automated email from the ASF dual-hosted git repository.
spetz pushed a change to branch torn_wal_on_kernel_version
in repository https://gitbox.apache.org/repos/asf/iggy.git
from bd00fb46c fix CI
add ffb186dba feat(gateways): iggy gateway for kafka listener (#3519)
add 9c6451d62 fix(consensus): keep a late retry's reply instead of
refusing it (#3945)
add 7b491c09f fix(cluster): prevent repaired prepares from rewinding WAL
parent (#3978)
add 76f2dda5d feat(simulator): drive the workload under network and
replica faults (#3942)
add 1ad3f654c chore(deps): Bump the web group across 1 directory with 4
updates (#3983)
add 0fdf9d688 chore(deps): Bump the node group across 1 directory with 10
updates (#3984)
add db14a4b17 fix(cluster): make the advertised leader accept partition
writes (#3985)
add 90e38b10f feat(node): support connection string syntax for nodejs
client creation (#3917)
add 996ac04c8 fix(cluster): recover writes after a fast partition primary
rejoin (#3987)
add 5916e6f58 feat(partitions): persist log and index concurrently, harden
recovery (#3970)
add eb410a96a fix(server): apply thread pool limit carve-out to all of
macOS (#3994)
add c8ef3b9a4 fix(go): tear down only the connection a request failed on
(#3986)
add 8b7dbd9c6 chore(deps): Bump the go group across 2 directories with 2
updates (#3990)
add a1df38354 test(partitions): gate the persist-retry test on Linux
(#3998)
add 31b86ff2a fix(server)!: reject a wildcard bind with no advertised
address (#3923)
add dde679aea ci(python): fold the build task into test and check the stub
(#3980)
add 3e4898ac6 fix(bdd): resolve server address and credentials only from
env (#3935)
add e80992b63 chore(deps): Bump the java group across 3 directories with
17 updates (#3966)
add dc1cdf232 fix(sdk): respect max_buffer_size when merging batches
(#3933)
add 6ef0c1677 feat(sdk): consume the request counter for partition
operations (#3958)
add e9b1c9a12 fix(cluster): stop a late partition materialiser from
wedging its group (#4007)
add 0f6b3d21b Merge branch 'master' into torn_wal_on_kernel_version
No new revisions were added by this update.
Summary of changes:
.devcontainer/devcontainer.json | 3 +-
.github/actions/go/pre-merge/action.yml | 2 +
.github/actions/php/pre-merge/action.yml | 10 +-
.../actions/python-maturin/pre-merge/action.yml | 50 +-
.github/actions/rust/pre-merge/action.yml | 38 +
.github/config/components.yml | 12 +-
.github/workflows/coverage-baseline.yml | 4 +
.github/workflows/pr-title.yml | 1 +
.gitignore | 1 +
Cargo.lock | 92 +-
Cargo.toml | 10 +-
README.md | 2 +-
.../features/step_definitions/background_steps.cpp | 15 +-
bdd/docker-compose.server.yml | 4 +
bdd/docker-compose.yml | 9 +-
bdd/go/go.mod | 4 +-
bdd/go/go.sum | 19 +-
bdd/go/tests/basic_messaging.go | 10 +-
bdd/go/tests/env/env.go | 55 +
bdd/go/tests/leader_redirection.go | 26 +-
bdd/go/tests/raw_command.go | 11 +-
bdd/go/tests/tcp_test/session_feature_login.go | 7 +-
bdd/go/tests/tcp_test/test_helpers.go | 11 +-
bdd/java/Dockerfile | 2 +-
bdd/java/build.gradle.kts | 10 +-
bdd/java/gradle/wrapper/gradle-wrapper.properties | 2 +-
bdd/java/gradlew | 4 +-
.../org/apache/iggy/bdd/BasicMessagingSteps.java | 11 +-
.../apache/iggy/bdd/LeaderRedirectionSteps.java | 15 +-
.../java/org/apache/iggy/bdd/TestEnvironment.java | 59 +
bdd/php/Dockerfile | 2 -
bdd/php/tests/BasicMessagingFeatureTest.php | 5 +-
bdd/php/tests/RawCommandFeatureTest.php | 7 +-
bdd/php/tests/TestEnvironment.php | 53 +
bdd/python/tests/conftest.py | 24 +-
bdd/python/tests/test_basic_messaging.py | 4 +-
bdd/python/tests/test_raw_command.py | 4 +-
bdd/python/uv.lock | 2 +-
bdd/rust/tests/helpers/cluster.rs | 17 +-
.../rust/tests/helpers/env.rs | 57 +-
bdd/rust/tests/helpers/mod.rs | 1 +
bdd/rust/tests/steps/auth.rs | 3 +-
bdd/rust/tests/steps/leader_redirection.rs | 3 +-
bdd/rust/tests/steps/server.rs | 5 +-
bdd/rust/tests/steps/streams.rs | 22 +-
core/ai/mcp/Cargo.toml | 2 +-
core/bench/Cargo.toml | 2 +-
core/bench/report/src/types/group_metrics.rs | 28 +-
core/bench/report/src/types/individual_metrics.rs | 94 +-
core/bench/report/src/utils.rs | 30 +-
core/bench/src/analytics/metrics/group.rs | 48 +-
core/bench/src/analytics/metrics/individual.rs | 65 +-
core/bench/src/args/common.rs | 17 +-
core/bench/src/args/examples.rs | 6 +
core/bench/src/args/kinds/balanced/producer.rs | 19 +-
core/bench/src/benchmarks/benchmark.rs | 13 +-
core/binary_protocol/Cargo.toml | 2 +-
core/binary_protocol/src/consensus/header.rs | 4 +-
core/binary_protocol/src/lib.rs | 2 +-
core/binary_protocol/src/primitives/consumer.rs | 3 +-
.../create_partitions_with_assignments.rs | 44 +
.../topics/create_topic_with_assignments.rs | 46 +
core/cli/Cargo.toml | 2 +-
core/common/Cargo.toml | 2 +-
.../configs/src/configs_impl/typed_env_provider.rs | 13 +-
core/configs/src/server_config/cluster.rs | 423 +-
core/configs/src/server_config/defaults.rs | 2 +
core/configs/src/server_config/mod.rs | 1 +
core/configs/src/server_config/node.rs | 89 +
core/configs/src/server_config/server.rs | 54 +
core/configs/src/server_config/validators.rs | 133 +
core/connectors/runtime/Cargo.toml | 2 +-
core/consensus/src/client_table.rs | 290 +-
core/consensus/src/impls.rs | 115 +-
core/consensus/src/metadata_helpers.rs | 8 +-
core/consensus/src/plane_helpers.rs | 62 +
core/harness_derive/src/attrs.rs | 12 +
core/harness_derive/src/codegen.rs | 6 +
core/integration/src/harness/disk.rs | 19 +-
.../src/harness/handle/client_builder.rs | 61 +-
.../src/harness/orchestrator/harness.rs | 145 +-
.../tests/cluster/client_table_adversarial.rs | 194 +-
.../tests/cluster/crash_recovery_corruption.rs | 269 ++
.../tests/cluster/fast_primary_rejoin.rs | 472 ++
core/integration/tests/cluster/mod.rs | 3 +
.../tests/cluster/partition_primary_routing.rs | 198 +
.../tests/cluster/staggered_bootstrap.rs | 180 +
.../tests/server/cluster_metadata_advertised.rs | 80 +
core/integration/tests/server/mod.rs | 5 +-
core/journal/src/prepare_journal.rs | 40 +
core/metadata/src/impls/metadata.rs | 254 +-
core/metadata/src/impls/mod.rs | 5 +
core/metadata/src/stm/authz.rs | 1 +
core/metadata/src/stm/consumer_group.rs | 1 +
core/metadata/src/stm/snapshot.rs | 33 +-
core/metadata/src/stm/stream.rs | 126 +-
core/partitions/src/iggy_index.rs | 6 +
core/partitions/src/iggy_index_writer.rs | 24 +-
core/partitions/src/iggy_partition.rs | 1098 ++++-
core/partitions/src/journal.rs | 31 +
core/partitions/src/lib.rs | 30 +-
core/partitions/src/log.rs | 74 +-
core/partitions/src/messages_writer.rs | 35 +-
core/partitions/src/poll_plan.rs | 72 +-
core/partitions/src/state_transfer.rs | 8 +
core/partitions/src/types.rs | 35 +-
core/sdk/Cargo.toml | 2 +-
core/sdk/src/clients/producer_config.rs | 3 +-
core/sdk/src/clients/producer_dispatcher.rs | 146 +-
core/sdk/src/clients/producer_sharding.rs | 282 +-
core/sdk/src/leader_aware.rs | 521 +++
core/sdk/src/quic/quic_client.rs | 374 +-
core/sdk/src/tcp/tcp_client.rs | 373 +-
core/sdk/src/vsr.rs | 109 +-
core/sdk/src/websocket/websocket_client.rs | 423 +-
core/server/Cargo.toml | 2 +-
core/server/README.md | 11 +-
core/server/config.toml | 95 +-
core/server/src/args.rs | 4 +-
core/server/src/bootstrap.rs | 368 +-
core/server/src/cluster_meta.rs | 196 +-
core/server/src/dispatch.rs | 24 +-
core/server/src/http.rs | 44 +-
core/server/src/http/error.rs | 19 +-
core/server/src/http/forward.rs | 203 +-
core/server/src/http/session.rs | 5 +-
core/server/src/partition_helpers.rs | 46 +-
core/server/src/partition_reconciler.rs | 61 +-
core/server/src/responses.rs | 8 +-
core/server/src/segment_recovery.rs | 2566 +++++++++--
core/server/src/server_error.rs | 133 +-
core/server_common/src/executor.rs | 2 +-
core/shard/Cargo.toml | 4 +-
core/shard/src/lib.rs | 354 +-
core/shard/src/router.rs | 110 +-
core/simulator/Cargo.toml | 4 +
core/simulator/src/bin/workload-fuzz.rs | 789 +++-
core/simulator/src/client.rs | 185 +-
core/simulator/src/deps.rs | 159 +-
core/simulator/src/executor/mod.rs | 12 +-
core/simulator/src/lib.rs | 4752 +++++++++++++-------
core/simulator/src/network.rs | 23 +-
core/simulator/src/packet.rs | 368 +-
core/simulator/src/ready_queue.rs | 4 +-
core/simulator/src/replica.rs | 123 +-
core/simulator/src/seeds.rs | 111 +
core/simulator/src/workload/auditor.rs | 66 +-
core/simulator/src/workload/ids.rs | 4 +-
core/simulator/src/workload/invariants.rs | 27 +-
core/simulator/src/workload/mod.rs | 864 +++-
core/simulator/src/workload/ops/change_password.rs | 4 +-
.../src/workload/ops/create_consumer_group.rs | 4 +-
.../src/workload/ops/create_partitions.rs | 4 +-
.../workload/ops/create_personal_access_token.rs | 4 +-
core/simulator/src/workload/ops/create_stream.rs | 4 +-
core/simulator/src/workload/ops/create_topic.rs | 4 +-
core/simulator/src/workload/ops/create_user.rs | 4 +-
.../src/workload/ops/delete_consumer_group.rs | 4 +-
.../src/workload/ops/delete_consumer_offset.rs | 7 +-
.../src/workload/ops/delete_partitions.rs | 4 +-
.../workload/ops/delete_personal_access_token.rs | 4 +-
core/simulator/src/workload/ops/delete_segments.rs | 4 +-
core/simulator/src/workload/ops/delete_stream.rs | 4 +-
core/simulator/src/workload/ops/delete_topic.rs | 4 +-
core/simulator/src/workload/ops/delete_user.rs | 4 +-
core/simulator/src/workload/ops/mod.rs | 24 +-
core/simulator/src/workload/ops/purge_stream.rs | 4 +-
core/simulator/src/workload/ops/purge_topic.rs | 4 +-
core/simulator/src/workload/ops/send_messages.rs | 4 +-
.../src/workload/ops/store_consumer_offset.rs | 7 +-
.../src/workload/ops/update_permissions.rs | 4 +-
core/simulator/src/workload/ops/update_stream.rs | 4 +-
core/simulator/src/workload/ops/update_topic.rs | 4 +-
core/simulator/src/workload/ops/update_user.rs | 4 +-
core/simulator/src/workload/options.rs | 135 +-
core/simulator/src/workload/oracle.rs | 505 ++-
core/simulator/src/workload/shadow.rs | 14 +-
core/simulator/src/workload/state_checker.rs | 434 ++
docker-compose.yml | 4 +
examples/csharp/README.md | 2 +-
examples/go/README.md | 2 +-
examples/go/go.sum | 10 +-
examples/java/README.md | 2 +-
examples/java/build.gradle.kts | 4 +-
.../java/gradle/wrapper/gradle-wrapper.properties | 2 +-
examples/java/gradlew | 4 +-
examples/node/README.md | 5 +-
examples/node/package-lock.json | 2 +-
examples/python/README.md | 5 +-
examples/python/uv.lock | 2 +-
examples/rust/README.md | 2 +-
foreign/cpp/Cargo.toml | 2 +-
foreign/cpp/MODULE.bazel | 2 +-
.../Iggy_SDK.Tests.BDD/Context/TestContext.cs | 6 +-
.../Iggy_SDK.Tests.BDD/Context/TestEnvironment.cs | 44 +
.../csharp/Iggy_SDK.Tests.BDD/Context/TestHooks.cs | 3 -
foreign/csharp/Iggy_SDK.Tests.BDD/README.md | 25 +-
.../BasicMessagingOperationsSteps.cs | 3 +-
.../StepDefinitions/LeaderRedirectionSteps.cs | 6 +-
.../Fixtures/VsrCluster.cs | 1 +
.../Implementations/TcpMessageStream.Vsr.cs | 85 +-
.../IggyClient/Implementations/TcpMessageStream.cs | 17 +-
foreign/csharp/Iggy_SDK/Iggy_SDK.csproj | 2 +-
foreign/csharp/Iggy_SDK/Vsr/ConsensusSession.cs | 10 +-
foreign/csharp/Iggy_SDK/Vsr/VsrHeader.cs | 6 +-
foreign/csharp/Iggy_SDK/Vsr/VsrOperation.cs | 11 -
.../VsrTests/ConsensusSessionTests.cs | 19 +-
.../VsrTests/EndpointFailoverTests.cs | 128 +-
.../Iggy_SDK_Tests/VsrTests/VsrHeaderTests.cs | 12 +-
.../Iggy_SDK_Tests/VsrTests/VsrOperationTests.cs | 5 +-
foreign/go/client/tcp/tcp_core.go | 125 +-
foreign/go/client/tcp/tcp_failover_test.go | 96 +
foreign/go/client/tcp/tcp_session_management.go | 101 +-
foreign/go/contracts/version.go | 2 +-
foreign/go/go.mod | 5 +-
foreign/go/go.sum | 10 +-
foreign/go/internal/vsr/envelope.go | 11 +-
foreign/go/internal/vsr/envelope_test.go | 18 +-
foreign/go/internal/vsr/header.go | 5 +-
foreign/go/internal/vsr/operation.go | 11 +-
foreign/go/internal/vsr/operation_test.go | 8 -
foreign/go/internal/vsr/protocol_parity_test.go | 3 -
foreign/go/internal/vsr/session.go | 11 +-
.../iggy-connector-flink/docker-compose.yml | 1 +
.../iggy-connector-pinot/docker-compose.yml | 1 +
foreign/java/gradle/libs.versions.toml | 16 +-
.../java/gradle/wrapper/gradle-wrapper.properties | 2 +-
foreign/java/gradlew | 4 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 85 +-
.../iggy/client/async/tcp/AsyncTcpConnection.java | 55 +-
.../iggy/client/async/tcp/LeaderAwareness.java | 33 +
.../client/async/tcp/vsr/ConsensusSession.java | 30 +-
.../iggy/client/async/tcp/vsr/VsrHeaders.java | 6 +-
.../iggy/client/async/tcp/vsr/VsrOperation.java | 5 -
.../client/async/tcp/vsr/VsrRequestEncoder.java | 9 +-
.../apache/iggy/client/BaseIntegrationTest.java | 1 +
.../AsyncIggyTcpClientTransientFailoverTest.java | 126 +-
.../iggy/client/async/tcp/LeaderAwarenessTest.java | 42 +
.../async/tcp/vsr/VsrRequestEncoderTest.java | 12 +-
.../async/tcp/vsr/VsrResponseHandlerTest.java | 72 +
foreign/node/README.md | 59 +-
foreign/node/package-lock.json | 247 +-
foreign/node/package.json | 2 +-
foreign/node/scripts/check-vsr-protocol.mjs | 6 -
foreign/node/src/bdd/README.md | 23 +-
foreign/node/src/bdd/auth.ts | 6 +-
.../types/mod.rs => foreign/node/src/bdd/env.ts | 38 +-
foreign/node/src/client/client.config.test.ts | 44 +
foreign/node/src/client/client.config.ts | 33 +-
.../src/client/client.connection-string.test.ts | 310 ++
.../node/src/client/client.connection-string.ts | 226 +
foreign/node/src/client/client.connection.test.ts | 144 +-
foreign/node/src/client/client.connection.ts | 71 +-
foreign/node/src/client/client.socket.test.ts | 139 +
foreign/node/src/client/client.socket.ts | 103 +-
foreign/node/src/client/client.ts | 57 +-
foreign/node/src/client/client.type.ts | 25 +-
foreign/node/src/client/index.ts | 1 +
.../theme/mod.rs => foreign/node/src/constant.ts | 3 +-
foreign/node/src/duration.utils.test.ts | 180 +
foreign/node/src/duration.utils.ts | 393 ++
foreign/node/src/e2e/tcp.connection-string.e2e.ts | 146 +
foreign/node/src/e2e/tls.system.e2e.ts | 64 +
foreign/node/src/stream/consumer-stream.ts | 6 +-
foreign/node/src/wire/vsr/header.ts | 6 +-
foreign/node/src/wire/vsr/index.ts | 13 +-
foreign/node/src/wire/vsr/operation.test.ts | 3 -
foreign/node/src/wire/vsr/operation.ts | 5 -
foreign/node/src/wire/vsr/session.ts | 6 +-
foreign/node/src/wire/vsr/vsr.test.ts | 43 +-
foreign/php/Cargo.toml | 2 +-
foreign/php/Dockerfile.test | 3 +-
foreign/php/README.md | 3 +-
foreign/php/docker-compose.test.yml | 8 +-
foreign/php/scripts/test.sh | 9 +-
foreign/php/tests/IggySdkTest.php | 2 +-
foreign/php/tests/bootstrap.php | 17 +-
foreign/python/Cargo.toml | 4 +-
foreign/python/README.md | 3 +-
foreign/python/apache_iggy.pyi | 50 +-
foreign/python/docker-compose.test.yml | 1 +
foreign/python/pyproject.toml | 2 +-
foreign/python/src/bin/stub_gen.rs | 11 +-
foreign/python/src/topic.rs | 4 +-
foreign/python/tests/test_tls.py | 1 +
foreign/python/uv.lock | 2 +-
gateways/README.md | 9 +
{core/bench => gateways/kafka}/Cargo.toml | 57 +-
gateways/kafka/README.md | 63 +
gateways/kafka/docs/MANUAL_TESTING.md | 307 ++
gateways/kafka/docs/SCOPE.md | 138 +
gateways/kafka/docs/TEST_SUITE.md | 66 +
gateways/kafka/docs/kafka_api_keys_reference.md | 316 ++
gateways/kafka/scripts/ci-wire-fixtures.sh | 57 +
gateways/kafka/src/error.rs | 45 +
.../steps/mod.rs => gateways/kafka/src/lib.rs | 12 +-
gateways/kafka/src/main.rs | 240 +
gateways/kafka/src/protocol/api.rs | 637 +++
gateways/kafka/src/protocol/bounds_guard.rs | 906 ++++
gateways/kafka/src/protocol/header.rs | 40 +
.../helpers => gateways/kafka/src/protocol}/mod.rs | 6 +-
gateways/kafka/src/protocol/responses.rs | 318 ++
gateways/kafka/src/server.rs | 896 ++++
gateways/kafka/tests/api_handler_tests.rs | 989 ++++
gateways/kafka/tests/broker_advertise_tests.rs | 117 +
gateways/kafka/tests/common/codec.rs | 292 ++
gateways/kafka/tests/common/fixtures.rs | 91 +
.../kafka/tests/common/scope.rs | 26 +-
gateways/kafka/tests/common/server.rs | 68 +
gateways/kafka/tests/common/tcp.rs | 258 ++
gateways/kafka/tests/common/wire.rs | 447 ++
.../kafka/tests/fixtures_canary_tests.rs | 36 +-
gateways/kafka/tests/golden_wire_fixtures_tests.rs | 122 +
gateways/kafka/tests/header_tests.rs | 282 ++
gateways/kafka/tests/listener_robustness_tests.rs | 624 +++
gateways/kafka/tests/response_negative_tests.rs | 277 ++
gateways/kafka/tests/server_e2e_tests.rs | 451 ++
gateways/kafka/tests/server_integration_tests.rs | 129 +
gateways/kafka/tests/version_firewall_tests.rs | 799 ++++
.../kafka/tools/kafka-tool}/Cargo.toml | 20 +-
gateways/kafka/tools/kafka-tool/README.md | 251 ++
gateways/kafka/tools/kafka-tool/src/main.rs | 864 ++++
gateways/kafka/tools/kafka-tool/src/response.rs | 389 ++
.../tools/kafka-tool/tests/generate_cli_tests.rs | 82 +
helm/charts/iggy/README.md | 20 +-
helm/charts/iggy/README.md.gotmpl | 17 +
helm/charts/iggy/templates/deployment.yaml | 16 +
helm/charts/iggy/values.yaml | 5 +
scripts/ci/coverage-baseline-affected.sh | 2 +-
web/README.md | 3 +-
web/docker-compose.yml | 1 +
web/package-lock.json | 182 +-
web/package.json | 8 +-
333 files changed, 31335 insertions(+), 4544 deletions(-)
create mode 100644 bdd/go/tests/env/env.go
create mode 100644
bdd/java/src/test/java/org/apache/iggy/bdd/TestEnvironment.java
create mode 100644 bdd/php/tests/TestEnvironment.php
copy foreign/csharp/Iggy_SDK/Contracts/ClusterNode.cs =>
bdd/rust/tests/helpers/env.rs (50%)
create mode 100644 core/configs/src/server_config/node.rs
create mode 100644 core/integration/tests/cluster/fast_primary_rejoin.rs
create mode 100644 core/integration/tests/cluster/partition_primary_routing.rs
create mode 100644 core/integration/tests/cluster/staggered_bootstrap.rs
create mode 100644 core/integration/tests/server/cluster_metadata_advertised.rs
create mode 100644 core/simulator/src/seeds.rs
create mode 100644 core/simulator/src/workload/state_checker.rs
create mode 100644 foreign/csharp/Iggy_SDK.Tests.BDD/Context/TestEnvironment.cs
copy core/bench/report/src/types/mod.rs => foreign/node/src/bdd/env.ts (50%)
create mode 100644 foreign/node/src/client/client.connection-string.test.ts
create mode 100644 foreign/node/src/client/client.connection-string.ts
copy core/bench/dashboard/frontend/src/components/theme/mod.rs =>
foreign/node/src/constant.ts (89%)
create mode 100644 foreign/node/src/duration.utils.test.ts
create mode 100644 foreign/node/src/duration.utils.ts
create mode 100644 foreign/node/src/e2e/tcp.connection-string.e2e.ts
create mode 100644 gateways/README.md
copy {core/bench => gateways/kafka}/Cargo.toml (54%)
create mode 100644 gateways/kafka/README.md
create mode 100644 gateways/kafka/docs/MANUAL_TESTING.md
create mode 100644 gateways/kafka/docs/SCOPE.md
create mode 100644 gateways/kafka/docs/TEST_SUITE.md
create mode 100644 gateways/kafka/docs/kafka_api_keys_reference.md
create mode 100755 gateways/kafka/scripts/ci-wire-fixtures.sh
create mode 100644 gateways/kafka/src/error.rs
copy bdd/rust/tests/steps/mod.rs => gateways/kafka/src/lib.rs (85%)
create mode 100644 gateways/kafka/src/main.rs
create mode 100644 gateways/kafka/src/protocol/api.rs
create mode 100644 gateways/kafka/src/protocol/bounds_guard.rs
create mode 100644 gateways/kafka/src/protocol/header.rs
copy {bdd/rust/tests/helpers => gateways/kafka/src/protocol}/mod.rs (91%)
create mode 100644 gateways/kafka/src/protocol/responses.rs
create mode 100644 gateways/kafka/src/server.rs
create mode 100644 gateways/kafka/tests/api_handler_tests.rs
create mode 100644 gateways/kafka/tests/broker_advertise_tests.rs
create mode 100644 gateways/kafka/tests/common/codec.rs
create mode 100644 gateways/kafka/tests/common/fixtures.rs
copy bdd/rust/tests/stream_crud.rs => gateways/kafka/tests/common/scope.rs
(60%)
create mode 100644 gateways/kafka/tests/common/server.rs
create mode 100644 gateways/kafka/tests/common/tcp.rs
create mode 100644 gateways/kafka/tests/common/wire.rs
copy foreign/csharp/Iggy_SDK_Tests/Utils/DummyObj/DummyObjFactory.cs =>
gateways/kafka/tests/fixtures_canary_tests.rs (51%)
create mode 100644 gateways/kafka/tests/golden_wire_fixtures_tests.rs
create mode 100644 gateways/kafka/tests/header_tests.rs
create mode 100644 gateways/kafka/tests/listener_robustness_tests.rs
create mode 100644 gateways/kafka/tests/response_negative_tests.rs
create mode 100644 gateways/kafka/tests/server_e2e_tests.rs
create mode 100644 gateways/kafka/tests/server_integration_tests.rs
create mode 100644 gateways/kafka/tests/version_firewall_tests.rs
copy {core/bench/runner => gateways/kafka/tools/kafka-tool}/Cargo.toml (73%)
create mode 100644 gateways/kafka/tools/kafka-tool/README.md
create mode 100644 gateways/kafka/tools/kafka-tool/src/main.rs
create mode 100644 gateways/kafka/tools/kafka-tool/src/response.rs
create mode 100644 gateways/kafka/tools/kafka-tool/tests/generate_cli_tests.rs