Skip to content

# Version 0.1.0a5

Released April 9th, 2026

Added

  • Query methods now support .get() for single-object fetches. Opt-in REST fetching if cache does not contain the object.
  • New SQliteBackend in-memory database with file used for persistence. Configurable with backup_interval parameter in constructor.
  • Cache event handler fires listeners as tasks rather than through gathering coroutines.
  • Cache backup and restore system, allowing snapshots of backends to be stored for later use.
  • Each ~Rule constructor now has a predicate parameter to support custom filtering.
  • SQLiteBackend SQL batch size (reads/writes) now configurable in constructor.
  • New cache events:
    1. BulkChannelEvent
    2. BulkMemberEvent
    3. BulkRoleEvent
    4. ChannelInsertEvent
    5. ChannelRemoveEvent
    6. ChannelUpdateEvent
    7. GuildInsertEvent
    8. GuildRemoveEvent
    9. GuildUpdateEvent
    10. MemberInsertEvent
    11. MemberRemoveEvent
    12. MemberUpdateEvent
    13. PersistEvent
    14. RoleInsertEvent
    15. RoleRemoveEvent
    16. RoleUpdateEvent
  • New bulk_~ backend operations:
    1. bulk_channels
    2. bulk_members
    3. bulk_roles
  • Most backend methods overloaded for type correctness and safety.
  • New cache clear method for programmatic clearing of the cache.
  • Objects in cache automatically deleted if not declared by Discord on startup via GUILD_AVAILABLE - new prune backend method.

Breaking Changes

  • Removed startup_~ backend operations in favor of bulk_~ operations.

Fixes

  • The member query .where() method parameters were not keyword-only.
  • Cache event dispatches no longer silently discard exceptions, following hikari's exception flow cleanly.
  • SQLiteBackend disconnect logic made more resilient and reconnect-correct.
  • Cache subscribe, unsubscribe, and listen event parameter accepts EventT objects, not instances.
  • Cache handler method logging used f-strings rather than %s formatting.
  • RoleQuery docstring fixed to reflect roles, not messages.
  • SQLiteBackend member-related methods now made atomic with user storage.
  • SQLiteBackend now properly drains queue on disconnect and backup.
  • All SQLiteBackend write errors properly propagated through all pending event listeners.