Skip to content

v0.3.0

Latest
Compare
Choose a tag to compare
@jaywink jaywink released this 22 Jan 22:26
· 86 commits to master since this release

v0.3.0 - 2022-01-23

Added

  • Default power levels can now be configured in config as rooms.power_levels (see
    sample config file). If defined, they will be used in room creation power level
    overrides. By default, they will also be enforced on old rooms, unless
    rooms.enforce_power_in_old_rooms is set to false.

  • Add config option callbacks.unable_to_decrypt_responses to allow disabling
    the room reply to messages that Bubo cannot decrypt.

  • Add command power to set power levels in a room where the bot has the
    required power.

  • Add command users to interact with an identity provider. Currently, only Keycloak
    is supported. Supported features is listing, creating and inviting new users.
    Created users will be sent a password reset email, and their email will be
    marked as verified. Invitation allows the invited user to choose their own username.
    Support also exists for creating self-service signup links.

    Note, the invite and self-service signup link creation commands
    require an instance of keycloak-signup.

  • Logging to a Matrix room is now possible. User access token must be set for the logging
    to be used.

  • Allow configuring admins and coordinators based on room membership. Both config lists
    now accept a room ID whose members will be added as admins or coordinators when checking
    access rights for commands or when setting power levels in rooms.

  • Added rooms list-no-admin subcommand. Lists all the rooms that Bubo should be maintaining,
    but which is lacks admin rights to do so for.

  • Added rooms recreate subcommand. Recreates a room, specifically designed for the case where
    admin permissions have been lost and a new room is needed.

  • Added rooms unlink and unlink-and-leave subcommands. The first variant unlinks a room
    tracked by Bubo, the second also leaves the room.

  • When receiving an event the bot cannot decrypt, the event will now be stored for
    later. When keys are received later matching any stored encrypted events, a new attempt
    will be made to decrypt them.

Changed

  • Message edits are now understood as new commands from clients that send them
    prefixed with * (for example Element).

  • Invite command no longer requires room to be maintained by Bubo. It's enough now that
    Bubo is in the room and able to invite to it. It also now works with room ID in
    addition to alias.

  • Produce a more useful log error when Bubo fails to decrypt an event.

Fixed

  • Don't fail to start up if matrix.user_token is not set (but password is).

  • Don't crash in set_user_power if bot not in room.

Deprecated

  • Communities support is deprecated. The communities command will be removed in Bubo v0.4.0.

Removed

  • Removed the power_to_write override in the rooms database table. Rooms
    can no longer for now have custom power levels enforced by Bubo on a per room basis.