twitch4j

Modular Async/Sync/Reactive Twitch API Client / IRC Client

MIT License

Stars
367

Bot releases are hidden (Show)

twitch4j - v1.21.0 Latest Release

Published by PhilippHeuer 3 months ago

Bug Fixes

  • populate SentChatMessage#isSent (#967)
  • reassociate conduit shards with pool after unexpected disconnects (#1003)
  • pubsub: fire HypeTrainStartEvent and add new hype train fields (#1001)

Features

  • eventsub: add whisper received topic (#970)
  • eventsub: add new automatic reward types (#987)
  • eventsub: add vip add and remove topics (#969)
  • eventsub: add automod caught message topics (#988)
  • eventsub: add suspicious users eventsub topics (#979)
  • pubsub: add outbound follows unofficial topic (#984)
  • implement warnings open beta for helix and eventsub (#994)
  • add events for new chat warnings feature (#992)
  • support new bits cheer creator goal types (#971)
  • add msg_concurrent_channel_limit_reached to NoticeTag (#985)
  • implement channel.moderate eventsub topic (#978)
  • allow auth requests to be directed to cli mock api (#990)
  • add irc and pubsub support for new automatic rewards (#993)

Refactor

  • eventsub: change superclass for shield mode events (#976)
  • helix: clarify Stream thumbnail url getters (#977)
  • helix: utilize ValueWrapper in more classes (#1005)

Internal

  • promote chat warnings to v1 (#1008)
  • deprecate public setters that can be misleading (#997)
  • pubsub: deprecate HypeTrainCooldownExpirationEvent (#1002)
  • update dependency gradle to v8.9 (#1007)
  • update dependency com.github.philippheuer.credentialmanager:credentialmanager to v0.3.1 (#1010)
  • update com.github.philippheuer.events4j to v0.12.2 (#1009)
  • update com.fasterxml.jackson to v2.17.2 (#1004)
  • update org.jetbrains.kotlinx to v1.8.1 (#982)
  • update dependency commons-io:commons-io to v2.16.1 (#966)
  • update dependency org.slf4j:slf4j-api to v2.0.13 (#972)
  • update plugin org.jetbrains.kotlin.jvm to v2 (#986)
  • update dependency org.junit:junit-bom to v5.10.3 (#999)
  • update dependency org.projectlombok:lombok to v1.18.34 (#1000)
  • update io.github.openfeign to v13.3 (#995)
  • update plugin io.github.goooler.shadow to v8.1.8 (#998)
  • update dependency org.mockito:mockito-bom to v5.12.0 (#983)
  • add security policy (#973)
twitch4j - v1.20.0

Published by PhilippHeuer 6 months ago

Bug Fixes

  • pubsub: support refreshed tokens (#937)

Features

  • helix: add send chat message endpoint (#921)
  • helix: implement unban request beta endpoints (#925)
  • helix: allow querying moderator status of multiple user ids (#936)
  • helix: add user emotes endpoint (#945)
  • eventsub: add chat message subscription type (#922)
  • eventsub: add unban request subscription types (#953)
  • eventsub: add automod settings and terms topics (#957)
  • eventsub: create conduit websocket pool helper (#955)
  • eventsub: add automatic reward redemption topic (#962)
  • pubsub: add unofficial broadcast settings topic (#935)
  • add conduit endpoints and eventsub topic (#923)

Refactor

  • pubsub: migrate unofficial hype topic to v2 (#934)
  • eventsub: promote chat settings topic to v1 (#952)
  • eventsub: remove unofficial marker for some eventsub statuses (#959)
  • helix: remove unofficial marker for many emote types (#960)

Internal

  • eventsub: deprecate IEventSubSocket#register(SubscriptionType, EventSubCondition) (#956)
  • update twitch scopes enum (#963)
  • improve shadow jar building (#961)
  • update io.github.openfeign to v13.2.1 (#929)
  • update dependency org.mockito:mockito-bom to v5.11.0 (#940)
  • update dependency com.bucket4j:bucket4j_jdk8-core to v8.10.1 (#950)
  • update dependency org.slf4j:slf4j-api to v2.0.12 (#928)
  • update dependency org.junit:junit-bom to v5.10.2 (#927)
  • update dependency com.github.tony19:named-regexp to v1 (#917)
  • update org.jetbrains.kotlinx to v1.8.0 (#931)
  • update com.fasterxml.jackson to v2.17.0 (#947)
  • update dependency org.awaitility:awaitility to v4.2.1 (#948)
  • update dependency org.projectlombok:lombok to v1.18.32 (#949)
  • update dependency commons-io:commons-io to v2.16.0 (#954)
  • update dependency io.github.xanthic.cache:cache-bom to v0.6.0 (#964)
  • update dependency gradle to v8.7 (#951)
  • update plugin io.freefair.lombok to v8.6 (#932)
  • update plugin org.jetbrains.dokka to v1.9.20 (#943)
  • update plugin org.jetbrains.kotlin.jvm to v1.9.23 (#944)
twitch4j - v1.19.0

Published by PhilippHeuer 9 months ago

Bug Fixes

  • populate ChannelStateEvent when single room setting changed (#910)

Features

  • chat: include rewarded channel points in watch streak events (#895)
  • eventsub: promote chat eventsub topics out of beta (#890)
  • eventsub: include recipient in GiftPayForward (#891)
  • helix: add get moderated channels beta endpoint (#911)
  • promote ads scheduler api out of beta (#906)
  • add beta chat settings update eventsub type (#912)

Internal

  • chat: schedule reconnect to avoid benign exception (#905)
  • pubsub: deprecate unofficial pubsub following topic (#904)
  • clarify auth for removeChannelModerator (#913)
  • update dependency org.jetbrains:annotations to v24.1.0 (#888)
  • update io.github.openfeign to v13.1 (#887)
  • update dependency com.fasterxml.jackson to v2.16.1 (#909)
  • update dependency com.github.philippheuer.credentialmanager:credentialmanager to v0.3.0 (#914)
  • update dependency org.apache.commons:commons-lang3 to v3.14.0 (#894)
  • update dependency commons-io:commons-io to v2.15.1 (#901)
  • update dependency com.bucket4j:bucket4j_jdk8-core to v8.7.0 (#893)
  • update dependency io.github.xanthic.cache:cache-bom to v0.5.0 (#897)
  • update dependency ch.qos.logback:logback-classic to v1.3.14 (#902)
  • update dependency org.mockito:mockito-bom to v5.9.0 (#915)
  • update dependency gradle to v8.5 (#900)
  • update plugin org.jetbrains.kotlin.jvm to v1.9.22 (#908)
  • update plugin com.github.gmazzo.buildconfig to v5.3.5 (#907)
twitch4j - v1.18.0

Published by PhilippHeuer 11 months ago

Bug Fixes

  • helix: deserialize donation amount despite twitch using incorrect field name (#852)

Features

  • helix: add featured clip status to helix (#850)
  • pubsub: add unofficial chat highlights topic (#853)
  • pubsub: track midroll requests via unofficial ads topic (#854)
  • chat: reconnect earlier upon being requested by twitch (#859)
  • eventsub: add badges to ChannelChatNotificationEvent (#883)
  • eventsub: use helix default token for eventsocket pool (#870)
  • eventsub: add open beta chat over eventsub subscription types (#874)
  • add open beta ad schedule helix and eventsub (#872)

Performance

  • chat: lazily evaluate permissions in channel message event (#855)

Refactoring

  • eventsub: use subTier over subPlan, add isPrime field (#882)
  • pubsub: move pubsub topic logic to separate handlers (#856)

Internal

  • enable reproducible archives (#871)
  • bump minimum jackson version to 2.15.0 (#877)
  • add another test case to AdScheduleTest (#884)
  • update io.github.openfeign to v13 (major) (#873)
  • update dependency com.bucket4j:bucket4j_jdk8-core to v8.6.0 (#878)
  • update dependency org.projectlombok:lombok to v1.18.30 (#857)
  • update dependency io.github.xanthic.cache:cache-bom to v0.4.2 (#869)
  • update dependency gradle to v8.4 (#863)
  • update plugin io.freefair.lombok to v8.4 (#865)
  • update com.fasterxml.jackson to v2.15.3 (#866)
  • update plugin org.jetbrains.dokka to v1.9.10 (#867)
  • update dependency com.squareup.okhttp3:okhttp to v4.12.0 (#868)
  • update plugin me.champeau.jmh to v0.7.2 (#876)
  • update dependency commons-io:commons-io to v2.15.0 (#875)
  • update plugin org.jetbrains.kotlin.jvm to v1.9.20 (#879)
  • update dependency org.mockito:mockito-bom to v5.7.0 (#880)
  • update dependency org.junit:junit-bom to v5.10.1 (#881)
twitch4j - v1.17.0

Published by PhilippHeuer about 1 year ago

Bug Fixes

  • clienthelper: reflect name changes in live events (#828)

Documentation

  • helix: clarify searchChannels functionality (#844)
  • update old follow api decommission date (#849)

Features

  • pubsub: add ban sharing settings update event (#829)
  • pubsub: support hype chat via pinned messages (#846)
  • pubsub: parse whisper thread details (#845)
  • pubsub: support unofficial ads manager topic (#847)
  • include top level parent information in ChatReply (#833)

Performance

  • utilize char array over string in irc parser (#840)

Internal

  • add BETA_MAINTENANCE to EventSubSubscriptionStatus (#842)
  • override thumbnail resolution for processing videos (#843)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.11 (#831)
  • deps: update plugin io.freefair.lombok to v8.3 (#838)
  • deps: update dependency org.mockito:mockito-bom to v5.5.0 (#836)
  • deps: update io.github.openfeign to v12.5 (#839)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.9.10 (#837)
  • **deps: update plugin org.jetbrains.dokka to v1.9.0 (#841)
  • **helix **: sync ratelimit bucket for void endpoints (#848)
  • update gradle wrapper to v8.3 (#835)
twitch4j - v1.16.0

Published by PhilippHeuer about 1 year ago

NOTICE

  • Users of the ClientHelper for Follow-Events must migrate to 1.16.0 before August 3rd to keep Follow Events working. Please ensure that the Token passed in .withDefaultAuthToken(...) has at least moderator access and the moderator:read:followers scope in all channels Follow-Events are tracked in.
  • Twitch is decommissioning the helix getFollowers method on August 3rd, ensure calls have been migrated to getChannelFollowers or getFollowedChannels.
  • The Follow-Count Event will continue to work without moderator access.

Bug Fixes

  • NPE when parsing GLOBALUSERSTATE in channelName lookup (#819)
  • avoid eventsocket relocation for module shadow jar (#827)
  • detect whether founders are subscribed or not (#787)
  • allow IEventSubSocket#register with null transport (#815)
  • eventsub: avoid NPE when subscription type is unknown (#805)
  • helix: avoid NPE from user passing null client id (#804)

Documentation

  • update createStreamScheduleSegment required fields (#820)

Features

  • add IEventSubSocket#getLatency (#822)
  • chat: add more getters for common tags (#788)
  • helix: add content classification and branded content management (#811)
  • add hype chat level info to ChannelMessageEvent (#817)
  • pubsub: add auth revoke event (#790)
  • migrate client helper to new followers endpoint (#807)
  • chat: reply in thread when possible (#785)
  • eventsub: add channel.update beta subscription type (#803)

Performance

  • chat: remove regex from message parsing (#801)
  • chat: avoid duplicated tags parsing (#792)
  • chat: lazily parse badge info (#793)
  • split irc messages more efficiently (#821)
  • exit irc handler upon first event match (#816)
  • optimize EscapeUtils#unescapeTagValue (#791)

Refactor

  • chat: treat tag value as CharSequence (#796)

Internal

  • add shield mode scopes to enum (#774)
  • limit shadowJar publication to twitch4j, chat, helix, pubsub, eventsub-websocket (#826)
  • deprecate mod commands in AbstractChannelEvent (#813)
  • project version build constant (#818)
  • eventsub: promote channel.update from beta to v2 (#812)
  • promote eventsub websocket out of beta (#814)
  • add jmh gradle plugin (#798)
  • deprecate soundtrack apis (#786)
  • update badge parsing test (#797)
  • deps: update com.fasterxml.jackson to v2.15.0 (#769)
  • deps: update com.fasterxml.jackson to v2.15.1 (#777)
  • deps: update com.github.philippheuer.events4j to v0.12.0 (#770)
  • deps: update dependency org.apache.commons:commons-lang3 to v3.13.0 (#825)
  • deps: update dependency org.junit:junit-bom to v5.10.0 (#823)
  • deps: update org.jetbrains.kotlinx to v1.7.3 (#824)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.8 (#789)
  • deps: update dependency com.bucket4j:bucket4j_jdk8-core to v8.3.0 (#779)
  • deps: update dependency com.fasterxml.jackson:jackson-bom to v2.15.2 (#781)
  • deps: update dependency com.github.philippheuer.credentialmanager:credentialmanager to v0.2.2 (#772)
  • deps: update dependency commons-io:commons-io to v2.12.0 (#778)
  • deps: update dependency commons-io:commons-io to v2.13.0 (#784)
  • deps: update dependency gradle to v8.2.1 (#810)
  • deps: update dependency io.github.xanthic.cache:cache-bom to v0.3.0 (#795)
  • deps: update dependency org.junit:junit-bom to v5.9.3 (#773)
  • deps: update dependency org.mockito:mockito-bom to v5.4.0 (#794)
  • deps: update dependency org.projectlombok:lombok to v1.18.28 (#780)
  • deps: update kotlinx.coroutines to v1.7.1 (#775)
  • deps: update plugin org.jetbrains.dokka to v1.8.20 (#782)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.8.21 (#771)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.8.22 (#783)
  • deps: update com.github.philippheuer.events4j to v0.12.1 (#800)
  • deps: update dependency gradle to v8.2 (#806)
  • deps: update io.github.openfeign to v12.4 (#809)
  • deps: update org.jetbrains.kotlinx to v1.7.2 (#802)
  • deps: update plugin io.freefair.lombok to v8.1.0 (#799)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.9.0 (#808)
twitch4j - v1.15.0

Published by PhilippHeuer over 1 year ago

Bug Fixes

  • avoid NPE when forwarder is missing token (#748)
  • cleanup poolBySub on eventsocket pool unregister (#734)
  • chat: fire join events from 353 names list (#758)
  • chat: read subscriber months for founders (#754)
  • eventsub: looser equality on optional condition fields (#737)
  • use new shadowJar relocation syntax (#740)

Documentation

  • improve TwitchHelix#getClips javadoc (#731)

Features

  • eventsocket: add delete sub success meta event (#732)
  • helix: allow querying multiple video ids (#749)
  • helix: include new badge fields (#759)
  • parse viewer milestone events sent to chat (#750)

Internal

  • deps: update dependency ch.qos.logback:logback-classic to v1.3.6 (#753)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.7 (#764)
  • deps: update dependency com.bucket4j:bucket4j_jdk8-core to v8.2.0 (#743)
  • deps: update dependency com.squareup.okhttp3:okhttp to v4.11.0 (#768)
  • deps: update dependency gradle to v8.0.2 (#745)
  • deps: update dependency gradle to v8.1 (#762)
  • deps: update dependency gradle to v8.1.1 (#765)
  • deps: update dependency org.jetbrains:annotations to v24.0.1 (#744)
  • deps: update dependency org.mockito:mockito-bom to v5.3.0 (#761)
  • deps: update dependency org.mockito:mockito-bom to v5.3.1 (#766)
  • deps: update io.github.openfeign to v12.3 (#760)
  • deps: update plugin com.coditory.manifest to v0.2.6 (#767)
  • deps: update plugin com.github.johnrengelman.shadow to v8.1.0 (#739)
  • deps: update plugin com.github.johnrengelman.shadow to v8.1.1 (#755)
  • deps: update plugin io.freefair.lombok to v8 (#756)
  • deps: update plugin org.jetbrains.dokka to v1.8.10 (#746)
  • eventsub: define aliases for broadcaster event fields (#747)
  • helix: deprecate entitlement code endpoints (#742)
  • helix: deprecate more tag_id references (#741)
  • reflect latest status of follows api (#733)
  • deps: update io.github.openfeign to v12.2 (#738)
  • deps: update plugin com.github.johnrengelman.shadow to v8 (#736)
  • deps: update plugin io.freefair.lombok to v6.6.3 (#735)
  • deps: update dependency gradle to v8 (#725)
  • deps: update dependency io.github.xanthic.cache:cache-bom to v0.2.0 (#730)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.8.20 (#757)
  • eventsub: upgrade to non-beta websocket url (#763)
  • deps: update dependency org.mockito:mockito-bom to v5.2.0 (#751)

Refactor

  • use buildMapping util across enums (#752)
twitch4j - v1.14.0

Published by PhilippHeuer over 1 year ago

Features

  • add custom tags to helix responses (#702)
  • add eventsub websocket module (#716)
  • add helix chat command forwarder (#647)
  • add id field to charity campaign donations (#703)
  • add scoped read follows beta api (#723)
  • add shoutout public beta support (#710)
  • delay enabling command forwarder until february 21 (#727)
  • promote charity helix and eventsub from beta (#721)
  • promote shield mode from beta to official (#701)
  • promote shoutout api out of beta (#724)

Bug Fixes

  • restore helix refill rate after twitch fix (#729)
  • helix: read remaining header from correct object (#728)
  • pubsub: parse shoutout without call to action (#706)

Documentation

  • add suspicious users pubsub javadocs (#722)

Internal

  • improve gradle caching (#698)
  • improve gradle caching (#715)
  • deps: update com.fasterxml.jackson to v2.14.2 (#712)
  • deps: update dependency com.github.philippheuer.credentialmanager:credentialmanager to v0.2.1 (#699)
  • deps: update dependency com.squareup.okhttp3:okhttp to v4.10.0 (#718)
  • deps: update dependency org.jetbrains:annotations to v24 (#704)
  • deps: update dependency org.junit:junit-bom to v5.9.2 (#700)
  • deps: update dependency org.mockito:mockito-bom to v5.1.1 (#714)
  • deps: update dependency org.projectlombok:lombok to v1.18.26 (#720)
  • deps: update plugin io.freefair.lombok to v6.6.2 (#726)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.8.10 (#717)
twitch4j - v1.13.0

Published by PhilippHeuer almost 2 years ago

Bug Fixes

  • support for named capture groups on Android (#656)
  • handle new direct cheer tags for currency (#667)
  • add public all args constructor in AutomodEnforceCheckList (#697)

Documentation

  • update links in README.md (#696)
  • warn upcoming deprecation of helix getFollowers (#665)

Features

  • add helix get chatters beta endpoint (#662)
  • add unofficial shoutout pubsub topic (#660)
  • add pinned chat unofficial pubsub (#666)
  • parse experimental elevated chat payment details (#663)
  • add charity name and logo to eventsub (#675)
  • add IGDB support in helix games api (#683)
  • add unofficial shield mode pubsub (#689)
  • add shield mode helix and eventsub beta support (#687)
  • more beta charity endpoints and eventsub types (#679)
  • promote suspicious users pubsub to official (#664)

Internal

  • deps: update dependency org.junit:junit-bom to v5.9.1 (#655)
  • deps: update io.github.openfeign to v11.10 (#657)
  • deps: update dependency io.github.xanthic.cache:cache-bom to v0.1.2 (#658)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.7.20 (#661)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.4 (#670)
  • deps: update plugin org.jetbrains.dokka to v1.7.20 (#671)
  • deps: update dependency com.github.tony19:named-regexp to v0.2.8 (#673)
  • deps: update dependency org.mockito:mockito-bom to v4.8.1 (#674)
  • deps: update com.fasterxml.jackson to 2.14.0 (#672)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.7.21 (#677)
  • deps: update dependency org.mockito:mockito-bom to v4.9.0 (#678)
  • deps: update com.apollographql.apollo to v2.5.14 (#680)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.5 (#681)
  • deps: update com.fasterxml.jackson to v2.14.1 (#682)
  • deps: update io.github.openfeign to v12.1 (#676)
  • deps: update gradle wrapper to v7.6 (#684)
  • deps: update plugin io.freefair.lombok to v6.6 (#686)
  • deps: update dependency org.jetbrains:annotations to v23.1.0 (#688)
  • deps: update plugin io.freefair.lombok to v6.6.1 (#693)
  • deps: update plugin com.coditory.manifest to v0.2.3 (#690)
  • deps: update dependency org.mockito:mockito-bom to v4.11.0 (#695)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.8.0 (#694)
twitch4j - v1.12.0

Published by PhilippHeuer about 2 years ago

Bug Fixes

  • adjust clip event for helix time truncation (#617)
  • deserialize eventsub follow goal type (#620)
  • parse latest time format of helix teams (#636)
  • prevent maven from using jackson3 snapshot (#625)
  • auth: clean up response body in isCredentialValid (#626)
  • charity: resolve twitch doc issues (#631)
  • helix: avoid copying default token (#624)

Documentation

  • reflect looser auth for getChannelChatBadges (#646)

Features

  • add GiftedMultiMonthSubCourtesyEvent (#639)
  • allow custom websocket close delay (#627)
  • apply custom gql headers (#649)
  • fetch mods and vips over gql (#651)
  • implement beta charity api (#628)

Internal

  • add aliases for DonationAmount fields (#635)
  • deprecate hosts due to twitch announcement (#642)
  • deprecate irc commands due to twitch announcement (#645)
  • deprecate poll bits due to twitch change (#634)
  • ignore logback 1.4.x for renovate bumps (#653)
  • treat id as alias in charity eventsub (#654)
  • deps: update plugin io.freefair.lombok to v6.5.1 (#632)
  • deps: update com.apollographql.apollo to v2.5.13 (#643)
  • deps: update com.fasterxml.jackson to v2.13.4 (#637)
  • deps: update com.github.philippheuer.events4j to v0.11.0 (#641)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.0 (#629)
  • deps: update dependency ch.qos.logback:logback-classic to v1.3.1 (#650)
  • deps: update dependency com.bucket4j.bucket4j-core to v8.0.1 (#623)
  • deps: update dependency com.bucket4j:bucket4j_jdk8-core to v8.1.0 (#633)
  • deps: update dependency gradle to v7.5.1 (#619)
  • deps: update dependency io.github.xanthic.cache:cache-bom to v0.1.1 (#622)
  • deps: update dependency org.mockito:mockito-bom to v4.7.0 (#621)
  • deps: update dependency org.mockito:mockito-bom to v4.8.0 (#644)
  • deps: update plugin com.coditory.manifest to v0.2.1 (#648)

Performance

  • avoid regex split on chat message (#638)

Refactor

  • avoid autoDiscovery in initializeEventManager (#640)
  • use xanthic cache facade (#618)
twitch4j - v1.11.0

Published by PhilippHeuer about 2 years ago

Bug Fixes

  • add content type on schedule segment api (#592)
  • clear pubsub command queue on reconnect (#599)
  • improve chat regex matching (#616)
  • reset ping tracker on websocket close (#602)

Features

  • add clip offset and new goal types (#608)
  • add gql fetch reward settings (#610)
  • add helix raids endpoints in open beta (#587)
  • add last support event pubsub handling (#584)
  • add timeout config to websocket (#613)
  • add user_id and type args to getEventSubSubscriptions (#595)
  • add websocket connection state events / new connection lost state (#597)
  • implement check automod status ratelimiting (#583)
  • implement new beta helix chat endpoints (#606)
  • implement send extension message rate limit (#576)
  • implement updated soundtrack playlist api (#596)
  • perform more chat token checks (#607)

Internal

  • promote helix chat endpoints out of beta (#615)
  • deps: update com.apollographql.apollo to v2.5.12 (#588)
  • deps: update dependency com.github.vladimir-bukhtoyarov:bucket4j-core to v7.6.0 (#611)
  • deps: update dependency gradle to v7.5 (#604)
  • deps: update dependency org.junit:junit-bom to v5.9.0 (#612)
  • deps: update dependency org.mockito:mockito-bom to v4.6.1 (#582)
  • deps: update io.github.openfeign to v11.9 (#593)
  • deps: update io.github.openfeign to v11.9.1 (#609)
  • deps: update org.jetbrains.kotlinx to v1.6.3 (#590)
  • deps: update org.jetbrains.kotlinx to v1.6.4 (#601)
  • deps: update plugin io.freefair.lombok to v6.4.3.1 (#586)
  • deps: update plugin io.freefair.lombok to v6.5.0.2 (#591)
  • deps: update plugin io.freefair.lombok to v6.5.0.3 (#603)
  • deps: update plugin org.jetbrains.dokka to v1.7.0 (#589)
  • deps: update plugin org.jetbrains.dokka to v1.7.10 (#600)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.7.0 (#585)
  • deps: update plugin org.jetbrains.kotlin.jvm to v1.7.10 (#598)

Full Changelog: https://github.com/twitch4j/twitch4j/compare/v1.10.0...v1.11.0

twitch4j - v1.10.0

Published by PhilippHeuer over 2 years ago

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)
twitch4j - v1.9.0

Published by PhilippHeuer over 2 years ago

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)
twitch4j - v1.8.0

Published by PhilippHeuer over 2 years ago

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)
twitch4j - v1.7.0

Published by PhilippHeuer almost 3 years ago

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)
twitch4j - v1.6.0

Published by PhilippHeuer almost 3 years ago

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)
twitch4j - v1.5.1

Published by PhilippHeuer about 3 years ago

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)
twitch4j - v1.5.0

Published by PhilippHeuer over 3 years ago

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)
twitch4j - v1.4.0

Published by PhilippHeuer over 3 years ago

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

twitch4j - v1.3.1

Published by PhilippHeuer over 3 years ago

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)