No Description

Behrooz Shafiee a1cfcca530 changed Fetch.default value from 32KB to 1MB 7 years ago
.github 376a293238 Update ISSUE_TEMPLATE.md 8 years ago
examples fe841de91b Fix tiny typo in examples README link 8 years ago
mocks 21e1c0b874 Fix comment for mocks.NewConsumer 7 years ago
tools bcc8fb3014 Fix config for calling NewSyncProducer() 8 years ago
vagrant eaafcb0eeb Make vagrant up work again 7 years ago
.gitignore d1539ef689 Added coverage badge 7 years ago
.travis.yml 5d7468a593 Drop golang 1.7 7 years ago
CHANGELOG.md 3b1b38866a Bump changelog 7 years ago
LICENSE 59589985d3 Renaming MIT-LICENSE file to LICENSE and removing created LICENSE file 8 years ago
Makefile d1539ef689 Added coverage badge 7 years ago
README.md 5d7468a593 Drop golang 1.7 7 years ago
Vagrantfile 609cb1c1db Use sensible heap size for JVMs in Vagrant 8 years ago
acl_bindings.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_create_request.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_create_request_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_create_response.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_create_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_delete_request.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_delete_request_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_delete_response.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_delete_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_describe_request.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_describe_request_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_describe_response.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_describe_response_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_filter.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
acl_types.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
api_versions_request.go 90a4cc632e Fix race in broker version check 8 years ago
api_versions_request_test.go c5f4248429 Add support for latest protocol messages 8 years ago
api_versions_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
api_versions_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
async_producer.go 5fd60c2be0 Add producer support for Kafka 0.11 Records 7 years ago
async_producer_test.go 893be7d533 Permit setting version on mock produce response 7 years ago
broker.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
broker_test.go 99dfd775b3 Unregister metrics when closing broker 7 years ago
client.go 34068369ff Merge pull request #975 from Shopify/return-partial-replicas 7 years ago
client_test.go 240ddc7211 FIX: It shouldn't sort the replicas and isr while the order is 7 years ago
client_tls_test.go f933fb4b0b Add NewMockBrokerListener() so that it's possible to test TLS connections 7 years ago
config.go a1cfcca530 changed Fetch.default value from 32KB to 1MB 7 years ago
config_test.go 515a490ec1 Addressing review comments 7 years ago
consumer.go d9ef2bef2e advance partition consumer offset after compacted messages 7 years ago
consumer_group_members.go 83f973c2d6 More feedback, renamed structs 9 years ago
consumer_group_members_test.go cecb3d9807 Formating all files with gofmt -s 8 years ago
consumer_metadata_request.go 90a4cc632e Fix race in broker version check 8 years ago
consumer_metadata_request_test.go aa411f16fd Add decode method to request types 9 years ago
consumer_metadata_response.go 90a4cc632e Fix race in broker version check 8 years ago
consumer_metadata_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
consumer_test.go d9ef2bef2e advance partition consumer offset after compacted messages 7 years ago
crc32_field.go 07a5840e2e Make polynomial a type 7 years ago
create_partitions_request.go 7957e72eca factor out getStringLength, use putArrayLength 7 years ago
create_partitions_request_test.go b3f149d4d2 add create partitions 7 years ago
create_partitions_response.go b3f149d4d2 add create partitions 7 years ago
create_partitions_response_test.go b3f149d4d2 add create partitions 7 years ago
create_topics_request.go b5ace411a0 add CreateTopicsRequest/Response 7 years ago
create_topics_request_test.go b5ace411a0 add CreateTopicsRequest/Response 7 years ago
create_topics_response.go b5ace411a0 add CreateTopicsRequest/Response 7 years ago
create_topics_response_test.go b5ace411a0 add CreateTopicsRequest/Response 7 years ago
delete_topics_request.go 620549d3ed add DeleteTopicsRequest/Response 7 years ago
delete_topics_request_test.go 620549d3ed add DeleteTopicsRequest/Response 7 years ago
delete_topics_response.go 620549d3ed add DeleteTopicsRequest/Response 7 years ago
delete_topics_response_test.go 620549d3ed add DeleteTopicsRequest/Response 7 years ago
describe_groups_request.go 90a4cc632e Fix race in broker version check 8 years ago
describe_groups_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
describe_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
describe_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
dev.yml 66fbffdee6 [bot] remove unused 'packages' dev.yml element [skip ci] 7 years ago
encoder_decoder.go 124e7c647e Expose producer metrics with go-metrics 8 years ago
errors.go d9ef2bef2e advance partition consumer offset after compacted messages 7 years ago
fetch_request.go 5959a18af1 Make isolation level a type 7 years ago
fetch_request_test.go 953231c528 Add support for Kafka 0.11 in consumer 7 years ago
fetch_response.go d9ef2bef2e advance partition consumer offset after compacted messages 7 years ago
fetch_response_test.go b7f694ebc8 Determine the records type based on the magic number not API version 7 years ago
functional_client_test.go e931cc00ed Stop test if client.Coordinator fails somehow 8 years ago
functional_consumer_test.go f0fc7e9247 Finalize most of the toxiproxy test framework 10 years ago
functional_offset_manager_test.go ccab789d44 OffsetManager: match upstream mark/next behaviour 8 years ago
functional_producer_test.go 7b655373d8 Expose request latency metric 8 years ago
functional_test.go 2c40df751c Fix version.satisfies so all tests run against 0.9 9 years ago
heartbeat_request.go 90a4cc632e Fix race in broker version check 8 years ago
heartbeat_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
heartbeat_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
heartbeat_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
join_group_request.go 4351c00d43 Permit protocol ordering in JoinGroup requests 8 years ago
join_group_request_test.go 4351c00d43 Permit protocol ordering in JoinGroup requests 8 years ago
join_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
join_group_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
leave_group_request.go 90a4cc632e Fix race in broker version check 8 years ago
leave_group_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
leave_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
leave_group_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
length_field.go ff1f79c54b Add dynamicPushDecoder interface 7 years ago
list_groups_request.go 90a4cc632e Fix race in broker version check 8 years ago
list_groups_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
list_groups_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
list_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
message.go ed80c61d79 Make timestamp fields of type time.Time and time.Duration 7 years ago
message_set.go 2018fd405e Prefix error variables with Err 10 years ago
message_test.go 5c2219768a fix TestMessageEncoding 7 years ago
metadata_request.go 88a4afb3d1 Misc minor lint changes 8 years ago
metadata_request_test.go aa411f16fd Add decode method to request types 9 years ago
metadata_response.go 88a4afb3d1 Misc minor lint changes 8 years ago
metadata_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
metrics.go 124e7c647e Expose producer metrics with go-metrics 8 years ago
metrics_test.go 124e7c647e Expose producer metrics with go-metrics 8 years ago
mockbroker.go f933fb4b0b Add NewMockBrokerListener() so that it's possible to test TLS connections 7 years ago
mockresponses.go 5169c3158b Fix formatting 7 years ago
offset_commit_request.go 88a4afb3d1 Misc minor lint changes 8 years ago
offset_commit_request_test.go aa411f16fd Add decode method to request types 9 years ago
offset_commit_response.go 90a4cc632e Fix race in broker version check 8 years ago
offset_commit_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_fetch_request.go 90a4cc632e Fix race in broker version check 8 years ago
offset_fetch_request_test.go aa411f16fd Add decode method to request types 9 years ago
offset_fetch_response.go 88a4afb3d1 Misc minor lint changes 8 years ago
offset_fetch_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_manager.go 96fa1c8378 Allow resetting manager to the same offset 7 years ago
offset_manager_test.go b966238f31 adds ResetOffset to reset to earlier offset values. #554 7 years ago
offset_request.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 years ago
offset_request_test.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 years ago
offset_response.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 years ago
offset_response_test.go d65b3fd46b Support ListOffsetRequest v1 [KIP-79] 8 years ago
packet_decoder.go b3f149d4d2 add create partitions 7 years ago
packet_encoder.go b3f149d4d2 add create partitions 7 years ago
partitioner.go 8637e89db9 Minor changes to reflect comments to PR 8 years ago
partitioner_test.go f3b2363114 Fix concurrency issue in hashedPartitioner 8 years ago
prep_encoder.go b3f149d4d2 add create partitions 7 years ago
produce_request.go b7f694ebc8 Determine the records type based on the magic number not API version 7 years ago
produce_request_test.go 5fd60c2be0 Add producer support for Kafka 0.11 Records 7 years ago
produce_response.go 5fd60c2be0 Add producer support for Kafka 0.11 Records 7 years ago
produce_response_test.go ca457b7003 Support ProduceResponse v1 and v2 encoding 7 years ago
produce_set.go 6899ef50de Set Record.OffsetDelta to avoid broker recompression 7 years ago
produce_set_test.go 6899ef50de Set Record.OffsetDelta to avoid broker recompression 7 years ago
real_decoder.go 7957e72eca factor out getStringLength, use putArrayLength 7 years ago
real_encoder.go b3f149d4d2 add create partitions 7 years ago
record.go 5fd60c2be0 Add producer support for Kafka 0.11 Records 7 years ago
record_batch.go eee4c711a2 Check for insufficient data when we try to get the records. 7 years ago
record_test.go 5fd60c2be0 Add producer support for Kafka 0.11 Records 7 years ago
records.go b7f694ebc8 Determine the records type based on the magic number not API version 7 years ago
records_test.go b7f694ebc8 Determine the records type based on the magic number not API version 7 years ago
request.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
request_test.go 86d6f390cf add Describe/Create/DeleteAcls 7 years ago
response_header.go 66411d8222 Cleanup a bunch more error formats 9 years ago
response_header_test.go 893044d278 Fix Golint errors, except for all the missing comments. 11 years ago
sarama.go 7b655373d8 Expose request latency metric 8 years ago
sasl_handshake_request.go 90a4cc632e Fix race in broker version check 8 years ago
sasl_handshake_request_test.go c5f4248429 Add support for latest protocol messages 8 years ago
sasl_handshake_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
sasl_handshake_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
sync_group_request.go 124e7c647e Expose producer metrics with go-metrics 8 years ago
sync_group_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
sync_group_response.go fdebee00c4 Following Golint tips for if blocks who ends with a return 8 years ago
sync_group_response_test.go 37654da7e1 Add support for decoding versioned responses 8 years ago
sync_producer.go 8268907a6b Tweak documentation of Close/AsyncClose methods 8 years ago
sync_producer_test.go cecb3d9807 Formating all files with gofmt -s 8 years ago
timestamp.go ed80c61d79 Make timestamp fields of type time.Time and time.Duration 7 years ago
utils.go 84e6098610 Escape periods in Kafka version regex 7 years ago
utils_test.go a709f2d5ca String functions for KafkaVersion (#989) 7 years ago

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.9 and 1.8, and Kafka 1.0 through 0.10, 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