No Description

Dieter Plaetinck 70f640ef06 move to real_decoder and privatize. 8 years ago
examples af448a6f24 Fix names as a_name to be aName 9 years ago
mocks e0cbdba3d1 Fixes typo. 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. 10 years ago
.travis.yml 5e89a31b27 Drop go 1.4 and update tools/docs appropriately 9 years ago
CHANGELOG.md 8aadb476e6 Update changelog and declare support for go 1.6 9 years ago
CONTRIBUTING.md 6aacbb7d86 Some additions 10 years ago
MIT-LICENSE 86b4691cdd Add license information 11 years ago
Makefile 5e89a31b27 Drop go 1.4 and update tools/docs appropriately 9 years ago
README.md 5e89a31b27 Drop go 1.4 and update tools/docs appropriately 9 years ago
Vagrantfile f3aa1b53de Upgrade vagrant from precise to trusty 9 years ago
async_producer.go 2b18ad7079 Merge pull request #589 from Shopify/retriable-errors 9 years ago
async_producer_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 9 years ago
broker.go 62e4ae8645 Adjust broker locking order slightly 9 years ago
broker_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 9 years ago
client.go bed560f780 Add additional error handling based on spec 9 years ago
client_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 9 years ago
config.go 63431f77f0 Validate client ID 9 years ago
config_test.go 63431f77f0 Validate client ID 9 years ago
consumer.go 68920ff1be Merge pull request #616 from Shopify/error-handling-audit 9 years ago
consumer_group_members.go 83f973c2d6 More feedback, renamed structs 9 years ago
consumer_group_members_test.go 1ad3d11a6a Fix flaky test 9 years ago
consumer_metadata_request.go aa411f16fd Add decode method to request types 9 years ago
consumer_metadata_request_test.go aa411f16fd Add decode method to request types 9 years ago
consumer_metadata_response.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
consumer_metadata_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 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 9 years ago
describe_groups_request.go 7611ea6ab0 Add DescribeGroup request and response pair. 9 years ago
describe_groups_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
describe_groups_response.go 7611ea6ab0 Add DescribeGroup request and response pair. 9 years ago
describe_groups_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
encoder_decoder.go 66411d8222 Cleanup a bunch more error formats 9 years ago
errors.go 70f640ef06 move to real_decoder and privatize. 8 years ago
fetch_request.go aa411f16fd Add decode method to request types 9 years ago
fetch_request_test.go aa411f16fd Add decode method to request types 9 years ago
fetch_response.go 900e4f4595 Centralize and unify getSubset error checking 9 years ago
fetch_response_test.go 87c89f868c Also prefix KError instances with Err. 10 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 1e5cc31d7c Fix offset_manager for Kafka 0.9.0.0 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 9 years ago
heartbeat_request.go b1d40bdba9 Add Heartbeat request and response pair. 9 years ago
heartbeat_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
heartbeat_response.go b1d40bdba9 Add Heartbeat request and response pair. 9 years ago
heartbeat_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
join_group_request.go 83f973c2d6 More feedback, renamed structs 9 years ago
join_group_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
join_group_response.go 83f973c2d6 More feedback, renamed structs 9 years ago
join_group_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
leave_group_request.go ccec1aae54 Add LeaveGroup request and response pair. 9 years ago
leave_group_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
leave_group_response.go ccec1aae54 Add LeaveGroup request and response pair. 9 years ago
leave_group_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
length_field.go 66411d8222 Cleanup a bunch more error formats 9 years ago
list_groups_request.go 037310ad5d Add ListGroups request and response pair. 9 years ago
list_groups_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
list_groups_response.go 037310ad5d Add ListGroups request and response pair. 9 years ago
list_groups_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
message.go 2594b8edd6 Fix and simplify message decoding 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. 11 years ago
metadata_request.go aa411f16fd Add decode method to request types 9 years ago
metadata_request_test.go aa411f16fd Add decode method to request types 9 years ago
metadata_response.go 7f2cdf6cd2 Do not use partition cache for unknown topics. 10 years ago
metadata_response_test.go 87c89f868c Also prefix KError instances with Err. 10 years ago
mockbroker.go 6888eccc97 Don't import `testing` in the main lib 9 years ago
mockresponses.go 6888eccc97 Don't import `testing` in the main lib 9 years ago
offset_commit_request.go f13498ffc9 tweak docs 9 years ago
offset_commit_request_test.go aa411f16fd Add decode method to request types 9 years ago
offset_commit_response.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_commit_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_fetch_request.go aa411f16fd Add decode method to request types 9 years ago
offset_fetch_request_test.go aa411f16fd Add decode method to request types 9 years ago
offset_fetch_response.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_fetch_response_test.go 9b6ac1a0fe Add mock responses for OffsetManager testing 9 years ago
offset_manager.go bed560f780 Add additional error handling based on spec 9 years ago
offset_manager_test.go 7f63fa323d Merge pull request #570 from mailgun/maxim/publish 9 years ago
offset_request.go aa411f16fd Add decode method to request types 9 years ago
offset_request_test.go aa411f16fd Add decode method to request types 9 years ago
offset_response.go 39823e3af9 Check some errors 10 years ago
offset_response_test.go 87c89f868c Also prefix KError instances with Err. 10 years ago
packet_decoder.go 1badb8e8c4 Add JoinGroup request and response pair. 9 years ago
packet_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 9 years ago
partitioner.go 6facece8ef Wrap godoc to 80 chars, round 2 9 years ago
partitioner_test.go faec514115 Add an example for different partitioning per topic. 10 years ago
prep_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 9 years ago
produce_request.go 900e4f4595 Centralize and unify getSubset error checking 9 years ago
produce_request_test.go aa411f16fd Add decode method to request types 9 years ago
produce_response.go 5509b4a29c wip 11 years ago
produce_response_test.go 87c89f868c Also prefix KError instances with Err. 10 years ago
produce_set.go 52c880384b Extract produceSet and add tests 9 years ago
produce_set_test.go ec382518ee Fix errcheck 9 years ago
real_decoder.go 70f640ef06 move to real_decoder and privatize. 8 years ago
real_encoder.go 1badb8e8c4 Add JoinGroup request and response pair. 9 years ago
request.go a050648142 Register new request type keys in request.go 9 years ago
request_test.go 9dbdf89484 Better assertion failure messages from request_test. 9 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 528741686b Put "no consumergroups" in the docs more times 9 years ago
snappy.go 0aeb8f0f95 Update snappy repo path and encoding interface 9 years ago
snappy_test.go 03d03b3c61 Minor lint changes 9 years ago
sync_group_request.go 83f973c2d6 More feedback, renamed structs 9 years ago
sync_group_request_test.go 1621c4959a Add tests for all new request types. 9 years ago
sync_group_response.go 83f973c2d6 More feedback, renamed structs 9 years ago
sync_group_response_test.go 756801dfa2 Add tests for all new response types 9 years ago
sync_producer.go 12d29331cf A few minor suggestions from golint 9 years ago
sync_producer_test.go 201ab73cb4 Make mock brokers and protocol packets available for outsider 9 years ago
utils.go 797cb29ada un-export newBufConn 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.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