Skip to content

Releases: fd4s/fs2-kafka

fs2-kafka v0.19.6

28 Mar 15:57
Compare
Choose a tag to compare

Changes

  • Fix a race condition which could result in duplicate records. Thanks @backuitist! (#105, #106)

Released on 2019-03-28.

fs2-kafka v0.19.5

27 Mar 10:25
Compare
Choose a tag to compare

Changes

  • Fix Acks#toString and AutoOffsetReset#toString. (#103)

Updates

  • Update fs2 to 1.0.4. (#99)
  • Update Kafka to 2.2.0. Thanks @CremboC! (#104)

Miscellaneous

Released on 2019-03-27.

fs2-kafka v0.19.4

01 Mar 08:54
Compare
Choose a tag to compare

Additions

  • Add improved support for unkeyed records. Thanks @ranjanibrickx! (#96, #97)
    • Add Deserializer#option, and Deserializer.option and unit.
    • Add HeaderDeserializer#option, and HeaderDeserializer.option and unit.
    • Add Serializer#option, and Serializer.option, asNull, empty and unit.
    • Add HeaderSerializer#option, and HeaderSerializer.option, asNull, empty and unit.

Released on 2019-03-01.

fs2-kafka v0.19.3

27 Feb 10:23
Compare
Choose a tag to compare

Additions

  • Add functions for working with consumer offsets. Thanks @backuitist! (#92, #93)
    • Add KafkaConsumer#assignment.
    • Add KafkaConsumer#position.
    • Add KafkaConsumer#seekToBeginning.
    • Add KafkaConsumer#seekToEnd.
  • Add Attempt[A] aliases for deserializers. (#95)
    • Add Deserializer.Attempt[A] = Deserializer[Either[Throwable, A]].
    • Add HeaderDeserializer.Attempt[A] = HeaderDeserializer[Either[Throwable, A]].

Released on 2019-02-27.

fs2-kafka v0.19.2

22 Feb 15:40
Compare
Choose a tag to compare

Additions

  • Add describeCluster and createTopics to KafkaAdminClient. Thanks @danxmoran! (#88)
  • Add maxPrefetchBatches to ConsumerSettings. (#83)
    • Controls prefetching behaviour before backpressure kicks in.
    • Use withMaxPrefetchBatches to change the default setting.
  • Add several constructs for working with record headers. (#85)
    • Add HeaderDeserializer for deserialization of record header values.
    • Add HeaderSerializer for serializing values to use as header values.
    • Add Header.serialize for serializing a value and creating a Header.
    • Add Header#headers for creating a Headers with a single Header.
    • Add Header#as and attemptAs for deserializing header values.
    • Add Headers#withKey and alias apply for extracting a single Header.
    • Add Headers#concat for concatenating another Headers instance.
    • Add Headers#asJava for converting to Java Kafka-compatible headers.
    • Add Headers.fromIterable to create Headers from Iterable[Header].
    • Add Headers.fromSeq to create Headers from Seq[Header].
  • Add several constructs for working with record serialization. (#85)
    • Add a custom Serializer to make it easier to create and compose serializers.
    • Add a custom Deserializer to make it easier to create and compose deserializers.
    • Add ProducerSettings.apply for using implicit Serializers for the key and value.
    • Add ConsumerSettings.apply for using implicit Deserializers for the key and value.

Changes

Updates

Documentation

Released on 2019-02-22.

fs2-kafka v0.19.1

29 Jan 16:16
Compare
Choose a tag to compare

Additions

  • Add CommittableOffsetBatch#fromFoldableMap. (#80)

Updates

  • Update fs2 to 1.0.3. (#81)

Released on 2019-01-29.

fs2-kafka v0.19.0

18 Jan 14:26
Compare
Choose a tag to compare

Changes

  • Add KafkaProducer#producePassthrough for only keeping the passthrough after producing. (#74)
  • Change KafkaConsumer#stream to be an alias for partitionedStream.parJoinUnbounded. (#78)
    • This also removes ConsumerSettings#fetchTimeout as it is now unused.
  • Change to improve type inference of ProducerMessage. (#74, #76)
    • To support better type inference, a custom fs2.kafka.ProducerRecord has been added.
    • If you were using the Java ProducerRecord, change to fs2.kafka.ProducerRecord.
  • Change to replace Sinks with Pipes, and usage of Stream#to with Stream#through. (#73)
  • Remove ProducerMessage#single, multiple, and passthrough. (#74)
    • They have been replaced with ProducerMessage#apply and ProducerMessage#one.
    • If you were previously using single in isolation, then you can now use one.
    • For all other cases, you can now use ProducerMessage#apply instead.
  • Rename KafkaProducer#produceBatched to produce. (#74)
  • Remove the previous KafkaProducer#produce.
    • For previous behavior, flatten the result from produce. (#74)

Miscellaneous

  • Change to include current year in license notices. (#72)

Released on 2019-01-18.

fs2-kafka v0.18.1

01 Jan 12:29
Compare
Choose a tag to compare

Additions

  • Add withDeliveryTimeout to ProducerSettings. (#70)

Updates

  • Update Kafka to 2.1.0. (#70)

Documentation

  • Update mdoc to 1.1.0. (#71)

Released on 2019-01-01.

fs2-kafka v0.18.0

16 Dec 11:14
Compare
Choose a tag to compare

Additions

  • Add support for default ExecutionContext for KafkaConsumers. (#60)
    If you've been using the consumerExecutionContextResource context,
    or consumerExecutionContextStream, then not providing a context
    when creating ConsumerSettings now yield the same result.
  • Add KafkaConsumer#subscribeTo for subscribing to topics with varargs. (#62)
  • Add KafkaConsumer#seek for setting starting offsets. Thanks @danielkarch. (#64)

Changes

  • Change KafkaConsumer#subscribe to work for any Reducible. (#62)
  • Change KafkaConsumer#subscribe to return F[Unit] instead of Stream[F, Unit]. (#62)
  • Change KafkaConsumer requests to be attempted and errors returned directly. (#66)
  • Change to use internal singleton for KafkaConsumer poll requests. (#69)

Fixes

  • Fix toString for custom exceptions. (#61)
  • Fix to always create new instances of NotSubscribedException. (#65)
  • Fix KafkaConsumer requests to check consumer has not shutdown. (#66)
  • Fix Show[ProducerRecord[K, V]] when partition is null. (#68)

Documentation

  • Change to simplify the 'quick example' in the documentation. (#63)

Miscellaneous

  • Change OVO Energy Ltd to OVO Energy Limited in license texts. (#67)

Released on 2018-12-16.

fs2-kafka v0.17.3

10 Dec 20:26
Compare
Choose a tag to compare

Additions

  • Add beginningOffsets and endOffsets to KafkaConsumer. (#59)
  • Add withRequestTimeout and withDefaultApiTimeout to ConsumerSettings. (#59)

Released on 2018-12-10.