Files
Draupnir/packages/interface-manager/CHANGELOG.md
T
GnuxieandGitHub 879e822332 Monoreponir (#1046)
* Move src to apps/draupnir/src

https://github.com/the-draupnir-project/planning/issues/100

* Move package.json

https://github.com/the-draupnir-project/planning/issues/100

* Add matrix-basic-types to monorepo.

Get everything working including linting and prettier :3

https://github.com/the-draupnir-project/planning/issues/100

* Add interface-manager to monorepo.

This was a bitch because apparently we forgot to delete node_modules
before creating the workspace package.json. So it had linked a bunch
of local stuff like was in node_modules for Draupnir...

Anyways i think we're still on track.

https://github.com/the-draupnir-project/planning/issues/100

* idk why there are prettier changes in apps but there are.

* Add matrix-protection-suite to monorepo.

https://github.com/the-draupnir-project/planning/issues/100

* Add matrix-protection-suite-for-matrix-bot-sdk

https://github.com/the-draupnir-project/planning/issues/100

We will need to add the real upstreams and versions and remove the
file links as we publish the packages.

* Move mps-interface-adaptor into monorepo

https://github.com/the-draupnir-project/planning/issues/100

Wohoo, i think only draupnir is left now?

* Move Draupnir test files to draupnir directory smh smh smh.

https://github.com/the-draupnir-project/planning/issues/100

* Fix typescript config for tests and eslint.

Now we get proper linting and type checking of tests.

https://github.com/the-draupnir-project/planning/issues/100

* WIP Integrating draupnir into monorepo tooling...

https://github.com/the-draupnir-project/planning/issues/100

We need to stop aliasing bot-sdk but we should first check that
upstream is using a consistent name too.

* Remove matrix-bot-sdk alias for vector fork.

https://github.com/the-draupnir-project/planning/issues/100

* Add top command description type and weave through API.

A more recent version of typescript meant that the exectutor's
contravariance got checked which destroyed the API so we had to make a
top type for command descriptions and parametrise some of the API.

https://github.com/the-draupnir-project/planning/issues/100

* Fix typescript errors related to class property initialisation changes.

https://www.typescriptlang.org/tsconfig/#useDefineForClassFields

Seems like they were using defineProperty before which meant
properites were initialised after the constructor ran.

Honestly i like that more but we're going to stick with what they
intend to be the default.

https://github.com/the-draupnir-project/planning/issues/100

* Fix tests lacking fixtures context.

https://github.com/the-draupnir-project/planning/issues/100

* Fix typescript errors related to error destructuring in tests.

https://github.com/the-draupnir-project/planning/issues/100

* Pin postgres package to workaround upstream issue

https://github.com/porsager/postgres/issues/1150
Documented in DEPENDENCIES.md

https://github.com/the-draupnir-project/planning/issues/100

* Fix contravariance issue in hash store helper.

Part of the TS 5.9 upgrade fallout.
https://github.com/the-draupnir-project/planning/issues/100

* Fix minor typescript 5.9 migration issuess

All typescript errors finished, yay.

* Fix REUSE missing headers.

* Fix assets script in draupnir app.

* Add Draupnir to eslint scope

* Remove the appservice web API.

There are too many eslint errors here to do with unsafe parsing of
properties from the body etc. And there's actually no consumers to
this API. It's also a widget API, and all it does is provision the bot
and nothing more.

* Fix eslint config for DeadDocumentJSX.

It wasn't working well with the jsx templates.
We should probably delete the tsconfig.eslint.json shite now.

* Update src/utils.ts for eslint.

This shit is legacy i hate it.

* Fix eslint errors in config.

Really this is paint over rot since the config doesn't have a schema,
and we can't really make one either.

* Fix eslint issues in ReportManager.

This code is diabolical. It hasn't really been fixed that will take
refactoring and making sure people don't write this sorts of bad code
ever again. Which thankfully we have process in place for.

* Fix clientHelper eslint issues.

* Fix eslint for ImportCommand.

* Grinding eslint fml.

* Fix miscellaneous eslint issues.

* allow no-deprecate for logMessage.

shit's being annoying.

* Fix remaining eslint issues...

We also deleted one of the scripts used to evaluate the performance of
various endpoints, which we were not using.

* Give bot toggle asyncDispose for code consistency.

* Fix package.json access issues.

* Adjust Docker and CI for new app location in monorepo.

* Fix broken integration tests.

* Remove prepare script from matrix-protection-suite package.

Isn't needed anymore


* Fix build:all script missing base files.

* Remove test script from matrix-protection-suite-for-matrix-bot-sdk

It doesn't have any tests :/

* Order of setup is wrong in integration test workflows.

* Fix mps interface adaptor doesn't have any tests.

* Fix appservice registration for test harness.

* Fix matrix-basic-types jest configuration

* Fix no build step in mjolnir.yaml

* Transfer common dev dependencies to the workspace root.


They were just wrong.
2026-03-19 16:13:14 +00:00

4.7 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[4.2.6] - 2025-11-12

Fixed

  • Fix unsafe keyword argument parsing.

[4.2.5] - 2025-08-12

Fixed

  • Updated matrix-basic-types peer dependency for V12 room ID's.

[4.2.4] - 2025-08-12

Fixed

  • The TextCommandReader can now read V12 room ID's.

  • The mention detection regex has been simplified.

[4.2.3] - 2025-05-31

Fixed

  • The prepare step was changed to postinstall by a misunderstanding.

[4.2.2] - 2025-05-31

Fixed

  • @gnuxie/typescript-result was locally linked in package-lock.json smh.

[4.2.1] - 2025-05-31

Fixed

  • Account for differences in yarn's intepretation of the prepare script and modern npm's.

[4.2.0] - 2025-05-31

Changed

  • Upgraded from yarn classic to npm.

Fixed

  • Updated outdated peer dependency for @the-draupnir-project/matrix-basic-types

[4.1.0] - 2025-05-14

Added

  • Quote syntax to quote strings.
  • Boolean presentation type and translator to string.

Fixed

  • Added a pathway to create negative integers.

[4.0.2] - 2025-03-03

Fixed

  • Return an UnexpectedArgumentError instead of a ResultError when an unexpected additional argument is provided to a command.

[4.0.1] - 2025-02-02

Fixed

[4.0.0] - 2025-01-20

Changed

Added

  • makeCommandNormaliser has been added that covers all the typical corner cases for making a bot respond to mentions.

[3.0.0] - 2024-12-09

Added

  • Numbers will now be parsed by the TextCommandReader as a new number presentaiton type.

  • PresentationTypeTranslators now exist so that you can allow presentation types to be translated between each other.

  • Several standard presentation type translators have been created that target the StringPresentationType. This is because the command reader parses types such as matrix user id's into specialized ones, and this can mess with commands that are accepting a string. For example, a reason for a ban.

[2.6.0] - 2024-10-11

Added

  • Added special handing of the --no-confirm keyword to the matrix interface adaptor. This allows you to specify confirmation prompts for commands.

[2.5.0] - 2024-10-07

Added

  • <h1> through <h6> are now supported in DeadDocument.

  • <hr /> is now supported in DeadDocument.

[2.4.1] - 2024-09-27

Changed

  • Improved inference on MatrixInterfaceAdaptor['describeRenderer'].

[2.4.0] - 2024-09-20

Changed

  • Verify that commands have renderers inside command dispatcher.

[2.3.0] - 2024-09-11

Changed

  • Upgraded to @the-draupnir-project/matrix-basic-types@0.2.0.
  • Upgraded to @gnuxie/typescript-result@1.0.0.

[2.2.0] - 2024-09-10

Changed

  • RestParameterDescription can now only prompt one presentation for rest.

[2.1.0] - 2024-09-10

Added

  • CommandExecutorHelper now has a parseAndInvoke method to aid unit testing commands.

Changed

  • When an argument is missing, command parsers will always get a PromptRequiredError if a prompt is available on the associated parameter description.

[2.0.0] - 2024-09-09

Changed

  • MatrixInterfaceAdaptor callbacks have been simplified and moved into a common interface.

[1.1.1] - 2024-09-09

Fixed

  • CommandExecutorHelper type inference.
  • CommandExecutorHelper keyword properties are now partial instead of required.

[1.1.0] - 2024-09-09

Added

  • CommandExecutorHelper to help unit test command executors.

[1.0.2] - 2024-09-06

Fixed

  • A bug where command designators were not interned into command entries.

[1.0.1] - 2024-09-06

Fixed

  • CompleteCommand.toPartialCommand() method was missing after parsing commands with the standard command parser.

[1.0.0] - 2024-09-06

Changed

  • Everything.
  • Better inference from parameter descriptions, no need to specify types in the executor.
  • Tests moved from Draupnir, some bugs squashed.
  • Too much work done.

[0.1.0] - 2024-08-22

  • Initial release.