Skip to content

fs2-kafka v0.20.0-M1

Compare
Choose a tag to compare
@vlovgr vlovgr released this 04 Jul 11:59

Overview

This release introduces several breaking changes to binary- and source-compatibility.
Note binary- and source-compatibility is not guaranteed between milestone releases.

Changes

  • Add ConsumerSettings#withAllowAutoCreateTopics and withClientRack. (#153)
  • Add producer with support for Kafka transactions. Thanks @danxmoran! (#128, #130, #144, #146)
  • Add support for Scala 2.13. (#151, #154)
  • Change Deserializer to support deserialization effects. (#120, #122, #131, #135)
    • Deserializer[A] is now Deserializer[F[_], A] with Sync[F].
    • ConsumerSettings[K, V] is now ConsumerSettings[F[_], K, V].
    • For Java Kafka Deserializer interoperability, refer to the documentation.
  • Change KafkaAdminClient to use a blocking ExecutionContext. (#141)
    • Changed to Blocker as part of #150.
  • Change Serializer to support serialization effects. (#118, #119, #122, #136)
    • Serializer[A] is now Serializer[F[_], A] with Sync[F].
    • ProducerSettings[K, V] is now ProducerSettings[F[_], K, V].
    • For Java Kafka Serializer interoperability, refer to the documentation.
  • Change default auto.offset.reset to none in ConsumerSettings. (#121)
  • Change to expose more Java Kafka type aliases. (#133)
  • Change to parameterize AdminClientSettings on the effect type. (#125)
    • AdminClientSettings is now AdminClientSettings[F[_]] with Sync[F].
  • Change to remove the concept of messages. (#144)
    • Rename ProducerMessage to ProducerRecords.
    • Rename CommittableMessage#committableOffset to offset.
    • Rename CommittableMessage to CommittableConsumerRecord.
  • Change to simplify produce and commit with produce pipe. (#146)
    • Change KafkaProducer to no longer be sealed.
    • Remove KafkaProducer#producePassthrough.
    • Remove most batch commit pipes: commitBatch, commitBatchF, commitBatchOption, commitBatchOptionF, commitBatchChunk, commitBatchChunkF, commitBatchChunkOption, commitBatchChunkOptionF, commitBatchWithinF, and commitBatchOptionWithin, commitBatchOptionWithinF.
  • Change to support creation effect for serializers. (#142)
  • Change to use Blocker over ExecutionContext in settings. (#150)
    • ConsumerSettings#executionContext is now instead blocker.
    • ConsumerSettings#withExecutionContext is now withBlocker.
    • Similar changes to ProducerSettings and AdminClientSettings.
  • Prevent mixing consumer group ids in the same CommittableOffsetBatch. (#148)
  • Remove Header#headers. (#147)
  • Remove functions for creating ExecutionContexts. (#145)
    • Removes the following functions: consumerExecutionContextResource, consumerExecutionContextStream, producerExecutionContextResource, producerExecutionContextStream, adminClientExecutionContextResource, and adminClientExecutionContextStream.
  • Remove serialization support for org.apache.kafka.common.utils.Bytes. (#139)
  • Remove the ProducerMessage[F].of syntax. (#134)
    • There is also no ProducerRecords[F].of after rename in #144.

Updates

  • Update FS2 to 1.1.0-M1. (#149)
  • Update Kafka to 2.3.0. (#153)

Documentation

Internals

  • Change KafkaConsumerActor to not store records internally. (#129)
  • Change to use internal WithConsumer construct. (#124)

Released on 2019-07-04.