Version 0.1.0
Felice 0.1.0
What is Felice?
Felice is an opinionated library for producing and consuming messages on Kafka. It wraps Shopify's Sarama library and simplifies it somewhat.
What is in release 0.1.0 ?
The 0.1.0 release is intended to match the functionality of the internal Kafka library that is used within Heetch. Felice differs from that library in the following ways:
- Felice is issued under an Open Source license (MIT) . Yay! 🎉 🎈 🎆
- Code and configuration specific to Heetch's infrastructure and architecture has been removed.
Today you can use a Producer
to send messages on kafka topics, and use a Consumer
and Handler
to consume them.
Full changelog
2018-11-13 Geoffrey John Teale [email protected]
* : Merge pull request #19 from heetch/bootstap-documentation Bootstrap documentation
2018-11-13 Geoffrey John Teale [email protected]
* consumer/consumer.go: Improve the docs for Consumer.Serve
2018-11-13 Geoffrey John Teale [email protected]
* consumer/consumer.go: Expand in-line docs for Consumer struct
2018-11-13 Geoffrey John Teale [email protected]
* consumer/doc.go: Expand docs on Consumer.Serve to explain
parameters.
2018-11-12 Geoffrey John Teale [email protected]
* README.md: Add a "Where should I start?" section to README.md
2018-11-12 Geoffrey John Teale [email protected]
* consumer/doc.go: Add package level documentation for the Consumer.
2018-11-12 Geoffrey John Teale [email protected]
* : commit 86503274503d31ef29cd17f06e012829936e220d Author: Geoffrey
J. Teale <[email protected]> Date: Wed Oct 24 16:31:30 2018 +0200
2018-10-24 Geoffrey J. Teale [email protected]
* message/option.go: Fix typo "paramters" -> "parameters"
2018-10-24 Geoffrey J. Teale [email protected]
* message/doc.go, message/message.go: Document default message
headers.
2018-10-24 Geoffrey J. Teale [email protected]
* message/message.go: Insert missing "it".
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Make example handlers have the correct
signature.
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/handler/interface.go: Document behaviour when
HandleMessage returns an error.
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/doc.go, consumer/handler/collection.go,
consumer/handler/doc.go, consumer/handler/interface.go,
message/doc.go, message/message.go, message/option.go: Remove double
spaces after periods.
2018-10-24 Asdine El Hrychy [email protected]
* consumer/handler/doc.go: Fix typo "conusmer" -> "consumer" Co-Authored-By: tealeg <[email protected]>
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/doc.go, consumer/handler/doc.go,
consumer/handler/interface.go, message/doc.go, message/message.go,
message/option.go: Fix typo "recieve" -> "receive"
2018-10-22 Geoffrey J. Teale [email protected]
* message/message.go: Improve documentation of the Mesasge type
2018-10-22 Geoffrey J. Teale [email protected]
* message/doc.go: Introduce the message package.
2018-10-22 Geoffrey J. Teale [email protected]
* message/option.go: Document Option, Header and Key more completely
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/interface.go: Improve documentation of Handler
interface
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/func.go: Flesh out the HandlerFunc documentation.
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Describe handler.Collection type in
package overview documentation
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/doc.go: Fix typo in comment.
2018-10-19 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Introduce the handler package and discuss
Handler interface
2018-10-18 Geoffrey J. Teale [email protected]
* consumer/doc.go: Add initial doc.go for the, as yet, empty
consumer package.
2018-11-07 Geoffrey John Teale [email protected]
* : Merge pull request #20 from heetch/support-logging Support logging
2018-11-06 Geoffrey John Teale [email protected]
* consumer/consumer.go: Remove commented code
2018-11-05 Geoffrey J. Teale [email protected]
* common/logger.go, common/testutil.go, consumer/consumer.go,
consumer/consumer_internal_test.go, consumer/consumer_test.go,
consumer/handler/collection.go: Simplify logging and log testing
2018-11-05 Geoffrey J. Teale [email protected]
* consumer/consumer.go, consumer/consumer_internal_test.go: Make
NewConsumer private (newConsumer)
2018-11-05 Geoffrey J. Teale [email protected]
* Gopkg.lock, consumer/consumer.go,
consumer/consumer_internal_test.go, consumer/consumer_test.go: Make
ClusterConsumer interface private (clusterConsumer)
2018-11-05 Geoffrey J. Teale [email protected]
* consumer/consumer.go: Remove ClusterConsumer type.
2018-11-02 Geoffrey John Teale [email protected]
* consumer/consumer.go: Log in consumer message handling
2018-11-02 Geoffrey John Teale [email protected]
* consumer/consumer_internal_test.go: Make assertions about logging
in handleMessages
2018-11-02 Geoffrey John Teale [email protected]
* consumer/consumer.go: Make Consumer testable by wrapping
cluster.Consumer in an interface
2018-11-02 Geoffrey John Teale [email protected]
* consumer/consumer_test.go: Use common.Testlogger instead of
defining locally
2018-11-02 Geoffrey John Teale [email protected]
* common/testutil.go: Create TestLogger to simply testing log output
2018-11-01 Geoffrey John Teale [email protected]
* consumer/consumer.go: Make Consumer.Handler and Consumer.Serve
emit expected logs
2018-11-01 Geoffrey John Teale [email protected]
* consumer/consumer_test.go: Test that consumer.Handle and
consumer.Serve emit logs
2018-11-01 Geoffrey John Teale [email protected]
* Gopkg.lock: Update Gopkg.lock
2018-10-30 Geoffrey John Teale [email protected]
* consumer/handler/collection.go: Make consumer.Handle log the topic
being registered
2018-10-30 Geoffrey John Teale [email protected]
* consumer/consumer_test.go: Test that Consumer.Handle logs
2018-10-30 Geoffrey John Teale [email protected]
* common/logger.go: Add common.Logger
2018-10-29 Yasss [email protected]
* : Merge pull request #18 from heetch/import-consumer Import consumer from Kafka-go
2018-10-29 Yasss [email protected]
* consumer/consumer.go, consumer/consumer_internal_test.go: Export
metrics field from Consumer type
2018-10-24 Geoffrey J. Teale [email protected]
* message/option.go: Fix typo "ths" → "this"
2018-10-24 Geoffrey J. Teale [email protected]
* message/option.go: Fix typo "paramters" -> "parameters"
2018-10-24 Geoffrey J. Teale [email protected]
* message/doc.go, message/message.go: Document default message
headers.
2018-10-24 Geoffrey J. Teale [email protected]
* message/message.go: Insert missing "it".
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Make example handlers have the correct
signature.
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/handler/interface.go: Document behaviour when
HandleMessage returns an error.
2018-10-24 Geoffrey J. Teale [email protected]
* : commit a83b1b30719c0bf55676109bedf20416f686c230 Author: Geoffrey
J. Teale <[email protected]> Date: Wed Oct 24 15:26:03 2018 +0200
2018-10-24 Asdine El Hrychy [email protected]
* consumer/handler/doc.go: Fix typo "conusmer" -> "consumer" Co-Authored-By: tealeg <[email protected]>
2018-10-24 Geoffrey J. Teale [email protected]
* consumer/doc.go, consumer/handler/doc.go,
consumer/handler/interface.go, message/doc.go, message/message.go,
message/option.go: Fix typo "recieve" -> "receive"
2018-10-22 Geoffrey J. Teale [email protected]
* message/message.go: Improve documentation of the Mesasge type
2018-10-22 Geoffrey J. Teale [email protected]
* message/doc.go: Introduce the message package.
2018-10-22 Geoffrey J. Teale [email protected]
* message/option.go: Document Option, Header and Key more completely
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/interface.go: Improve documentation of Handler
interface
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/func.go: Flesh out the HandlerFunc documentation.
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Describe handler.Collection type in
package overview documentation
2018-10-22 Geoffrey J. Teale [email protected]
* consumer/doc.go: Fix typo in comment.
2018-10-19 Yasss [email protected]
* consumer/consumer.go: Add Stop method
2018-10-19 Geoffrey J. Teale [email protected]
* consumer/handler/doc.go: Introduce the handler package and discuss
Handler interface
2018-10-18 Yasss [email protected]
* consumer/consumer.go, consumer/consumer_internal_test.go: Add
testing for the configuration creation
2018-10-18 Geoffrey J. Teale [email protected]
* consumer/doc.go: Add initial doc.go for the, as yet, empty
consumer package.
2018-10-17 Geoffrey J. Teale [email protected]
* consumer/consumer_internal_test.go: Test Consumer.setup
2018-10-17 Geoffrey J. Teale [email protected]
* consumer/consumer_internal_test.go: Document test cases.
2018-10-17 Geoffrey J. Teale [email protected]
* consumer/consumer_internal_test.go: Expand tests to include metric
reporting
2018-10-16 Geoffrey J. Teale [email protected]
* consumer/consumer_internal_test.go: Make assertions about Message
passed to the metric Reporter
2018-10-16 Geoffrey J. Teale [email protected]
* consumer/consumer_internal_test.go: Test metrics reporting from
handleMessages.
2018-10-16 Yasss [email protected]
* consumer/consumer_internal_test.go: Improve testing! part.2
2018-10-16 Yasss [email protected]
* consumer/consumer_internal_test.go: Improve testing!
2018-10-16 Yasss [email protected]
* consumer/consumer.go, consumer/consumer_internal_test.go: Add
messages and partitions handling + minor test
2018-10-15 Yasss [email protected]
* consumer/consumer.go, consumer/consumer_internal_test.go: Add
Handle method
2018-10-15 Yasss [email protected]
* Gopkg.lock, Gopkg.toml, consumer/consumer.go: Create Consumer type
2018-10-12 Geoffrey John Teale [email protected]
* : Merge pull request #14 from heetch/migrate-handlers-collection handler: Migrate handlers collection
2018-10-12 Yasss [email protected]
* producer/producer.go: Fix typo
2018-10-12 Geoffrey J. Teale [email protected]
* consumer/handler/collection.go: Remove logger.
2018-10-12 Yasss [email protected]
* producer/producer.go, producer/producer_test.go: Return the
created message from Send method
2018-10-11 Yasss [email protected]
* message/message_test.go: Use require.EqualError
2018-10-11 Yasss [email protected]
* Gopkg.lock, Gopkg.toml: Add sarama dependency
2018-10-11 Yasss [email protected]
* producer/producer.go, producer/producer_test.go: Add Producer type
+ Send* methods + improve testing
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection.go: Implement Collection, derived from
on kafka-go's Handlers struct
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: Add multiple topic test case
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: Test that a single topic in a
collection is returned from Topics().
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: Test that an empty Collection
returns an empty Topic list
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: Add test for the case where
we overwrite an association.
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: Test the "Happy case" of Get
/ Set on a single topic
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection_test.go: A tests for degeneration case
of Collection.Set / Collection.Get
2018-10-11 Geoffrey J. Teale [email protected]
* consumer/handler/collection.go: Check-in ahead of rebase
2018-10-11 Geoffrey John Teale [email protected]
* : Merge pull request #11 from heetch/migrate-consumer-handler consumer/handler: Migrate Handler and HandlerFunc from kafka-go
2018-10-10 Geoffrey J. Teale [email protected]
* consumer/handler/func.go: Drop HandlerFunc function and rename
HandleMessageFn to HandlerFunc
2018-10-10 Geoffrey John Teale [email protected]
* : Merge pull request #7 from heetch/travis-ci-setup Travis ci setup
2018-10-10 Geoffrey J. Teale [email protected]
* consumer/handler/func_test.go: Test that the new HandleMessageFn
type can be used as a Handler
2018-10-10 Geoffrey J. Teale [email protected]
* Gopkg.lock: Introduce testify to Gopkg.lock
2018-10-10 Geoffrey J. Teale [email protected]
* consumer/handler/interface.go: Migrate Handler interface from
kafka-go
2018-10-10 Geoffrey J. Teale [email protected]
* .travis.yml: Explicitly use coverprofile=fmt in test execution
2018-10-10 Geoffrey J. Teale [email protected]
* .travis.yml: Do CI with Felice on go 1.10.x
2018-10-10 Geoffrey J. Teale [email protected]
* README.md: Make logo URI refer to master, so we can kill this
branch later
2018-10-09 Geoffrey John Teale [email protected]
* : Merge pull request #4 from heetch/migrate-message-to-felice message: Migrate message to felice from kafka-go
2018-10-09 Geoffrey J. Teale [email protected]
* README.md: Small tidy on the README.md
2018-10-09 Geoffrey J. Teale [email protected]
* README.md: Use PNG refence for logo.
2018-10-09 Geoffrey J. Teale [email protected]
* README.md: Add felice logo ;-)
2018-10-09 Geoffrey J. Teale [email protected]
* README.md: Add travis CI build status badge to README.md.
2018-10-09 Geoffrey J. Teale [email protected]
* LICENSE: Apply the MIT license This PR applies the MIT license to Felice in the form of a LICENSE
file.
2018-10-09 Geoffrey J. Teale [email protected]
* : commit 3dfd5f1c7aef8275060d7b9ac4bf2b292c30200c Author: Geoffrey
J. Teale <[email protected]> Date: Tue Oct 9 10:38:54 2018 +0200
2018-10-09 Geoffrey J. Teale [email protected]
* .travis.yml: Initiate .travis.yml.
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Test that message.New applies Options
that are provided
2018-10-08 Geoffrey J. Teale [email protected]
* message/option_test.go: Test that Key returns a function that will
set a Message key
2018-10-08 Geoffrey J. Teale [email protected]
* message/option_test.go: Test that Header returns a function that
can set a Message header
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Test that message.New works in the
"happy" case.
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Test that message.New returns an error
for values that won't marshal
2018-10-08 Geoffrey J. Teale [email protected]
* message/message.go: Make message.New return an error when the
topic is empty
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Test that message.New returns an error
when the topic is empty
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Flesh-out test for the minimum possible
Message
2018-10-08 Geoffrey J. Teale [email protected]
* message/message.go, message/option.go: Define Message type and New
constructor for Message.
2018-10-08 Geoffrey J. Teale [email protected]
* message/message_test.go: Test that we can create a new Message.
2018-10-08 Geoffrey J. Teale [email protected]
* .gitignore: Add .gitignore file.
2018-10-08 Geoffrey J. Teale [email protected]
* Gopkg.lock, Gopkg.toml: Initial dep definition of dependencies.
2018-10-02 Geoffrey John Teale [email protected]
* README.md: Fix typo: opionated -> opinionated.
2018-10-02 Geoffrey John Teale [email protected]
* : Merge pull request #2 from
heetch/expand-readme-for-a-wider-audience Add a little more explanation to the README.md
2018-10-02 Yasss [email protected]
* Initial commit