Releases: twitch4j/twitch4j
Releases · twitch4j/twitch4j
v1.2.0
Bug Fixes
- shadowJar - dep relocation - archiveVersion is a property
Code Refactoring
- set default kraken headers (accept, content-type) using interceptor (#257)
- remove unnecessary jackson annotations (#255)
- remove obsolete EventSubCondition#toMap (#256)
Documentation
- migration to twitch4j.github.io (#228)
- javadoc aggregation and delombok (#224)
- add moderators and stream key docs for helix (#222)
- add missing TMI docs and rename get-viewers
- bump version to v1.1.3
Features
- include challenge in EventSubNotification (#258)
- add collections endpoints (#254)
- add new helix endpoints & fields, add eventsub-common module (#231)
- add channel point predictions pubsub and badge (#232)
- provide connection pooling helpers for pubsub and chat (#220)
Internal
- templates have been moved to https://github.com/twitch4j/.github
- bump apollo graphql to 2.4.6 (#247)
- use archiveVersion instead of version for gradle archive tasks
- build a shadow jar - all deps in one jar (#244)
- update sources / javadoc generation for gradle 7 compat (#223)
v1.1.3
Bug Fixes
- register jackson modules despite exotic class loaders (#219)
- require a fully configured eventManager (check) or initialize it
Features
- fire specialized mod/vip list event upon chat notice (#214)
- refactor USERSTATE event firing
- fire specialized event on USERSTATE
- always run eventManager validation
- move eventManager validation into common module / improve validation
- update events4j to v0.9.4
- handle unban request pubsub topic for channels and users
- add helix subscription events for api and webhook
v1.1.2
Bug Fixes
- deserialize retry_after in helix commercial properly
- use default client id when null in getExtensionInformation
Code Refactoring
- improve utility of active extensions in helix
- remove deprecated streams metadata endpoint
Documentation
- add code of conduct and link contributing guide in readme
- improve clarity of channel ids in pubsub
Features
- add more host and chatter info to tmi
- provide channel id + name in all events (#188)
- add unofficial get extension information endpoint
Internal
- bump version to v1.1.2
v1.1.1
Bug Fixes
- handle message delete success / error events
- apply unescaping to ChatReply fields
- apply escaping to outgoing irc message tag values
Features
- add nonce and reply support to chat
- fire specialized roomstate events
- add sub months/tier getter to more chat events
- include extendsub-specific field in pubsub subscribe-events
Internal
- don't require manual confirmation when creating new releases
- refactor new logo
Performance Improvements
- optimize escapeTagValue for no replacements case
v1.1.0
Documentation
- revamp pubsub documentation
Features
- allow setting a custom chatServer in the twitchClientBuilder
- set size of scheduledThreadPoolExecutor based on the used modules
Features
- handle primecommunitygiftreceived usernotice
- handle standardpayforward and communitypayforward usernotice
- handle rewardgift usernotice
- handle unraid usernotice
- handle bitsbadgetier usernotice
- handle ritual usernotice
Internal
- update events4j to v0.9.1
v1.0.0
Bug Fixes
- typos in twitch's latest helix announcement
- use login and stream in events / address potential thread contention issue in TwitchClientHelper (#138)
Code Refactoring
- no longer need to manually unpack timestamps
- better json post requests in helix
- remove defaultAuthToken reference in client helper
Deprecate
- all helix streams.metadata will return null after July 20, 2020 (#142)
Documentation
- remove fatJar section from the installation page
- update repository and version for stable 1.x.x+ releases
- add contribution pages (ide setup, code-documentaiton and prs)
- now showing the correct arguments for Helix.getFollows
Features
- implement monetary pubsub events (#134)
- add PubSub support for moderation actions (#133)
- add bulk add/remove live/follow listener methods to TwitchClientHelper
- add/remove stream/follow listener methods added to TwitchClientHelper
- chunk getStreams calls in TwitchClientHelper to support listening to more than 100 channels
- establish whisper-specific rate limiting
- implement
hype-train-events-v1.rewards
topic - implement
onsite-notifications
topic - implement
channel-cheer-events-public-v1
- implement
channel-sub-gifts-v1
topic - implement
presence
pubsub topic - implement friendship pubsub event
- implement polls topic
- implement leaderboard-events-v1 (bits-usage & sub-gifts)
- implement more subtypes of community-points-channel-v1
- implement
raid
&following
. Add hype train cooldown expiration event - add objects for pubsub raid event, add more channel point event types
- implement unofficial automod approve/deny v5 endpoints
- join twitch chat anonymously (and refactor)
- implement new helix endpoints - cheermotes, search, channels, channels/commercial, entitlements/upload, hypetrain/events, streams/key, users/follows, users/extensions (#144)
- use defaultAuthToken in helix and define more scopes
- ability to revoke access tokens
- generate missing auth token for helix calls when supplied client id/secret
Internal
- add a few missing return javadoc comments
- add more topics and deprecate unimplemented ones
- use @deprecated instead of @see for javadoc deprecation notices
- set javadoc html5 option automatically for java9+ only
- add new scopes from latest helix update
- update twitch scopes
- update events4j to v0.8.0
- add javadoc for CollectionUtils.chunked and set initialCapacity
v1.0.0-alpha.19
Modifications
- sleep one second in the pubsub worker thread instead of 100ms
- add helix.createStreamMarker method
- merged initial Webhooks support #102
- add support for a custom withChatQueueSize / withChatRateLimit
- merged feature/channelpoints-pubsub #104
- merged turikhay/feature/pubsub-topic-unsubscribe to subsubscribe from pubsub topics
- add raw message to channel message / channel action events
- implement AutoClosable to shutdown twitch4j
- upgrade to modular event manager (https://github.com/PhilippHeuer/events4j/tree/v0.7.1)
Fixes
- only call getStreams method if we're at least listening for one channel
- also shutdown okhttpClient in auth.TwitchIdentityProvider (was missing before)
- use waitStrategy.sleeping in TopicProcessor to reduce cpu usage (from .18)
Migration
There were major changes concerning the eventManager to make it modular and android compatible - and to allow custom eventHandlers (SpringEvents, Reactor, Annotation-Based, ...) - https://github.com/PhilippHeuer/events4j/tree/v0.7.1
Migration Steps:
eventManager.dispatchEvent(eventObject)
was renamed toeventManager.publish(eventObject)
- you will now need to specify the eventHandler when subscribing to a event, ie.
java eventManager.getEventHandler(SimpleEventHandler.class).onEvent(EventType.class, event -> { // your code ... });
Please check out this site on available handlers and their usage: https://twitch4j.gitlab.io/twitch4j/events/
Another new feature is that you'r now able to dispose eventHandlers if they are no longer needed.
Docs
- added informaiton on how to configure logging
- updated to reflect the eventManager changes
v1.0.0-alpha.17
Modifications
- supports modifying the event manager properties (queue size, behavior on event queue overflow, ...)
- supports disabling stream / follow event listeners
- supports using a queue for run requests later if the request thread pool is already full
- increased default request timeout to 5000ms
- add getModerator helix requests
- add tmi getHosts methods
Fixes
- fixed a issue when using the kraken getUsers endpoint for multiple users
- kraken team request was missing the attribute for the member list
- add support for the new founders badge (founders were not detected as subs)
Migration
- the helix docs define the type of user id / game id as text, not long. So the types were changed to reflect that.
v1.0.0-alpha.11
Modifications
- helix: added support for the streams tag methods (list of active tags, replace tags, list all tags)
- chat: add chat moderation action methods to chat module / channel based chat events
- global: allow overwriting the default request timeouts
Fixes
- chat: always take the channelname as lowercase when sending a message
- common: remove a empty method on the PrivatMessageEvent
Migration
None
v1.0.0-alpha.10
Modifications
- Added "getUsersByLogin" to TwitchKraken, since the the Helix Users endpoint does not support retrieving the "createdAt" property of a user yet.
- Overload a few methods in helix which weren't using auth yet, to support higher rate-limits (clips, games, top games, streams, streamsmetada followers and videos).
Fixes
- map channel state to the correct states in the channel state event #65
Migration
- The first parameter for the helix calls clips, games, top games, streams, streamsmetada followers and videos is now the authToken, so add it or set it to null - the old methods will be removed on 1.0.0 release.