No Description

Evan Huus 94895118af Merge pull request #734 from ChannelMeter/fix/timer-reset-logic 9 years ago
.github f402b6db0b Add issue template 9 years ago
examples af448a6f24 Fix names as a_name to be aName 10 years ago
mocks 1baff7ce02 Move a method used only in tests into the test file 9 years ago
tools 9008214b35 Rename topicConsumer tool to just consumer 10 years ago
vagrant d094b35ff3 Bump to toxiproxy 2.0 9 years ago
.gitignore d3bc825c36 Add Vagrantfile, and provisioning scripts that set up a working 5-node cluster. 11 years ago
.travis.yml a1e0964391 Add kafka 0.10 to CI 9 years ago
CHANGELOG.md 9bb4a68d57 Prep for v1.10 9 years ago
MIT-LICENSE 86b4691cdd Add license information 12 years ago
Makefile 5e89a31b27 Drop go 1.4 and update tools/docs appropriately 9 years ago
README.md 9bb4a68d57 Prep for v1.10 9 years ago
Vagrantfile f3aa1b53de Upgrade vagrant from precise to trusty 10 years ago
api_versions_request.go 90a4cc632e Fix race in broker version check 9 years ago
api_versions_request_test.go c5f4248429 Add support for latest protocol messages 9 years ago
api_versions_response.go 88a4afb3d1 Misc minor lint changes 9 years ago
api_versions_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
async_producer.go 16a22e0995 Don't propagate zero timestamp to ProducerMessage 9 years ago
async_producer_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 10 years ago
broker.go 90a4cc632e Fix race in broker version check 9 years ago
broker_test.go 90a4cc632e Fix race in broker version check 9 years ago
client.go f4a626377c client: don't abort creation on auth failure 9 years ago
client_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 10 years ago
config.go 88a4afb3d1 Misc minor lint changes 9 years ago
config_test.go eb9150647a Forbid empty ClientID and use 'sarama' as default 9 years ago
consumer.go f0f5b0ae1a Consumer: fix deadlock - if the timer had already expired, don't try to read the channel again. 9 years ago
consumer_group_members.go 83f973c2d6 More feedback, renamed structs 10 years ago
consumer_group_members_test.go 1ad3d11a6a Fix flaky test 10 years ago
consumer_metadata_request.go 90a4cc632e Fix race in broker version check 9 years ago
consumer_metadata_request_test.go aa411f16fd Add decode method to request types 10 years ago
consumer_metadata_response.go 90a4cc632e Fix race in broker version check 9 years ago
consumer_metadata_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 10 years ago
consumer_test.go 5d23f48cfe Makes newMockMetadataResponse exported (fixes #609) 9 years ago
crc32_field.go 8fa523b125 Use an optimized crc32 library which is faster 10 years ago
describe_groups_request.go 90a4cc632e Fix race in broker version check 9 years ago
describe_groups_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
describe_groups_response.go 90a4cc632e Fix race in broker version check 9 years ago
describe_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
dev.yml a0554bb10f [dev.yml] automated update by dev-map 9 years ago
encoder_decoder.go 37654da7e1 Add support for decoding versioned responses 9 years ago
errors.go c5f4248429 Add support for latest protocol messages 9 years ago
fetch_request.go 88a4afb3d1 Misc minor lint changes 9 years ago
fetch_request_test.go aa411f16fd Add decode method to request types 10 years ago
fetch_response.go 88a4afb3d1 Misc minor lint changes 9 years ago
fetch_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
functional_client_test.go f0fc7e9247 Finalize most of the toxiproxy test framework 10 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 9 years ago
functional_producer_test.go f0fc7e9247 Finalize most of the toxiproxy test framework 10 years ago
functional_test.go 2c40df751c Fix version.satisfies so all tests run against 0.9 10 years ago
heartbeat_request.go 90a4cc632e Fix race in broker version check 9 years ago
heartbeat_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
heartbeat_response.go 90a4cc632e Fix race in broker version check 9 years ago
heartbeat_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
join_group_request.go 90a4cc632e Fix race in broker version check 9 years ago
join_group_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
join_group_response.go 90a4cc632e Fix race in broker version check 9 years ago
join_group_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
leave_group_request.go 90a4cc632e Fix race in broker version check 9 years ago
leave_group_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
leave_group_response.go 90a4cc632e Fix race in broker version check 9 years ago
leave_group_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
length_field.go 66411d8222 Cleanup a bunch more error formats 10 years ago
list_groups_request.go 90a4cc632e Fix race in broker version check 9 years ago
list_groups_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
list_groups_response.go 90a4cc632e Fix race in broker version check 9 years ago
list_groups_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
message.go 10d06c2fe7 Plumb through v0.10 support for consumer/fetch 9 years ago
message_set.go 2018fd405e Prefix error variables with Err 10 years ago
message_test.go 9675a91962 Added Gzip test. Simplified a little. 12 years ago
metadata_request.go 88a4afb3d1 Misc minor lint changes 9 years ago
metadata_request_test.go aa411f16fd Add decode method to request types 10 years ago
metadata_response.go 88a4afb3d1 Misc minor lint changes 9 years ago
metadata_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
mockbroker.go 37654da7e1 Add support for decoding versioned responses 9 years ago
mockresponses.go 37654da7e1 Add support for decoding versioned responses 9 years ago
offset_commit_request.go 88a4afb3d1 Misc minor lint changes 9 years ago
offset_commit_request_test.go aa411f16fd Add decode method to request types 10 years ago
offset_commit_response.go 90a4cc632e Fix race in broker version check 9 years ago
offset_commit_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 10 years ago
offset_fetch_request.go 90a4cc632e Fix race in broker version check 9 years ago
offset_fetch_request_test.go aa411f16fd Add decode method to request types 10 years ago
offset_fetch_response.go 88a4afb3d1 Misc minor lint changes 9 years ago
offset_fetch_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 10 years ago
offset_manager.go ccab789d44 OffsetManager: match upstream mark/next behaviour 9 years ago
offset_manager_test.go ccab789d44 OffsetManager: match upstream mark/next behaviour 9 years ago
offset_request.go 88a4afb3d1 Misc minor lint changes 9 years ago
offset_request_test.go aa411f16fd Add decode method to request types 10 years ago
offset_response.go 88a4afb3d1 Misc minor lint changes 9 years ago
offset_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
packet_decoder.go 1badb8e8c4 Add JoinGroup request and response pair. 10 years ago
packet_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 10 years ago
partitioner.go 8eb9752774 Fix documentation for HashPartitioner 9 years ago
partitioner_test.go 0b1355f294 Fix HashPartitioner's negative result by applying modulo before checking negative 9 years ago
prep_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 10 years ago
produce_request.go 88a4afb3d1 Misc minor lint changes 9 years ago
produce_request_test.go aa411f16fd Add decode method to request types 10 years ago
produce_response.go 7f0fe2ddaf Don't try and parse a timestamp of -1 9 years ago
produce_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
produce_set.go e2146fdafd Passing ProducerMessage.Timestamp to broker when producing to v0.10 9 years ago
produce_set_test.go ec382518ee Fix errcheck 10 years ago
real_decoder.go 70f640ef06 move to real_decoder and privatize. 9 years ago
real_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 10 years ago
request.go 90a4cc632e Fix race in broker version check 9 years ago
request_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
response_header.go 66411d8222 Cleanup a bunch more error formats 10 years ago
response_header_test.go 893044d278 Fix Golint errors, except for all the missing comments. 12 years ago
sarama.go 21c17a5001 Update a bunch of docs 9 years ago
sasl_handshake_request.go 90a4cc632e Fix race in broker version check 9 years ago
sasl_handshake_request_test.go c5f4248429 Add support for latest protocol messages 9 years ago
sasl_handshake_response.go 90a4cc632e Fix race in broker version check 9 years ago
sasl_handshake_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
sync_group_request.go 90a4cc632e Fix race in broker version check 9 years ago
sync_group_request_test.go 1621c4959a Add tests for all new request types. 10 years ago
sync_group_response.go 90a4cc632e Fix race in broker version check 9 years ago
sync_group_response_test.go 37654da7e1 Add support for decoding versioned responses 9 years ago
sync_producer.go 0ba346b5da SyncProducer batch support 9 years ago
sync_producer_test.go 0ba346b5da SyncProducer batch support 9 years ago
utils.go 90a4cc632e Fix race in broker version check 9 years ago
utils_test.go 5e8b6ff817 Support configuring target kafka version 9 years ago

README.md

sarama

GoDoc Build Status

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.

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.6 and 1.5, and Kafka 0.10.0, 0.9.0 and 0.8.2, 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