Skip to content

Releases: hikari-py/hikari

Traits checking optimization and more models

25 Jan 11:28
9b6657c

Choose a tag to compare

Breaking Changes

  • EventDispatcher renamed to EventManager

Features

  • Traits checking optimization (10x faster and failfast)
  • EventManager optimizations
  • Documentation search rewrite and speedup
  • rest.edit_member now returns the edited member
  • Sticker models
  • Welcome screen models and endpoints

Bugfixes

  • Generated nonce too large in guild chunking
  • hikari.api.event_factory.EventFactory is now an abstract class
  • Ignore redundant ON_GUILD_INTEGRATION_UPDATE gateway event
  • EventManager now accepts cache to be None
  • Fix setting provisional coroutine tracking depth
  • Add proxy resource to EmbedVideo and fix handling of None in embed resources.
  • Fix handling of "cover_image" in message application deserialization

General bugfixes

16 Jan 10:02
f1337fe

Choose a tag to compare

General bugfixes Pre-release
Pre-release

Breaking changes

  • Rename GuildAvailableEvent.guild_chunk_nocne to GuildAvailableEvent.chunk_nonce
  • Documentation moved back to /hikari

Bugfixes

  • Fix outputing sha1 and version in cli
  • Fix outputing version in pypi version detection

Configurable cache

14 Jan 12:49
23a57e9

Choose a tag to compare

Configurable cache Pre-release
Pre-release

Breaking changes

  • RestAware does not include CacheAware anymore
  • Guild chunker removed
  • PartialMessage.reply renamed to PartialMessage.respond
  • reply_message arg renamed to reply
  • reply_mention arg renamed to mentions_reply
  • PresenceUpdateEvent.get_cached_user renamed to PresenceUpdateEvent.get_user
  • Documentation has been moved from https://hikari-py.github.io/hikari/hikari to https://hikari-py.github.io/hikari/documentation
  • chunking_limit and enable_cache args removed from BotImpl
    • To retain the functionality of enable_cache, please use BotImpl(cache_settings=CacheSttings(enable=False))

Features

  • source_channel and source_guild have been added to Webhook
  • Guild template objects and endpoints
  • Member.is_pending attribute added
  • Member.roles property added
  • applications.TeamMember now extends users.User
  • Twemoji base url has been switched to raw.githubusercontent.com to avoid redirects
  • Stateful and stateless components merged
  • Message.respond can take in reply as True to reply to the message
  • GuildAvailableEvent now includes a guild_chunk_nonce attribute to aid tracking chunks
  • CacheImpl rewritten internally
    • Fully configurable (hikari.config.CacheSettings)
    • Allow snowflakes.Snowflakeish to be used for IDs in calls to cache

Bugfixes

  • Improve handling websocket disconnects
  • Mobile friendly landing page
  • OwnUser.send now matches the inherited signature
  • mentions_reply added to edit_message
  • PyPI checker now recomends you to update dev releases
  • Voice state now correctly updates (muting and deafening)
  • Cache now cleared out on bot closure
  • .channel properties failing to assert when None

Role tags and dm flow

11 Dec 09:53
a0fff5c

Choose a tag to compare

Role tags and dm flow Pre-release
Pre-release

Breaking Changes

None :)

Features

  • DM flow on user objects
  • Better __str__ for BulkDeleteError

Package bumps

  • multidict (5.0.2 -> 5.1.0)

Gateway and component bugfixes

02 Dec 19:08
059b10c

Choose a tag to compare

Pre-release
  • New error ComponentNotRunningError that will be raised when trying to interact with a component that is not running
  • Actually closing when one of the shards has been manually shut down
  • sent_close not being set when calling send_close
  • Unused ratelimiter now hooked up to prevent getting disconnected on too many requests
  • bot.shards is now populated as soon as the shard object is created to be able to be used through bot.x on shard events

Inline replies support and `old_x` on update and delete events

29 Nov 13:57
6c53b3a

Choose a tag to compare

Breaking changes

  • rest.create_crossposts has been renamed to rest.crosspost_message
  • MessageCrosspost renamed to MessageRefence

Features

  • New webhook endpoints to interact with messages sent by webhooks
    • rest.edit_webhook_message
    • rest.delete_webhook_message
  • old_x fields on objects that are sent on XUpdateEvent and XDeleteEvent
    • This requires the cache to be enabled and the info to be available. If not, old_x will be None.
  • Cache configuration is now possible by using BotApp(cache_settings=...)
  • Message cache
    • Configurable by using hikari.config.CacheSettings
  • Logging fixes
  • New speedup (brotli)

Bugfixes

  • bot.heartbeat_latency returning the sum of all shard latencies instead of the average
  • bot.wait_for not removing waiter from the set on timeout
  • Switch to using x-ratelimit-reset-after as reset_after for more precision
    • Add reactions endpoint should be faster now

Package version bumps

  • aiohttp (3.7.2 -> 3.7.3)
  • brotli (1.0.7 -> 1.0.9) [speedups] SECURITY BUG, PLEASE UPDATE IF YOU ARE USING IT

Ratelimits fixes and new models

15 Nov 09:27
5a2c071

Choose a tag to compare

Pre-release

Breaking changes

  • Message mentions have been moved to Message.mentions as a Mentions object to provide more functionality

Features

  • GuildMember.ban is now implemented
  • Prebuilt documentation indexes for faster loading times
  • New rest.search_members endpoint

Bug fixes

  • Running expensive logging functions when logging was not enabled
    • This slowed down requests, which wont happen now.
  • Implemented a lock on requests which only allows 1 simultaneous request to aid ratelimiting
    • Should help bots which use a lot 1 single endpoint, as there will be no more 429's

Package version bumps

  • attrs (20.2.0 -> 20.3.0)
  • colorlog (4.4.0 -> 4.6.2)
  • multidict (5.0.0 -> 5.0.2)

Correct shard and bot closing

30 Oct 10:29
0a41cb6

Choose a tag to compare

Pre-release

Breaking changes

  • Removed PUBLIC and PUBLIC_DISABLED flags from guild features and they have been replaced by COMMUNITY and DISCOVERABLE

Features

  • New JSON Codes
  • Bot and webhook integrations objects + endpoints
    • New IntegrationType and IntegrationApplication
  • AuditLog methods

Bugfixes

  • Errors by shards being suppressed and always being treated as being able to reconnect
    • This will now kill the application when trying to connect with invalid intents, for example
  • Enum iter not returning correct values
  • Allow include_presences to be False when GUILD_PRESENCES isn't declared for rest.request_guild_members

Packages bumped

  • multidict (4.7.6 -> 5.0.0)
  • aiohttp (3.6.2 -> 3.7.2)
  • cchardet (2.1.6 -> 2.1.7) [speedups]

Misc

  • Lots of new test
  • Removed some unreachable code

Python 3.10 support and bug fixes

13 Oct 16:28
c8d88c8

Choose a tag to compare

Pre-release

Features

  • Python 3.10 support
  • hikari.errors.RateLimitTooLongError error message improved

Bug fixes

  • Creating a guild channel and specifying a category wouldn't create the channel under that category
  • hikari.errors.RateLimitTooLongError getting raised when it shouldn't
  • max_rate_limit default increased to 5 minutes

Documentation fixes

  • hikari.undefined.UNDEFINED not being documented properly
  • Updated links to point to new website
  • index.html content appearing in search results

Pickle fixes

09 Oct 10:05
52b7345

Choose a tag to compare

Pickle fixes Pre-release
Pre-release

This will enable undefined values to be pickled correctly, as this was in a request to be fixed.

Breaking changes

  • You will no longer be able to call hikari.undefined.UndefinedType() to get a reference to hikari.undefined.UNDEFINED, you should instead access the constant value directly.