• ext.commands
    • Bug fixes
      • Fixed an issue where built-in converters would raise an internal TypeError.


  • ext.commands
    • Bug fixes
      • Fixed an issue where CommandNotFound couldn’t be processed from get_context.







Massive documentation updates



  • TwitchIO
    • Add user_id property to Client

    • Change id_cache to only cache if a value is not None

    • Add Client.wait_for_ready()


  • TwitchIO
    • Chatter.is_mod now uses name instead of display_name

    • Added ChannelInfo to slots

    • Remove loop= parameter for asyncio.Event in websocket for 3.10 compatibility

  • ext.eventsub
    • ChannelCheerData now returns user if is_anonymous is False else None


  • TwitchIO
    • Fix bug where chatter never checked for founder in is_subscriber

    • Fix rewards model so it can now handle pubsub and helix callbacks

  • ext.commands
    • Fix TypeError in Bot.from_client_credentials


New logo!

  • TwitchIO
    • Add Chatter.mention()

    • Re-add raw_usernotice from V1.x

    • Fix echo messages for replies

    • Fix a bug where the wrong user would be whispered

    • Fix a bug inside User.modify_stream() where the game_id key would be specified as "None" if not provided (GH#237)

    • Add support for teams and channelteams API routes
      • Team, ChannelTeams

      • Client.fetch_teams()

      • PartialUser.fetch_channel_teams()

  • ext.commands
    • Fix issue where Bot.from_client_credentials would result in an inoperable Bot instance (GH#239)

  • ext.pubsub
    • Added ext.pubsub.Websocket.pubsub_error() to support being notified of pubsub errors

    • Added ext.pubsub.Websocket.pubsub_nonce() to support being notified of pubsub nonces

  • ext.eventsub
    • Patch 2.1.1 bug which breaks library on 3.7 for ext.eventsub


  • TwitchIO
    • Patch a bug introduced in 2.1.0 that broke the library on python 3.7


  • TwitchIO
    • Type the User class

    • Update the library to use a proper ISO datetime parser

    • Add event_raw_usernotice event (GH#229)

    • User fixed an issue where the User class couldn’t fetch rewards (GH#214)

    • Chatter fixed the docstring for the badges property

    • Chatter.is_subscriber() will now return True for founders

    • Client change docstring on fetch_channel

    • Add support for the predictions API routes
      • Prediction, Predictor, PredictionOutcome

      • PartialUser.end_prediction(), PartialUser.get_prediction(), PartialUser.create_prediction()

    • Add support for the schedules API routes
      • Schedule, ScheduleSegment, ScheduleCategory, ScheduleVacation

      • PartialUser.fetch_schedule()

    • Add PartialUser.modify_stream()

    • Fix bug where chatter cache would not be created

    • Fix bug where Client.wait_for() would cause internal asyncio.InvalidState errors

  • ext.commands
    • General typing improvements

    • ext.commands.builtin_converters.convert_Clip() - Raise error when the regex doesn’t match to appease linters. This should never be raised.

    • Added ext.commands.Context.reply() to support message replies

  • ext.pubsub
    • Fixed bug with Pool.unsubscribe_topics caused by typo

  • ext.eventsub
    • fix ext.eventsub.models.ChannelBanData’s permanent attribute accessing nonexistent attrs from the event payload

    • Add documentation