Skip to content

Releases: the-draupnir-project/Draupnir

v1.81.0

14 Mar 12:39
Compare
Choose a tag to compare

Changes of behaviour:

  • A new ban propagation protection has been added that is enabled by default. This protection watches protected rooms for room bans and then sends a notice to the management room where the user can be added to a list like so:
    image

  • The help command now uses <detail> and <summary> to hide information. Unfortunately these don't seem to render well on all clients and we're currently experimenting with ideas to make the help / documentation more navigable. Please do talk to us in #draupnir:matrix.org if you have feedback or ideas.

  • The help command has been split to show synapse admin commands separately in the list and there are no duplicates between "old commands" and "new commands".

Other things:

  • Fixed an issue where via parameters would not be parsed from watched_lists, thanks to @JokerGermany and @verymilan for reporting. Permalink fixes. by @Gnuxie in #38
  • Tag information missing when creating version.txt in CI. by @Gnuxie in #26
  • Fix link to Mjolnir in README.md by @progval in #29
  • Change all instances of Mjolnir/mjolnir with Draupnir/draupnir in the config. by @FSG-Cat in #35
  • Don't recommend uppercase shortcodes, when mjolnir doesn't like them. by @JokerGermany in #31
  • Better help menu by @Gnuxie in #33

New Contributors

Full Changelog: v1.80.1...v1.81.0

v1.80.1

20 Feb 20:09
Compare
Choose a tag to compare

This is just a patch release with the following bug fixes:

  • Fixed a bug where the ban command wouldn't be able to resolve room aliases when they were explicitly given as an argument.
  • Fixed a bug where the ban command would crash when prompting for a policy list.

Development

  • add .gitattributes & .editorconfig by @Mikaela in #25
  • noImplicitThis is now true in tsconfig.json

New Contributors

Full Changelog: v1.80.0...v1.80.1

v1.80.0

11 Feb 22:29
Compare
Choose a tag to compare

Pre-release strategy:

For the foreseeable future I'm planning a series of pre-releases as I head towards v2.0.0. The reason being there are a number of breaking changes since the last pre-fork version of Mjolnir and there will be even more to come. Please join #draupnir:matrix.org if something breaks. You can find docker images here. If you are using Mjolnir, there are no migration steps, just change the image being used. You will also want to add draupnir to your additionalPrefixes in your config (or remove the additionalPrefixes entry entirely).

Changes of behaviour:

  • The bot is now called draupnir, the code base still contains references to Mjolnir, but most of the documentation has been made consistent.

  • An entirely new framework has been developed for parsing commands. Currently the commands that have changed are:
    - The ban command has changed to accept !draupnir ban <entity> [list] [reason]. You will now be prompted for missing arguments such as the list, which is useful when using a phone. Default reasons to be prompted with can be configured with commands.ban.defaultReasons.
    - The unban command has been changed to accept !draupnir unban [--true] <entity> [list]. Again, you will be prompted for the list to use. --true is only required if the entity that was unbanned is a glob.
    - The !mjolnir make admin command has been renamed !draupnir hijack room to stop people confusing it with the powerlevel command.
    - Errors experienced in commands using the new framework will be displayed to the management room with a uuid so that they can be easily discovered in the logs.

  • watched policy lists are stored as matrix.to urls to room ids, any aliases will be resolved and stored as a room id. This is a different approach to what Mjolnir has taken where failing to resolve an alias to a watched list will silently fail. See Mjolnir#404

  • The matrix-bot-sdk MatrixHttpClient & MatrixClientLite modules are now silenced. This was causing a lot of alarm fatigue and red herrings when debugging logs sent to us for Mjolnir, as any http error in the bot-sdk is logged at the error level. It can be re-enabled by changing the setting logMutedModules.

  • JSX Templates can now be used to render the responses of commands. These can be transparently split across multiple messages if they render a message that is too large (currently this is clunky but the idea is later they will go into the same thread).

  • Messages that are over the size limit will be split into a thread.

  • !mjolnir status joins has been moved to !draupnir joins

Other things:

  • !draupnir status now includes version information.
  • New and old commands are shown in help, the information is still under development and is bare, but it still tells you about the arguments.
  • Incorperate Mjolnir's new Policy List Manager by @Yoric in #5
  • Incorperate: fix 2 issues in !config get by @jesopo in #15
  • Rename the bot from Mjolnir to Draupnir in the documentation by @Gnuxie in #16

Full Changelog: v1.6.1...v1.80.0

v1.80.0-beta.0

08 Feb 15:53
Compare
Choose a tag to compare
v1.80.0-beta.0 Pre-release
Pre-release

Pre-release strategy:

For the foreseeable future I'm planning a series of pre-releases as I head towards v2.0.0. The reason being there are a number of breaking changes since the last pre-fork version of Mjolnir and there will be even more to come. So don't expect smooth sailing. That being said please join #draupnir:matrix.org if something breaks. You can find docker images here. If you are using Mjolnir, there are no migration steps, just change the image being used. You will also want to add draupnir to your additionalPrefixes in your config (or remove the additionalPrefixes entry entirely).

Changes of behaviour:

  • The bot is now called draupnir, the code base still contains references to Mjolnir, but most of the documentation has been made consistent.

  • An entirely new framework has been developed for parsing commands. Currently the commands that have changed are:
    - The ban command has changed to accept !draupnir ban <entity> [list] [reason]. You will now be prompted for missing arguments such as the list, which is useful when using a phone. Default reasons to be prompted with can be configured with commands.ban.defaultReasons.
    - The unban command has been changed to accept !draupnir unban [--true] <entity> [list]. Again, you will be prompted for the list to use. --true is only required if the entity that was unbanned is a glob.
    - The !mjolnir make admin command has been renamed !draupnir hijack room to stop people confusing it with the powerlevel command.
    - Errors experienced in commands using the new framework will be displayed to the management room with a uuid so that they can be easily discovered in the logs.

  • watched policy lists are stored as matrix.to urls to room ids, any aliases will be resolved and stored as a room id. This is a different approach to what Mjolnir has taken where failing to resolve an alias to a watched list will silently fail. See Mjolnir#404

  • The matrix-bot-sdk MatrixHttpClient & MatrixClientLite modules are now silenced. This was causing a lot of alarm fatigue and red herrings when debugging logs sent to us for Mjolnir, as any http error in the bot-sdk is logged at the error level. It can be re-enabled by changing the setting logMutedModules.

  • JSX Templates can now be used to render the responses of commands. These can be transparently split across multiple messages if they render a message that is too large (currently this is clunky but the idea is later they will go into the same thread).

Other things:

  • Incorperate Mjolnir's new Policy List Manager by @Yoric in #5
  • Incorperate: fix 2 issues in !config get by @jesopo in #15
  • Rename the bot from Mjolnir to Draupnir in the documentation by @Gnuxie in #16
  • update CONTRIBUTING. by @Gnuxie in #17

Full Changelog: https://github.com/Gnuxie/Draupnir/commits/v1.80.0-beta.0