This is an automated email from the ASF dual-hosted git repository.
hubcio pushed a change to branch server-ng-pr5-responses-recut
in repository https://gitbox.apache.org/repos/asf/iggy.git
discard fe0c0048e refactor(server): split responses.rs by role and unify reply
framing
add 7b78014c9 fix(csharp): update string length validation to use UTF-8
byte count (#4072)
add 25e9d44dd fix(go): update MaxPayloadSize from 10 MB to 64 MB to match
size update in rust message construction (#4080)
add cb57ce2bd fix(connectors): validate protobuf field lengths
consistently (#4069)
add 3462fed5c fix(shard): widen partition repair when a view-adopted
suffix is missing bodies (#4074)
add 64b0bae71 feat(python): expose get_stats on IggyClient (#4018)
add 08ff476f6 docs: add AI assistance expectations to CONTRIBUTING (#4081)
add 9a7ead986 perf(node, csharp, java, go): generate message ids from
random bytes instead of via UUIDs (#4076)
add 227786432 fix(shard): drive metadata repair and the commit walk from
the tick (#4008)
add 0bdd8c6ca fix(partitions): bound consumer offset state per partition
(#4063)
add add0bd967 feat(python): add QuicConfig transport configuration (#3991)
add 03ca396bb feat(python): add stream listing, update, delete, and purge
(#3701)
add b87b6a6f7 fix(java): size wire strings by UTF-8 byte length, not char
count (#4068)
add ab734f17f fix(connectors): validate connector key before it becomes a
path (#4083)
add 06a12e306 chore: add Iggy banner to server startup (#4085)
add bd1a873fe feat(python): add HttpConfig transport configuration (#3992)
add 1004eee2d ci(connectors): run a plugin's integration suite when it
changes (#4077)
add be3663805 feat(python): support message partitioning strategies (#3927)
new 41cf2c5ba refactor(server): split responses.rs by role and unify reply
framing
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (fe0c0048e)
\
N -- N -- N refs/heads/server-ng-pr5-responses-recut (41cf2c5ba)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../actions/python-maturin/pre-merge/action.yml | 24 +-
.github/actions/rust/pre-merge/action.yml | 51 +-
.github/workflows/coverage-baseline.yml | 14 +-
CONTRIBUTING.md | 17 +
Cargo.lock | 22 +-
Cargo.toml | 10 +-
bdd/go/tests/tcp_test/offset_feature_delete.go | 21 +-
bdd/python/pylock.toml | 346 +--
bdd/python/uv.lock | 4 +-
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/bench/report/src/types/server_stats.rs | 2 +-
core/bench/src/benchmarks/common.rs | 10 +-
core/binary_protocol/Cargo.toml | 2 +-
core/binary_protocol/src/lib.rs | 13 +-
core/binary_protocol/src/primitives/ack_level.rs | 9 +-
.../consumer_offsets/delete_consumer_offset.rs | 4 +-
.../consumer_offsets/store_consumer_offset.rs | 4 +-
core/cli/Cargo.toml | 2 +-
core/common/Cargo.toml | 2 +-
core/common/src/error/iggy_error.rs | 10 +
core/common/src/traits/consumer_offset_client.rs | 7 +
core/common/src/traits/message_client.rs | 10 +
core/common/src/types/stats/mod.rs | 2 +-
core/configs/src/server_config/cluster.rs | 8 +-
core/configs/src/server_config/defaults.rs | 2 +
core/configs/src/server_config/displays.rs | 6 +-
core/configs/src/server_config/partition.rs | 72 +
core/connectors/runtime/README.md | 15 +
core/connectors/runtime/src/api/error.rs | 15 +-
.../mod.rs => connectors/runtime/src/api/key.rs} | 35 +-
core/connectors/runtime/src/api/mod.rs | 1 +
core/connectors/runtime/src/api/sink.rs | 44 +-
core/connectors/runtime/src/api/source.rs | 44 +-
core/connectors/runtime/src/configs/connectors.rs | 182 +-
.../src/configs/connectors/http_provider.rs | 12 +-
.../src/configs/connectors/local_provider.rs | 50 +-
core/connectors/runtime/src/error.rs | 6 +
core/connectors/runtime/src/main.rs | 30 +-
core/connectors/sdk/Cargo.toml | 2 +-
core/connectors/sdk/src/decoders/proto.rs | 135 +-
core/integration/Cargo.toml | 4 +
core/integration/src/harness/disk.rs | 33 +-
.../tests/cluster/consumer_offset_quota.rs | 357 +++
core/integration/tests/cluster/mod.rs | 1 +
core/integration/tests/connectors/api/endpoints.rs | 104 +
.../api/{config.toml => key_validation.toml} | 4 +-
.../tests/server/consumer_offset_quota_vsr.rs | 514 ++++
core/integration/tests/server/mod.rs | 1 +
core/integration/tests/server/raw_tcp.rs | 5 +
core/message_bus/src/lib.rs | 2 +-
core/metadata/src/impls/metadata.rs | 159 +-
core/metadata/src/stm/user.rs | 4 +-
core/partitions/src/consumer_offset_capacity.rs | 717 +++++
core/partitions/src/iggy_partition.rs | 2775 +++++++++++++++++---
core/partitions/src/iggy_partitions.rs | 51 +-
core/partitions/src/lib.rs | 19 +-
core/partitions/src/offset_storage.rs | 197 +-
core/partitions/src/poll_plan.rs | 352 ++-
core/partitions/src/state_transfer.rs | 727 +++--
core/partitions/src/types.rs | 5 +
core/sdk/Cargo.toml | 2 +-
core/sdk/src/clients/consumer.rs | 32 +-
core/sdk/src/leader_aware.rs | 25 +
core/sdk/src/prelude.rs | 2 +
core/sdk/src/quic/quic_client.rs | 14 +-
core/sdk/src/tcp/tcp_client.rs | 27 +-
core/sdk/src/websocket/websocket_client.rs | 14 +-
core/server/Cargo.toml | 2 +-
core/server/config.toml | 49 +-
core/server/src/banner.rs | 80 +
core/server/src/boot/recovery.rs | 17 +-
core/server/src/consumer_group.rs | 46 +-
core/server/src/dispatch/failure.rs | 16 +-
core/server/src/dispatch/mod.rs | 1 +
core/server/src/dispatch/partition.rs | 399 ++-
core/server/src/dispatch/session_ops.rs | 1 +
core/server/src/dispatch/test_support.rs | 1 +
core/server/src/http/handlers.rs | 18 +-
core/server/src/main.rs | 2 +
core/server/src/namespace.rs | 51 +-
core/server/src/offset_recovery.rs | 354 ++-
core/server/src/partition_helpers.rs | 119 +-
core/server/src/partition_reconciler.rs | 380 ++-
core/server/src/shell.rs | 6 +-
core/shard/src/lib.rs | 1052 ++++++--
core/shard/src/metrics.rs | 163 +-
core/shard/src/router.rs | 9 +
core/simulator/src/client.rs | 4 +-
core/simulator/src/deps.rs | 14 +
core/simulator/src/lib.rs | 965 ++++++-
core/simulator/src/replica.rs | 1 +
core/simulator/src/workload/effect.rs | 2 +-
core/simulator/src/workload/shadow.rs | 2 +-
.../apache/iggy/examples/async/AsyncConsumer.java | 3 +-
examples/node/package-lock.json | 2 +-
examples/python/README.md | 2 +-
examples/python/basic/producer.py | 8 +-
examples/python/getting-started/consumer.py | 27 +-
examples/python/getting-started/producer.py | 27 +-
examples/python/pylock.toml | 81 +-
examples/python/uv.lock | 4 +-
foreign/csharp/Iggy_SDK/Contracts/StatsResponse.cs | 2 +-
.../csharp/Iggy_SDK/Contracts/Tcp/TcpContracts.cs | 65 +-
foreign/csharp/Iggy_SDK/Extensions/Extensions.cs | 8 +-
foreign/csharp/Iggy_SDK/Headers/HeaderKey.cs | 17 +-
foreign/csharp/Iggy_SDK/Headers/HeaderValue.cs | 12 +-
foreign/csharp/Iggy_SDK/Identifier.cs | 56 +-
foreign/csharp/Iggy_SDK/IggyClient/IIggyStream.cs | 2 +-
foreign/csharp/Iggy_SDK/IggyClient/IIggyTopic.cs | 4 +-
.../Implementations/HttpMessageStream.cs | 2 +-
foreign/csharp/Iggy_SDK/Iggy_SDK.csproj | 2 +-
foreign/csharp/Iggy_SDK/Kinds/Partitioning.cs | 46 +-
.../Iggy_SDK/Utils/TcpMessageStreamHelpers.cs | 5 +-
foreign/csharp/Iggy_SDK/Utils/WireName.cs | 53 +
.../ContractsTests/WireNameLengthContractsTests.cs | 217 ++
.../UtilityTests/HeaderValueTests.cs | 7 +
.../IdentifiersByteSerializationTests.cs | 131 +
foreign/go/contracts/messages.go | 4 +-
foreign/go/contracts/version.go | 2 +-
foreign/go/errors/errors.yaml | 4 +
foreign/go/errors/errors_gen.go | 17 +
foreign/go/errors/errors_test.go | 19 +
foreign/go/internal/command/message.go | 9 +-
.../apache/iggy/client/async/MessagesClient.java | 2 +-
.../client/async/tcp/ConsumerGroupsTcpClient.java | 10 +-
.../async/tcp/PersonalAccessTokensTcpClient.java | 14 +-
.../iggy/client/async/tcp/StreamsTcpClient.java | 22 +-
.../iggy/client/async/tcp/TopicsTcpClient.java | 4 +-
.../iggy/client/async/tcp/UsersTcpClient.java | 46 +-
.../iggy/client/async/tcp/vsr/VsrLoginCodec.java | 58 +-
.../org/apache/iggy/exception/IggyErrorCode.java | 3 +
.../org/apache/iggy/identifier/Identifier.java | 32 +-
.../main/java/org/apache/iggy/message/Message.java | 3 +-
.../java/org/apache/iggy/message/Partitioning.java | 42 +-
.../org/apache/iggy/serde/BytesSerializer.java | 41 +-
.../org/apache/iggy/serde/MessageIdGenerator.java | 74 +
.../client/async/tcp/vsr/VsrLoginCodecTest.java | 159 ++
.../client/blocking/tcp/BytesSerializerTest.java | 109 +-
.../client/blocking/tcp/MessagesTcpClientTest.java | 35 +
.../client/blocking/tcp/StreamTcpClientTest.java | 24 +
.../apache/iggy/exception/IggyErrorCodeTest.java | 1 +
.../org/apache/iggy/identifier/IdentifierTest.java | 49 +
.../java/org/apache/iggy/message/MessageTest.java | 9 +
.../org/apache/iggy/message/PartitioningTest.java | 60 +
.../apache/iggy/serde/MessageIdGeneratorTest.java | 80 +
foreign/node/package-lock.json | 4 +-
foreign/node/package.json | 2 +-
foreign/node/src/wire/error.code.test.ts | 4 +
foreign/node/src/wire/error.code.ts | 1 +
.../node/src/wire/message/message.utils.test.ts | 129 +
foreign/node/src/wire/message/message.utils.ts | 44 +-
foreign/node/src/wire/number.utils.test.ts | 67 +
foreign/node/src/wire/number.utils.ts | 25 +-
foreign/python/Cargo.toml | 4 +-
foreign/python/README.md | 37 +-
foreign/python/apache_iggy.pyi | 719 ++++-
foreign/python/pylock.toml | 37 +-
foreign/python/pyproject.toml | 4 +-
foreign/python/src/client.rs | 303 ++-
foreign/python/src/config.rs | 639 ++++-
foreign/python/src/duration.rs | 33 +
foreign/python/src/lib.rs | 18 +-
foreign/python/src/options.rs | 2 +
foreign/python/src/partitioning.rs | 105 +
foreign/python/src/stats.rs | 449 ++++
foreign/python/src/stream.rs | 78 +-
foreign/python/src/topic.rs | 19 +
foreign/python/tests/conftest.py | 27 +-
foreign/python/tests/test_client_config.py | 4 +-
foreign/python/tests/test_connectivity.py | 2 +-
foreign/python/tests/test_http_config.py | 363 +++
foreign/python/tests/test_message_operations.py | 137 +
foreign/python/tests/test_quic_config.py | 494 ++++
foreign/python/tests/test_stats.py | 250 ++
foreign/python/tests/test_stream.py | 444 +++-
foreign/python/tests/utils.py | 44 +-
foreign/python/uv.lock | 28 +-
licenserc.toml | 1 +
182 files changed, 15398 insertions(+), 1990 deletions(-)
copy core/{integration/tests/connectors/postgres/mod.rs =>
connectors/runtime/src/api/key.rs} (50%)
create mode 100644 core/integration/tests/cluster/consumer_offset_quota.rs
copy core/integration/tests/connectors/api/{config.toml =>
key_validation.toml} (83%)
create mode 100644 core/integration/tests/server/consumer_offset_quota_vsr.rs
create mode 100644 core/partitions/src/consumer_offset_capacity.rs
create mode 100644 core/server/src/banner.rs
create mode 100644 foreign/csharp/Iggy_SDK/Utils/WireName.cs
create mode 100644
foreign/csharp/Iggy_SDK_Tests/ContractsTests/WireNameLengthContractsTests.cs
create mode 100644
foreign/java/java-sdk/src/main/java/org/apache/iggy/serde/MessageIdGenerator.java
create mode 100644
foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/vsr/VsrLoginCodecTest.java
create mode 100644
foreign/java/java-sdk/src/test/java/org/apache/iggy/serde/MessageIdGeneratorTest.java
create mode 100644 foreign/node/src/wire/message/message.utils.test.ts
create mode 100644 foreign/node/src/wire/number.utils.test.ts
create mode 100644 foreign/python/src/partitioning.rs
create mode 100644 foreign/python/src/stats.rs
create mode 100644 foreign/python/tests/test_http_config.py
create mode 100644 foreign/python/tests/test_quic_config.py
create mode 100644 foreign/python/tests/test_stats.py