Skip to content

Releases: twitch4j/twitch4j

v1.10.0

28 May 19:10
357da6e
Compare
Choose a tag to compare

Bug Fixes

  • don't block when polling ircCommandQueue (#544)
  • disable circuit breaker on helix ban api (#571)

Features

  • track chat socket latency (#545)
  • add ability to obtain listen request from pubsub response event (#546)
  • support new mod announcement command (#556)
  • comply with undocumented helix rate limits (#561)
  • forward extension module calls to helix (#542)
  • common websocket client (#552)
  • support experimental direct cheer usernotice (#566)
  • parse new prediction badges over irc (#569)
  • add secondary per-channel irc message limit (#567)
  • add clip creation event via client helper (#570)
  • add eventsub fields from may 2022 update (#574)
  • add kotlin module (#516)
  • add artist, moment, accessibility badges (#575)
  • add new pubsub hype fields (#577)

Deprecations

  • deprecate helix user view count and hype train id query param (#559)
  • deprecate friends and chant pubsub (#568)
  • deprecate kraken api (#535)

Internal

  • bump logback-classic from 1.2.10 to 1.2.11 (#547)
  • bump awaitility from 4.1.1 to 4.2.0 (#548)
  • update gradle wrapper from 7.3.3 to 7.4. (#543)
  • bump bucket4j-core from 7.2.0 to 7.3.0 (#550)
  • bump mockito-bom from 4.3.1 to 4.4.0 (#551)
  • update gradle wrapper from 7.4 to 7.4.1. (#553)
  • bump io.freefair.lombok from 6.4.1 to 6.4.2 (#558)
  • update gradle wrapper from 7.4.1 to 7.4.2. (#557)
  • bump bucket4j-core from 7.3.0 to 7.4.0 (#560)
  • bump mockito-bom from 4.4.0 to 4.5.0 (#562)
  • bump mockito-bom from 4.5.0 to 4.5.1 (#564)
  • bump io.freefair.lombok from 6.4.2 to 6.4.3 (#563)
  • bump bucket4j-core from 7.4.0 to 7.5.0 (#565)
  • bump jackson-bom from 2.13.1 to 2.13.3 (#573)
  • replace dependabot with renovatebot (#578)
  • update org.jetbrains.kotlinx to v1.6.2 (#579)
  • update dependency org.mockito:mockito-bom to v4.6.0 (#580)

v1.9.0

28 Feb 13:20
055195c
Compare
Choose a tag to compare

Bug Fixes

  • ensure gql builder event manager has default handler (#519)
  • make commandPrefixes non-final in builders (#523)
  • remove control character suffix in action event message (#526)
  • augment pubsub poll status enum (#538)
  • enable ws rfc ping for chat and pubsub (#539)

Features

  • add unofficial chatrooms user pubsub topic (#515)
  • promote helix moderation api out of beta (#524)
  • add gql fetch unban requests (#525)
  • add helix extension api endpoints (#529)

Internal

  • update soundtrack api javadoc by twitch revision (#534)
  • bump slf4j-api from 1.7.33 to 1.7.35
  • bump events4j-core from 0.9.9 to 0.10.0
  • bump events4j-handler-simple from 0.9.9 to 0.10.0
  • bump slf4j-api from 1.7.35 to 1.7.36
  • bump mockito to 4.3.1 and switch to the bom (#533)
  • bump bucket4j-core from 7.0.0 to 7.2.0 (#536)
  • bump io.freefair.lombok from 6.3.0 to 6.4.1 (#541)

v1.8.0

19 Jan 14:29
Compare
Choose a tag to compare

Bug Fixes

  • json unwrap custom reward settings on serialization (#502)
  • special messages can prevent triggering a ChannelMessageEvent (#513)

Features

  • add low trust users unofficial pubsub topic (#491)
  • augment BanEvasionEvaluation and LowTrustUser.sender (#505)
  • retry failed joins in irc with exponential backoff (#503)
  • support user intro chat experiment (#508)
  • add the new_subscription creator goals type (#506)
  • add pubsub leaderboard time unit and video playback type (#509)
  • add broadcaster login to ChannelInformation (#507)
  • allow for configurable helix base url (#512)

Internal

  • bump jackson-bom from 2.13.0 to 2.13.1 (#489)
  • bump logback-classic from 1.2.9 to 1.2.10 (#494)
  • bump feign-hystrix from 11.7 to 11.8 (#493)
  • bump feign-slf4j from 11.7 to 11.8 (#496)
  • bump feign-okhttp from 11.7 to 11.8 (#497)
  • bump feign-jackson from 11.7 to 11.8 (#495)
  • update gradle wrapper from 7.3.1 to 7.3.3. (#499)
  • bump com.github.johnrengelman.shadow from 7.1.1 to 7.1.2 (#500)
  • bump slf4j-api from 1.7.32 to 1.7.33 (#504)
  • bump events4j-core from 0.9.8 to 0.9.9 (#510)
  • bump events4j-handler-simple from 0.9.8 to 0.9.9 (#511)

v1.7.0

19 Dec 21:14
c32c023
Compare
Choose a tag to compare

Bug Fixes

  • ensure first ever follower triggers FollowEvent (#484)
  • add a rich version constraint for databind 2.13.0 (#464)

Features

  • add more chat and prediction related gql queries (#466)
  • implement new helix moderation api endpoints (#468)
  • add chat event for single message deletion (#470)
  • support clear in pubsub mod actions topic (#471)
  • implement soundtrack beta helix endpoints (#477)
  • implement ChannelMessageEvent#isDesignatedFirstMessage (#485)
  • implement the irc auth rate limit (#486)

Deprecations

  • deprecate helix get banned,moderator,subscription events (#474)
  • remove bulk helix bans due to twitch announcement (#482)

Internal

  • optimize user id to ban user input mapping (#475)

Dependencies

  • bump okhttp from 4.9.2 to 4.9.3 (#467)
  • bump junit-bom from 5.8.1 to 5.8.2 (#469)
  • bump caffeine from 2.9.2 to 2.9.3 (#476)
  • bump logback-classic from 1.2.7 to 1.2.8 (#478)
  • bump com.github.johnrengelman.shadow from 7.1.0 to 7.1.1 (#480)
  • update gradle wrapper from 7.3 to 7.3.1 (#479)
  • bump logback-classic from 1.2.8 to 1.2.9 (#483)
  • bump bucket4j-core from 4.7.0 to 7.0.0 (#481)
  • javadoc enhance + namings migration (#473)

v1.6.0

21 Nov 13:07
e0681be
Compare
Choose a tag to compare

Bug Fixes

  • parse new mod pubsub format for mod and vip actions (#435)

Features

  • revamp the unofficial graphql module (#458)
  • add more unofficial fields for pubsub hype trains (#427)
  • support new emote api url template fields (#426)
  • add convenient reply method to chat events (#375)
  • add builder to modify custom reward setting objects (#439)
  • add new points field to SubscriptionList (#441)
  • promote extension.bits_transaction.create eventsub to v1 (#379)
  • add unofficial notice tags for vips and channel verification settings (#442)
  • include rituals and deprecate lang in ChannelStateEvent (#428)
  • implement official creator goals api (#437)
  • add update drops entitlements helix endpoint (#406)
  • allow chat limit specification in more builders (#418)
  • add more fields to unofficial community points pubsub (#430)
  • add new unofficial creator goals pubsub topic (#429)
  • add broadcaster and creator names to Clip object (#453)
  • add drop entitlement grant eventsub type (#393)

Internal

  • update schema.json for gql module

Dependencies

  • update gradle wrapper from 7.2 to 7.3 (#462)
  • bump logback-classic from 1.2.5 to 1.2.6 (#432)
  • bump jackson-bom from 2.12.5 to 2.13.0 (#438)
  • bump okhttp from 4.9.1 to 4.9.2 (#444)
  • bump apollo-runtime from 2.5.9 to 2.5.10 (#447)
  • bump com.apollographql.apollo from 2.5.9 to 2.5.10 (#448)
  • bump apollo-runtime from 2.5.10 to 2.5.11 (#461)
  • bump com.apollographql.apollo from 2.5.10 to 2.5.11 (#459)
  • bump com.github.johnrengelman.shadow from 7.0.0 to 7.1.0 (#446)
  • bump feign-hystrix from 11.6 to 11.7 (#449)
  • bump feign-slf4j from 11.6 to 11.7 (#450)
  • bump feign-jackson from 11.6 to 11.7 (#451)
  • bump feign-okhttp from 11.6 to 11.7 (#452)
  • bump junit-bom from 5.7.2 to 5.8.1 (#436)
  • bump annotations from 22.0.0 to 23.0.0 (#454)
  • bump logback-classic from 1.2.6 to 1.2.7 (#455)
  • bump io.freefair.lombok from 5.3.3.3 to 6.3.0 (#456)
  • bump lombok to v1.18.22 (#463)

v1.5.1

29 Aug 20:17
1bec4f6
Compare
Choose a tag to compare

Features

  • add isAnonymous field to eventsub subgift event (#374)
  • parse notice msgId to convenient enum (#377)
  • add new fields to eventsub channel unsub event (#395)
  • deprecate create and delete follow endpoints (#408)
  • implement user authorization grant v1 eventsub (#328)
  • implement new helix schedule api (#386)
  • add new fields to helix banned routes (#407)
  • implement channel.subscription.message v1 eventsub (#380)

Bug Fixes

  • properly shutdown twitch4j thread pools on close (#391)
  • update InboundHostEvent with latest twitch pattern (#409)
  • resolve another rare pubsub looping edge case (#411)
  • ensures that the jackson jsr310 dependency can always be resolved (#422)
  • store emote id as string in sub events over pubsub (#425)

Internal

  • improve pubsub topic name matching (#376)
  • warn on full request logging / keep api auth tokens out of logfiles

Deprecations

  • deprecate create and delete follow endpoints (#408)
  • deprecate helix webhooks due to twitch announcement (#417)

Dependencies

  • bump com.apollographql.apollo from 2.5.7 to 2.5.8 (#372)
  • bump apollo graphql from 2.5.8 to 2.5.9 (#384)
  • bump commons-io from 2.9.0 to 2.11.0 (#392)
  • bump jackson-bom from 2.12.3 to 2.12.4 (#389)
  • bump caffeine from 2.9.1 to 2.9.2 (#388)
  • bump slf4j-api from 1.7.30 to 1.7.31 (#385)
  • bump openfeign from 11.2 to 11.5 (#404)
  • bump slf4j-api from 1.7.31 to 1.7.32 (#401)
  • implement new helix schedule api (#386)
  • implement channel.subscription.message v1 eventsub (#380)
  • bump logback-classic from 1.2.3 to 1.2.5 (#410)
  • update gradle wrapper from 7.0.2 to 7.2 (#424)

v1.5.0

03 Jun 22:27
f291fb5
Compare
Choose a tag to compare

Bug Fixes

  • remove lockedAt in predictionEnd / rename predictionLock locksAt to lockedAt (#342)
  • deserialize tag ids from searchChannels (#344)
  • pass query params to url for updateRedemptionStatus (#368)

Features

  • fire chat event for hosts of own channel (#357)
  • handle approve deny unban request within chat_moderator_actions pubsub (#351)
  • promote polls predictions api from beta to v1 (#352)
  • promote channel.subscription.end eventsub to v1 (#365)
  • handle official user-moderation-notifications pubsub topic (#332)
  • support channel subscription gift eventsub beta (#366)
  • support extension bits transaction create eventsub beta (#350)
  • support extension bits transaction create eventsub beta (#350)
  • support crowd chant chat and pubsub experiment (#346)
  • include unofficial fields in AutomodCaughtMessage.Fragment (#370)
  • include new total field in helix SubscriptionList (#371)

Internal

  • bump commons-io from 2.8.0 to 2.9.0 (#362)
  • bump annotations from 21.0.0 to 21.0.1 (#358)
  • bump com.apollographql.apollo from 2.5.6 to 2.5.7 (#347
  • deserialize tag ids from searchChannels (#344)
  • update gradle wrapper from 7.0 to 7.0.2. (#341)
  • bump events4j from 0.9.6 to 0.9.8 (#359)
  • bump junit-bom from 5.7.1 to 5.7.2 (#345)

v1.4.0

14 May 20:11
0b1a23d
Compare
Choose a tag to compare

Bug Fixes

  • avoid double join of own channel on reconnect (#329)
  • handle channel_terms_action type under moderator pubsub (#330)

Features

  • implement channel.unsubscribe eventsub beta (#327)
  • implement unofficial automod-queue pubsub topic (#331)
  • handle unofficial automod-levels-modification pubsub topic (#333)
  • implement helix manage held automod message endpoint (#337)
  • implement polls predictions helix eventsub public beta (#326)

Internal

  • Kotlin DSL build and Dependabot (#243)
  • resolve build warnings in gql / hide javadoc warnings - delombok
  • bump openfeign from 11.1 to 11.2 (#335)
  • add gradle-wrapper update workflow (#336)
  • bump caffeine from 2.9.0 to 2.9.1 (#338)

Notice

TwitchKraken#approveAutomodMessage & TwitchKraken#denyAutomodMessage are being decommissioned by twitch today. The Helix replacements for those methods are part of this release.
See https://dev.twitch.tv/docs/api/reference#manage-held-automod-messages

v1.3.1

28 Apr 23:16
68bfe14
Compare
Choose a tag to compare

Bug Fixes

  • resolve pubsub reconnect loop from ping edge case (#320)

Features

  • add community boost events unofficial pubsub topic (#321)
  • add unofficial multi month chat tags (#324)
  • add new get followed streams helix endpoint (#323)
  • fire global user state chat event (#322)
  • add community goal support for channel points pubsub (#265)
  • kraken hosts was decommissioned by twitch (#309)
  • add cheer badge to chat permissions (#318)
  • correct unofficial subgift leaderboard pubsub topic name (#310)
  • include extendsub in SubscriptionType to avoid null context in pubsub (#307)
  • include new helix fields from april 15 update (#319)
  • add viewer event to client helper and channel cache getter (#311)
  • add Video#getThumbnailUrl(int, int) (#308)
  • include eventsub cost fields for RFC 0014 (#287)
  • add sendMessage with nonce or reply to ITwitchChat (#298)
  • add unofficial badge endpoints (#302)
  • add kraken chat emote endpoints (#301)
  • add support for eventsub moderator subscription type (#290)
  • add new teams helix endpoints (#291)
  • add new helix check user subscription endpoint (#292)
  • include more helix response login fields (#300)
  • remove drops entitlement pagination workaround for docs issue (#299)
  • automatically handle helix rate limits (#306)
  • implement chat join ratelimit and improve thread efficiency (#312)

Internal

  • bump caffeine dependency from 2.8.6 to 2.9.0 (#317)
  • bump jackson-databind from 2.12.2 to 2.12.3 (#315)
  • bump jackson-datatype-jsr310 from 2.12.2 to 2.12.3 (#313)
  • bump apollo graphql from 2.5.5 to 2.5.6 (#314)
  • bump apollo-runtime from 2.5.5 to 2.5.6 (#304)
  • bump io.freefair.lombok from 5.3.0 to 5.3.3.3 (#305)
  • bump feign-hystrix from 11.0 to 11.1 (#293)
  • bump feign-jackson from 11.0 to 11.1 (#294)
  • bump feign-slf4j from 11.0 to 11.1 (#295)
  • bump feign-okhttp from 11.0 to 11.1 (#296)
  • bump nv-websocket-client from 2.13 to 2.14 (#297)

v1.2.1

04 Mar 20:50
9605003
Compare
Choose a tag to compare

Bug Fixes

  • improve pubsub automatic reconnects (#276)
  • properly deserialize video playback type (#259)

Code Refactoring

  • make channel.raid eventsub official (#288)
  • yield user on enable client helper event listener (#277)

Features

  • add unofficial kraken hosts endpoint (#286)
  • include new login fields in helix endpoints (#264)
  • update eventsub with february changes (#275)
  • include new started_at field for eventsub StreamOnlineEvent (#263)
  • include channel raid beta eventsub type (#261)
  • add hype train approaching pubsub event (#279)
  • include timestamp in eventsub follow event (#281)

Internal

  • fix various typos / codespell (#274)

Performance Improvements

  • optimize TwitchIdentityProvider requests and probe id on revoke (#262)