Bez popisu

Vlad Gorodetsky a20d267234 Merge pull request #1569 from Shopify/changelog-1.25.0 před 5 roky
.github bb8051d46c improves template formatting před 5 roky
examples 5302f4bb5e Update documentation with Sarama instead of Sarma před 5 roky
mocks 8a09106c11 fix incorrect SetTopicMetadata name mentions (introduced in 2052bd9) před 5 roky
tools 3e595ba288 Support TLS protocol in kafka-producer-performance před 5 roky
vagrant 49a563683f Fix possible faulty metrics in TestFuncProducing* (#1545) před 5 roky
.gitignore 151daaac97 Addressing feeback před 6 roky
.travis.yml 0adc8d5a15 Add support for kafka 2.4.0 před 5 roky
CHANGELOG.md af142c654b Add changelog for 1.25.0 před 5 roky
LICENSE 8da9fa72b8 Technically Shopify owns the repo před 7 roky
Makefile 99d5206b02 this is not valid anymore with go mod před 5 roky
README.md 0adc8d5a15 Add support for kafka 2.4.0 před 5 roky
Vagrantfile 609cb1c1db Use sensible heap size for JVMs in Vagrant před 8 roky
acl_bindings.go 29d30a3c4c Refactor misspelled word Resouce to Resource před 5 roky
acl_create_request.go 3328055d57 another pull request to please lint gods před 6 roky
acl_create_request_test.go 29d30a3c4c Refactor misspelled word Resouce to Resource před 5 roky
acl_create_response.go 3328055d57 another pull request to please lint gods před 6 roky
acl_create_response_test.go 86d6f390cf add Describe/Create/DeleteAcls před 7 roky
acl_delete_request.go 3328055d57 another pull request to please lint gods před 6 roky
acl_delete_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest před 6 roky
acl_delete_response.go 3328055d57 another pull request to please lint gods před 6 roky
acl_delete_response_test.go 86d6f390cf add Describe/Create/DeleteAcls před 7 roky
acl_describe_request.go 3328055d57 another pull request to please lint gods před 6 roky
acl_describe_request_test.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest před 6 roky
acl_describe_response.go 3328055d57 another pull request to please lint gods před 6 roky
acl_describe_response_test.go 86d6f390cf add Describe/Create/DeleteAcls před 7 roky
acl_filter.go 66abce6c25 Implements v1 of {Create,Describe,Delete}AclRequest před 6 roky
acl_types.go 483263c182 using iota for constants and some style fixes před 6 roky
add_offsets_to_txn_request.go 3328055d57 another pull request to please lint gods před 6 roky
add_offsets_to_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
add_offsets_to_txn_response.go 3328055d57 another pull request to please lint gods před 6 roky
add_offsets_to_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
add_partitions_to_txn_request.go 3328055d57 another pull request to please lint gods před 6 roky
add_partitions_to_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
add_partitions_to_txn_response.go 3328055d57 another pull request to please lint gods před 6 roky
add_partitions_to_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
admin.go 7465d6b37e fixed ClusterAdmin DescribeCluster api return controllerID invalid #1511 před 5 roky
admin_test.go 6fce0f9c8d fix bug deleteRecord (#1425) před 5 roky
alter_configs_request.go 3328055d57 another pull request to please lint gods před 6 roky
alter_configs_request_test.go 6ce9e9249a Fix flaky TestAlterConfigsRequest před 7 roky
alter_configs_response.go 3328055d57 another pull request to please lint gods před 6 roky
alter_configs_response_test.go f7466ea37d Add Describe + AlterConfigs (#1014) před 7 roky
api_versions_request.go 3328055d57 another pull request to please lint gods před 6 roky
api_versions_request_test.go c5f4248429 Add support for latest protocol messages před 8 roky
api_versions_response.go 3328055d57 another pull request to please lint gods před 6 roky
api_versions_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
async_producer.go 9f8650a8fa fix brokerProducer goroutine leak (#1442) před 5 roky
async_producer_test.go 9f8650a8fa fix brokerProducer goroutine leak (#1442) před 5 roky
balance_strategy.go b29086bdaa Change type of unvisitedPartitions from []string to bool to economize před 5 roky
balance_strategy_test.go e46c30deb2 Correctly identify consumers that are no longer subscribed to topics před 5 roky
broker.go 267f69c802 fix: ensure consistent use of read/write deadlines před 5 roky
broker_test.go 267f69c802 fix: ensure consistent use of read/write deadlines před 5 roky
client.go afedecade3 Merge pull request #1531 from roblaszczak/master před 5 roky
client_test.go fe1b1849d0 Support timeout when fetching metadata před 6 roky
client_tls_test.go 970116bc74 Support Go 1.11 před 6 roky
compress.go c65bdddf6c Remove cgo zstd package před 5 roky
config.go 72a629d7d1 Allow the Consumer to disable auto-commit offsets (#1164) před 5 roky
config_resource_type.go 3328055d57 another pull request to please lint gods před 6 roky
config_test.go 3ec45e581a Add kerberos support před 5 roky
consumer.go c50148e0a8 fetch size overflow (#1376) před 5 roky
consumer_group.go e56a4a9baa added comments for handleError před 5 roky
consumer_group_members.go 12fa6736bd fixed some typo and added some comments před 6 roky
consumer_group_members_test.go cecb3d9807 Formating all files with gofmt -s před 8 roky
consumer_group_test.go a318f6ee7d CI test fixes před 6 roky
consumer_metadata_request.go 12fa6736bd fixed some typo and added some comments před 6 roky
consumer_metadata_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response před 7 roky
consumer_metadata_response.go 3006055aad simple typo fixes in consumer metadata response file před 6 roky
consumer_metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" před 6 roky
consumer_test.go b5630e543b bug: handle and log throttled FetchResponses před 5 roky
control_record.go 3328055d57 another pull request to please lint gods před 6 roky
control_record_test.go 57215a08ac midway on consumer test před 6 roky
crc32_field.go 47ae433aa8 Reuse lengthFields před 5 roky
create_partitions_request.go 7957e72eca factor out getStringLength, use putArrayLength před 7 roky
create_partitions_request_test.go b3f149d4d2 add create partitions před 7 roky
create_partitions_response.go ec2cbc3814 Satisfy the error interface in create responses před 6 roky
create_partitions_response_test.go ec2cbc3814 Satisfy the error interface in create responses před 6 roky
create_topics_request.go b5ace411a0 add CreateTopicsRequest/Response před 7 roky
create_topics_request_test.go b5ace411a0 add CreateTopicsRequest/Response před 7 roky
create_topics_response.go ec2cbc3814 Satisfy the error interface in create responses před 6 roky
create_topics_response_test.go ec2cbc3814 Satisfy the error interface in create responses před 6 roky
decompress.go f352e5cc8b Reuse compression writer objects před 6 roky
delete_groups_request.go 0f1c3e9b87 Add support for DeleteGroups před 7 roky
delete_groups_request_test.go 0f1c3e9b87 Add support for DeleteGroups před 7 roky
delete_groups_response.go 7d531e2557 Use native time type for ThrottleTime před 7 roky
delete_groups_response_test.go 7d531e2557 Use native time type for ThrottleTime před 7 roky
delete_records_request.go 76a6b90ec2 Add DeleteRecords operation to Broker před 7 roky
delete_records_request_test.go 76a6b90ec2 Add DeleteRecords operation to Broker před 7 roky
delete_records_response.go 76a6b90ec2 Add DeleteRecords operation to Broker před 7 roky
delete_records_response_test.go 76a6b90ec2 Add DeleteRecords operation to Broker před 7 roky
delete_topics_request.go 796e8cc60f Added support for DeleteTopicsRequest V1 před 7 roky
delete_topics_request_test.go 796e8cc60f Added support for DeleteTopicsRequest V1 před 7 roky
delete_topics_response.go 620549d3ed add DeleteTopicsRequest/Response před 7 roky
delete_topics_response_test.go 620549d3ed add DeleteTopicsRequest/Response před 7 roky
describe_configs_request.go 11800fbad1 Set correct Kafka version for DescribeConfigsRequest v1 před 6 roky
describe_configs_request_test.go fbd8338718 Implement DescribeConfigsRequest v1 & v2 před 6 roky
describe_configs_response.go 483263c182 using iota for constants and some style fixes před 6 roky
describe_configs_response_test.go f9494b44e1 Implement DescribeConfigsResponse 1 & 2 před 6 roky
describe_groups_request.go 90a4cc632e Fix race in broker version check před 8 roky
describe_groups_request_test.go 1621c4959a Add tests for all new request types. před 9 roky
describe_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
describe_groups_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
describe_log_dirs_request.go c3d174d3a2 Fix request decode před 5 roky
describe_log_dirs_request_test.go d3b9aca765 Fix comment před 5 roky
describe_log_dirs_response.go 91ff84ae8d Use KError for ErrorCodes před 5 roky
describe_log_dirs_response_test.go 669a8c43c3 Add test for DescribeLogDirsResponse před 5 roky
dev.yml 0adc8d5a15 Add support for kafka 2.4.0 před 5 roky
encoder_decoder.go 124e7c647e Expose producer metrics with go-metrics před 8 roky
end_txn_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
end_txn_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
end_txn_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
end_txn_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
errors.go fbe15c34cf Handle a few missed protocol errors and add the new one před 5 roky
fetch_request.go 483263c182 using iota for constants and some style fixes před 6 roky
fetch_request_test.go 953231c528 Add support for Kafka 0.11 in consumer před 7 roky
fetch_response.go 077e5d4f7b PR fixes: před 6 roky
fetch_response_test.go c50148e0a8 fetch size overflow (#1376) před 5 roky
find_coordinator_request.go 483263c182 using iota for constants and some style fixes před 6 roky
find_coordinator_request_test.go a5a9b835af refactor ConsumerMetadataRequest/Response to FindCoordinatorRequest/Response před 7 roky
find_coordinator_response.go 5a23d49f7a remove rack from FindCoordinatorResponse and hardcode Broker-decode/encode version to 0 před 7 roky
find_coordinator_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" před 6 roky
functional_client_test.go e931cc00ed Stop test if client.Coordinator fails somehow před 8 roky
functional_consumer_group_test.go a318f6ee7d CI test fixes před 6 roky
functional_consumer_test.go 9722e739a4 functional test: před 6 roky
functional_offset_manager_test.go ccab789d44 OffsetManager: match upstream mark/next behaviour před 8 roky
functional_producer_test.go 49a563683f Fix possible faulty metrics in TestFuncProducing* (#1545) před 5 roky
functional_test.go 2c40df751c Fix version.satisfies so all tests run against 0.9 před 9 roky
go.mod 8f8380c072 Update compress před 5 roky
go.sum 8f8380c072 Update compress před 5 roky
gssapi_kerberos.go bfff38f6e5 removes gofork direct usage as fix is part of go před 5 roky
heartbeat_request.go 90a4cc632e Fix race in broker version check před 8 roky
heartbeat_request_test.go 1621c4959a Add tests for all new request types. před 9 roky
heartbeat_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
heartbeat_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
init_producer_id_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
init_producer_id_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
init_producer_id_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
init_producer_id_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
join_group_request.go e1b85f3400 Added versioning for join-group requests and responses před 7 roky
join_group_request_test.go e1b85f3400 Added versioning for join-group requests and responses před 7 roky
join_group_response.go e1b85f3400 Added versioning for join-group requests and responses před 7 roky
join_group_response_test.go e1b85f3400 Added versioning for join-group requests and responses před 7 roky
kerberos_client.go 3ec45e581a Add kerberos support před 5 roky
kerberos_client_test.go 3ec45e581a Add kerberos support před 5 roky
leave_group_request.go 90a4cc632e Fix race in broker version check před 8 roky
leave_group_request_test.go 1621c4959a Add tests for all new request types. před 9 roky
leave_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
leave_group_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" před 6 roky
length_field.go 47ae433aa8 Reuse lengthFields před 5 roky
list_groups_request.go 90a4cc632e Fix race in broker version check před 8 roky
list_groups_request_test.go 1621c4959a Add tests for all new request types. před 9 roky
list_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
list_groups_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
message.go 47ae433aa8 Reuse lengthFields před 5 roky
message_set.go 47ae433aa8 Reuse lengthFields před 5 roky
message_test.go 7d77064a4d Revert "Add workaround for an empty zstd message" před 6 roky
metadata_request.go c547697705 bug: V5 MetadataRequest nullable topics array před 6 roky
metadata_request_test.go c547697705 bug: V5 MetadataRequest nullable topics array před 6 roky
metadata_response.go e3ecf7b088 added offline replicas operation to client for kafka version >= 1.x před 6 roky
metadata_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" před 6 roky
metrics.go 82be3b4da9 Unregister all broker metrics on broker stop před 6 roky
metrics_test.go 124e7c647e Expose producer metrics with go-metrics před 8 roky
mockbroker.go 3ec45e581a Add kerberos support před 5 roky
mockkerberos.go 3ec45e581a Add kerberos support před 5 roky
mockresponses.go 2af3badd8c Merge pull request #1485 from agapoff/improved-mock-delete-acl-response před 5 roky
offset_commit_request.go c8f961f633 Address a few staticcheck suggestions před 6 roky
offset_commit_request_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response před 6 roky
offset_commit_response.go 3f16fb0e7a Add support for newer OffsetCommit request/response před 6 roky
offset_commit_response_test.go 3f16fb0e7a Add support for newer OffsetCommit request/response před 6 roky
offset_fetch_request.go 6c7918ef5a Added OffsetFetch support up to v5 před 6 roky
offset_fetch_request_test.go 6c7918ef5a Added OffsetFetch support up to v5 před 6 roky
offset_fetch_response.go 6c7918ef5a Added OffsetFetch support up to v5 před 6 roky
offset_fetch_response_test.go 6c7918ef5a Added OffsetFetch support up to v5 před 6 roky
offset_manager.go 72a629d7d1 Allow the Consumer to disable auto-commit offsets (#1164) před 5 roky
offset_manager_test.go 72a629d7d1 Allow the Consumer to disable auto-commit offsets (#1164) před 5 roky
offset_request.go 374f0e3cd0 Use a boolean to check that replica ID was set před 6 roky
offset_request_test.go 8869e903fa Add a getter for replica ID před 6 roky
offset_response.go e42dc76c4e Add missing Kafka versions před 7 roky
offset_response_test.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] před 8 roky
packet_decoder.go 4ed1ab2ab8 Provide peekInt8 to reduce allocations před 5 roky
packet_encoder.go b3f149d4d2 add create partitions před 7 roky
partitioner.go a74fb772b5 update name of partitioner option so it makes more sense před 6 roky
partitioner_test.go 9b2c4d6e2c Make Partitioner.RequiresConsistency vary per-message před 6 roky
prep_encoder.go b3f149d4d2 add create partitions před 7 roky
produce_request.go 5468405d94 Expose Records union fields před 7 roky
produce_request_test.go 7ad9a62d7d Fix TestProduceRequest před 7 roky
produce_response.go 8e2b04b363 Added support for Idempotent Producer před 6 roky
produce_response_test.go e6c029ff1a Revert "Synced error names and descriptions with the kafka's protocol" před 6 roky
produce_set.go d514254537 Produce records with consistent timestamps (#1455) před 5 roky
produce_set_test.go d514254537 Produce records with consistent timestamps (#1455) před 5 roky
real_decoder.go dec71e97e5 Remove use of magic number před 5 roky
real_encoder.go b3f149d4d2 add create partitions před 7 roky
record.go b68420a29b control record + isTransactional bit parsing před 6 roky
record_batch.go 47ae433aa8 Reuse lengthFields před 5 roky
record_test.go 780ea152be Fix gzip compression encode/decode test před 7 roky
records.go 4ed1ab2ab8 Provide peekInt8 to reduce allocations před 5 roky
records_test.go 6b86562f5c ut transactional flag před 6 roky
request.go 4db9a6dd59 Add test for DescribeLogDirsRequest před 5 roky
request_test.go f4fbc32080 Simple validation of required version před 7 roky
response_header.go 55578535cf Add SASL SCRAM-SHA-512 and SCRAM-SHA-256 mechanismes před 6 roky
response_header_test.go 893044d278 Fix Golint errors, except for all the missing comments. před 11 roky
sarama.go 483263c182 using iota for constants and some style fixes před 6 roky
sasl_authenticate_request.go 56ffac20e5 Clean up error handling před 6 roky
sasl_authenticate_request_test.go daa6ff523d Fix SaslAuthenticateRequest před 6 roky
sasl_authenticate_response.go 56ffac20e5 Clean up error handling před 6 roky
sasl_authenticate_response_test.go dc6025a247 Increase test coverage před 6 roky
sasl_handshake_request.go f5b3e0ed01 Implement SASL/OAUTHBEARER support před 6 roky
sasl_handshake_request_test.go c5f4248429 Add support for latest protocol messages před 8 roky
sasl_handshake_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
sasl_handshake_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
sticky_assignor_user_data.go 01915cf82e Add sticky partition assignor před 5 roky
sticky_assignor_user_data_test.go 01915cf82e Add sticky partition assignor před 5 roky
sync_group_request.go 124e7c647e Expose producer metrics with go-metrics před 8 roky
sync_group_request_test.go 1621c4959a Add tests for all new request types. před 9 roky
sync_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return před 8 roky
sync_group_response_test.go 37654da7e1 Add support for decoding versioned responses před 8 roky
sync_producer.go 1e2740380a Do not modify ProducerMessage.MetaData during the whole publishing process. před 6 roky
sync_producer_test.go e3ecf7b088 added offline replicas operation to client for kafka version >= 1.x před 6 roky
timestamp.go ed80c61d79 Make timestamp fields of type time.Time and time.Duration před 7 roky
txn_offset_commit_request.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
txn_offset_commit_request_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
txn_offset_commit_response.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
txn_offset_commit_response_test.go d81319704e add transaction-related request/responses (22, 24, 25, 26, 28) před 7 roky
utils.go 0adc8d5a15 Add support for kafka 2.4.0 před 5 roky
utils_test.go a709f2d5ca String functions for KafkaVersion (#989) před 7 roky
zstd.go 2fbc232314 Remove double newline před 5 roky

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