Nessuna descrizione

Dominic Evans c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
.github 6fb86a44d5 Add stale probot (#1609) 4 anni fa
examples 8b72385c90 adds a note about consumer groups Consume method 4 anni fa
mocks 88b0e98974 removes unused fields/methods 4 anni fa
tools 8a56b725ac enables goimports lint 4 anni fa
vagrant b1c7763921 fix: use modern kafka server.properties in vagrant 4 anni fa
.gitignore 151daaac97 Addressing feeback 6 anni fa
.golangci.yml e4913aef83 enables varcheck 4 anni fa
CHANGELOG.md 5f7121b03e Add changelog for 1.26.1 4 anni fa
LICENSE 8da9fa72b8 Technically Shopify owns the repo 6 anni fa
Makefile b8c5f7cfe1 Add GitHub Actions workflows, use golangci-lint 4 anni fa
README.md 0adc8d5a15 Add support for kafka 2.4.0 5 anni fa
Vagrantfile b8c5f7cfe1 Add GitHub Actions workflows, use golangci-lint 4 anni fa
acl_bindings.go 29d30a3c4c Refactor misspelled word Resouce to Resource 5 anni fa
acl_create_request.go 3328055d57 another pull request to please lint gods 5 anni fa
acl_create_request_test.go 29d30a3c4c Refactor misspelled word Resouce to Resource 5 anni fa
acl_create_response.go 3328055d57 another pull request to please lint gods 5 anni fa
acl_create_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 anni fa
acl_delete_request.go 3328055d57 another pull request to please lint gods 5 anni fa
acl_delete_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 anni fa
acl_delete_response.go 6b5b79ff65 enables unconver/unused 4 anni fa
acl_delete_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 anni fa
acl_describe_request.go 3328055d57 another pull request to please lint gods 5 anni fa
acl_describe_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 anni fa
acl_describe_response.go 6b5b79ff65 enables unconver/unused 4 anni fa
acl_describe_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 anni fa
acl_filter.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest 5 anni fa
acl_types.go 483263c182 using iota for constants and some style fixes 5 anni fa
add_offsets_to_txn_request.go 3328055d57 another pull request to please lint gods 5 anni fa
add_offsets_to_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
add_offsets_to_txn_response.go 3328055d57 another pull request to please lint gods 5 anni fa
add_offsets_to_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
add_partitions_to_txn_request.go 3328055d57 another pull request to please lint gods 5 anni fa
add_partitions_to_txn_request_test.go 07ff436a6d Fix linter errors 4 anni fa
add_partitions_to_txn_response.go 3328055d57 another pull request to please lint gods 5 anni fa
add_partitions_to_txn_response_test.go 07ff436a6d Fix linter errors 4 anni fa
admin.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 anni fa
admin_test.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 anni fa
alter_configs_request.go 3328055d57 another pull request to please lint gods 5 anni fa
alter_configs_request_test.go 07ff436a6d Fix linter errors 4 anni fa
alter_configs_response.go 3328055d57 another pull request to please lint gods 5 anni fa
alter_configs_response_test.go 07ff436a6d Fix linter errors 4 anni fa
api_versions_request.go 3328055d57 another pull request to please lint gods 5 anni fa
api_versions_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
api_versions_response.go 3328055d57 another pull request to please lint gods 5 anni fa
api_versions_response_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
async_producer.go 574371b50a removes var when assigning a value immediately 4 anni fa
async_producer_test.go 32082edf2b tests: remove unused testLogger{} 4 anni fa
balance_strategy.go 88b0e98974 removes unused fields/methods 4 anni fa
balance_strategy_test.go f6fb4afcdd simple compare statement 4 anni fa
broker.go ca7391280e Fix memory leak when Broker.Open and Broker.Close called repeatedly 4 anni fa
broker_test.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
client.go 38f81f8298 Updated "retrying" log message when BackoffFunc implemented 4 anni fa
client_test.go e5ac353cdd fix: remove use of t.testing.FailNow() inside goroutine 4 anni fa
client_tls_test.go 07ff436a6d Fix linter errors 4 anni fa
compress.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
config.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
config_resource_type.go fb8b9b5a10 fix: use the broker for any admin on BrokerConfig 4 anni fa
config_test.go 07ff436a6d Fix linter errors 4 anni fa
consumer.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
consumer_group.go 8b72385c90 adds a note about consumer groups Consume method 4 anni fa
consumer_group_members.go 12fa6736bd fixed some typo and added some comments 6 anni fa
consumer_group_members_test.go cecb3d9807 Formating all files with gofmt -s 7 anni fa
consumer_group_test.go 8b72385c90 adds a note about consumer groups Consume method 4 anni fa
consumer_metadata_request.go 12fa6736bd fixed some typo and added some comments 6 anni fa
consumer_metadata_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response 7 anni fa
consumer_metadata_response.go 3006055aad simple typo fixes in consumer metadata response file 5 anni fa
consumer_metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 anni fa
consumer_test.go 88b0e98974 removes unused fields/methods 4 anni fa
control_record.go 3328055d57 another pull request to please lint gods 5 anni fa
control_record_test.go 57215a08ac midway on consumer test 5 anni fa
crc32_field.go 47ae433aa8 Reuse lengthFields 5 anni fa
create_partitions_request.go 7957e72eca factor out getStringLength, use putArrayLength 7 anni fa
create_partitions_request_test.go 07ff436a6d Fix linter errors 4 anni fa
create_partitions_response.go ec2cbc3814 Satisfy the error interface in create responses 5 anni fa
create_partitions_response_test.go 07ff436a6d Fix linter errors 4 anni fa
create_topics_request.go b5ace411a0 add CreateTopicsRequest/Response 7 anni fa
create_topics_request_test.go 07ff436a6d Fix linter errors 4 anni fa
create_topics_response.go ec2cbc3814 Satisfy the error interface in create responses 5 anni fa
create_topics_response_test.go 07ff436a6d Fix linter errors 4 anni fa
decompress.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
delete_groups_request.go 0f1c3e9b87 Add support for DeleteGroups 6 anni fa
delete_groups_request_test.go 0f1c3e9b87 Add support for DeleteGroups 6 anni fa
delete_groups_response.go 7d531e2557 Use native time type for ThrottleTime 6 anni fa
delete_groups_response_test.go 7d531e2557 Use native time type for ThrottleTime 6 anni fa
delete_records_request.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 anni fa
delete_records_request_test.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 anni fa
delete_records_response.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 anni fa
delete_records_response_test.go 76a6b90ec2 Add DeleteRecords operation to Broker 6 anni fa
delete_topics_request.go 796e8cc60f Added support for DeleteTopicsRequest V1 6 anni fa
delete_topics_request_test.go 796e8cc60f Added support for DeleteTopicsRequest V1 6 anni fa
delete_topics_response.go 620549d3ed add DeleteTopicsRequest/Response 7 anni fa
delete_topics_response_test.go 620549d3ed add DeleteTopicsRequest/Response 7 anni fa
describe_configs_request.go 11800fbad1 Set correct Kafka version for DescribeConfigsRequest v1 5 anni fa
describe_configs_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
describe_configs_response.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 anni fa
describe_configs_response_test.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 anni fa
describe_groups_request.go 90a4cc632e Fix race in broker version check 8 anni fa
describe_groups_request_test.go 1621c4959a Add tests for all new request types. 9 anni fa
describe_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
describe_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 anni fa
describe_log_dirs_request.go c3d174d3a2 Fix request decode 5 anni fa
describe_log_dirs_request_test.go 07ff436a6d Fix linter errors 4 anni fa
describe_log_dirs_response.go 91ff84ae8d Use KError for ErrorCodes 5 anni fa
describe_log_dirs_response_test.go 07ff436a6d Fix linter errors 4 anni fa
dev.yml 6bd8a32e60 Run CI actions on pull request 4 anni fa
encoder_decoder.go 124e7c647e Expose producer metrics with go-metrics 8 anni fa
end_txn_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
end_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
end_txn_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
end_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
errors.go fbe15c34cf Handle a few missed protocol errors and add the new one 5 anni fa
fetch_request.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
fetch_request_test.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
fetch_response.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
fetch_response_test.go 48ba0ca84f feat: protocol support for V11 fetch w/ rackID 4 anni fa
find_coordinator_request.go 483263c182 using iota for constants and some style fixes 5 anni fa
find_coordinator_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response 7 anni fa
find_coordinator_response.go 5a23d49f7a remove rack from FindCoordinatorResponse and hardcode Broker-decode/encode version to 0 6 anni fa
find_coordinator_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 anni fa
functional_client_test.go e931cc00ed Stop test if client.Coordinator fails somehow 8 anni fa
functional_consumer_group_test.go a318f6ee7d CI test fixes 6 anni fa
functional_consumer_test.go 37faed7ffc enables zstd bumping the right things 4 anni fa
functional_offset_manager_test.go ccab789d44 OffsetManager: match upstream mark/next behaviour 8 anni fa
functional_producer_test.go 2db8d8aea2 Add requests-in-flight metric 4 anni fa
functional_test.go 171edfcb2e tests: remove unused proxyClient and Proxies variables 4 anni fa
go.mod c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
go.sum c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
gssapi_kerberos.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
heartbeat_request.go 90a4cc632e Fix race in broker version check 8 anni fa
heartbeat_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
heartbeat_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
heartbeat_response_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
init_producer_id_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
init_producer_id_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
init_producer_id_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
init_producer_id_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
join_group_request.go e1b85f3400 Added versioning for join-group requests and responses 6 anni fa
join_group_request_test.go e1b85f3400 Added versioning for join-group requests and responses 6 anni fa
join_group_response.go e1b85f3400 Added versioning for join-group requests and responses 6 anni fa
join_group_response_test.go e1b85f3400 Added versioning for join-group requests and responses 6 anni fa
kerberos_client.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
kerberos_client_test.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
leave_group_request.go 90a4cc632e Fix race in broker version check 8 anni fa
leave_group_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
leave_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
leave_group_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 anni fa
length_field.go 47ae433aa8 Reuse lengthFields 5 anni fa
list_groups_request.go 90a4cc632e Fix race in broker version check 8 anni fa
list_groups_request_test.go 1621c4959a Add tests for all new request types. 9 anni fa
list_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
list_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 anni fa
message.go 07ff436a6d Fix linter errors 4 anni fa
message_set.go 47ae433aa8 Reuse lengthFields 5 anni fa
message_test.go 7d77064a4d Revert "Add workaround for an empty zstd message" 6 anni fa
metadata_request.go c547697705 bug: V5 MetadataRequest nullable topics array 5 anni fa
metadata_request_test.go ac7342c248 fix tests 4 anni fa
metadata_response.go 07ff436a6d Fix linter errors 4 anni fa
metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" 5 anni fa
metrics.go 82be3b4da9 Unregister all broker metrics on broker stop 6 anni fa
metrics_test.go 2db8d8aea2 Add requests-in-flight metric 4 anni fa
mockbroker.go 6709a950d8 enables structcheck and others 4 anni fa
mockkerberos.go c6ac2d9ca8 Revert "refresh 3rdparty dependencies" 4 anni fa
mockresponses.go 6d92277014 Sets ConfigEntry.Default flag in addition to the ConfigEntry.Source for Kafka versions > V1_1_0_0 (#1594) 4 anni fa
offset_commit_request.go c8f961f633 Address a few staticcheck suggestions 5 anni fa
offset_commit_request_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 anni fa
offset_commit_response.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 anni fa
offset_commit_response_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response 6 anni fa
offset_fetch_request.go 6c7918ef5a Added OffsetFetch support up to v5 6 anni fa
offset_fetch_request_test.go 6c7918ef5a Added OffsetFetch support up to v5 6 anni fa
offset_fetch_response.go 6c7918ef5a Added OffsetFetch support up to v5 6 anni fa
offset_fetch_response_test.go 6c7918ef5a Added OffsetFetch support up to v5 6 anni fa
offset_manager.go 07ff436a6d Fix linter errors 4 anni fa
offset_manager_test.go 07ff436a6d Fix linter errors 4 anni fa
offset_request.go 6b5b79ff65 enables unconver/unused 4 anni fa
offset_request_test.go 8869e903fa Add a getter for replica ID 6 anni fa
offset_response.go e42dc76c4e Add missing Kafka versions 6 anni fa
offset_response_test.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 anni fa
packet_decoder.go 4ed1ab2ab8 Provide peekInt8 to reduce allocations 5 anni fa
packet_encoder.go b3f149d4d2 add create partitions 7 anni fa
partitioner.go a74fb772b5 update name of partitioner option so it makes more sense 6 anni fa
partitioner_test.go 9b2c4d6e2c Make Partitioner.RequiresConsistency vary per-message 6 anni fa
prep_encoder.go b3f149d4d2 add create partitions 7 anni fa
produce_request.go 37faed7ffc enables zstd bumping the right things 4 anni fa
produce_request_test.go 7ad9a62d7d Fix TestProduceRequest 6 anni fa
produce_response.go 1c8ddd93de produce_response.go: remove unused functions 4 anni fa
produce_response_test.go 37faed7ffc enables zstd bumping the right things 4 anni fa
produce_set.go 37faed7ffc enables zstd bumping the right things 4 anni fa
produce_set_test.go 07ff436a6d Fix linter errors 4 anni fa
real_decoder.go 88b0e98974 removes unused fields/methods 4 anni fa
real_encoder.go b3f149d4d2 add create partitions 7 anni fa
record.go b68420a29b control record + isTransactional bit parsing 5 anni fa
record_batch.go 47ae433aa8 Reuse lengthFields 5 anni fa
record_test.go 780ea152be Fix gzip compression encode/decode test 6 anni fa
records.go 88b0e98974 removes unused fields/methods 4 anni fa
records_test.go 6b86562f5c ut transactional flag 5 anni fa
request.go 1799d6c8db fix: fill in the Fetch{Request,Response} protocol 4 anni fa
request_test.go bf8cdb7bd1 tests: remove unused testRequestBody{} and its functions 4 anni fa
response_header.go 55578535cf Add SASL SCRAM-SHA-512 and SCRAM-SHA-256 mechanismes 5 anni fa
response_header_test.go 893044d278 Fix Golint errors, except for all the missing comments. 11 anni fa
sarama.go 2db8d8aea2 Add requests-in-flight metric 4 anni fa
sasl_authenticate_request.go 56ffac20e5 Clean up error handling 5 anni fa
sasl_authenticate_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
sasl_authenticate_response.go 56ffac20e5 Clean up error handling 5 anni fa
sasl_authenticate_response_test.go 07ff436a6d Fix linter errors 4 anni fa
sasl_handshake_request.go f5b3e0ed01 Implement SASL/OAUTHBEARER support 6 anni fa
sasl_handshake_request_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
sasl_handshake_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
sasl_handshake_response_test.go 574371b50a removes var when assigning a value immediately 4 anni fa
sticky_assignor_user_data.go 01915cf82e Add sticky partition assignor 5 anni fa
sticky_assignor_user_data_test.go 01915cf82e Add sticky partition assignor 5 anni fa
sync_group_request.go 124e7c647e Expose producer metrics with go-metrics 8 anni fa
sync_group_request_test.go 1621c4959a Add tests for all new request types. 9 anni fa
sync_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 7 anni fa
sync_group_response_test.go 37654da7e1 Add support for decoding versioned responses 8 anni fa
sync_producer.go 1e2740380a Do not modify ProducerMessage.MetaData during the whole publishing process. 6 anni fa
sync_producer_test.go e3ecf7b088 added offline replicas operation to client for kafka version >= 1.x 5 anni fa
timestamp.go ed80c61d79 Make timestamp fields of type time.Time and time.Duration 7 anni fa
txn_offset_commit_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
txn_offset_commit_request_test.go 07ff436a6d Fix linter errors 4 anni fa
txn_offset_commit_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) 6 anni fa
txn_offset_commit_response_test.go 07ff436a6d Fix linter errors 4 anni fa
utils.go 477ab8fc96 removes cycle for appending all elements 4 anni fa
utils_test.go a709f2d5ca String functions for KafkaVersion (#989) 7 anni fa
zstd.go 8a56b725ac enables goimports lint 4 anni fa

README.md

sarama

GoDoc Build Status Coverage

Sarama is an MIT-licensed Go client library for Apache Kafka version 0.8 (and later).

Getting started

  • API documentation and examples are available via godoc.
  • Mocks for testing are available in the mocks subpackage.
  • The examples directory contains more elaborate example applications.
  • The tools directory contains command line tools that can be useful for testing, diagnostics, and instrumentation.

You might also want to look at the Frequently Asked Questions.

Compatibility and API stability

Sarama provides a "2 releases + 2 months" compatibility guarantee: we support the two latest stable releases of Kafka and Go, and we provide a two month grace period for older releases. This means we currently officially support Go 1.12 through 1.13, and Kafka 2.1 through 2.4, although older releases are still likely to work.

Sarama follows semantic versioning and provides API stability via the gopkg.in service. You can import a version with a guaranteed stable API via http://gopkg.in/Shopify/sarama.v1. A changelog is available here.

Contributing