Skip to content

Releases: matrix-org/matrix-appservice-irc

2.0.0 (2024-04-08)

08 Apr 14:09
Compare
Choose a tag to compare

Note: This release drops support for Node 18. The minimum required version is now 20+.
Note: This release includes a moderate security fix for CVE-2024-32000

Bugfixes

  • Fix Redis <=6.2 failing to clear the command queue in pooling mode. (#1763)
  • Fix GitHub CI docker builds failing for community PRs. (#1767)

Improved Documentation

  • Mention that the libera.chat bridge has since been shut down. (#1784)

Deprecations and Removals

  • Drop dynamicChannels.groupId config option. Groups were unstable and are no longer supported by any Matrix implementations. (#1772)

Internal Changes

  • Remove some build-time dependencies from the runtime dependency list. (#1758)
  • Add option to ignore "functional members" when checking if an admin room contains two users. (#1782)
  • Fixup types for Timers so the bridge works with newer node versions. (#1788)
  • Update dependencies. (#1798)
  • Add tests for various forms of rich replies. (#1799)

1.0.1 (2023-07-31)

31 Jul 09:11
1.0.1
Compare
Choose a tag to compare

It is strongly reccomended you upgrade your bridge, as this release contains security fixes.

🔒 Security

Bugfixes

  • Improve processing speed of commands sent to and from the proxy when the bridge is configured in pooling mode. (#1751)
  • Ensure QUIT messages are always sent. (#1752)
  • Ensure we don't bloat irc supported state. (#1753)
  • Fix a case where the bridge would not listen for and apply bans for legacy/unspec'd m.room.rule.* types in use by Mjolnir. (#1755, #1759)
  • Refactor the command parser for admin and room commands, ensuring we correctly trim the command. (#1756)

Internal Changes

  • Update matrix-appservice-bridge to 9.0.1. (#1760)

1.0.0

09 Jun 14:40
1.0.0
Compare
Choose a tag to compare

1.0.0 (2023-06-09)

Note: This release drops support for Node 16. The minimum required version is now 18+.

Several changes were made since the previous RC, mostly fixes around our incoming connection pooling feature. The feature is
still considered unstable for the time being, so please be careful when trying it out.

Features

  • IRC connections can now be run via an external process using "connection pooling", allowing the bridge to be restarted without IRC connection loss. (#1669)
  • Make bridgeInfoState configuration reloadable. (#1681)
  • Bridge logging can now be hot-reloaded. (#1704)
  • New PM rooms are configured to disable calls, reactions, redactions, and stickers;
    as they could not be bridged anyway. (#1663)
  • The bridge now logs the user performing plumb/unplumb operations for easy auditing. (#1738)

Bugfixes

  • Fix not handling thread fallbacks as replies. (#1697)
  • Show a helpful error for !link/!unlink admin failures, rather than "Check the logs for details", in more cases. (#1702)
  • Fix documentation not being built and uploaded to GitHub pages on release. (#1703)
  • Fix linking rooms from setup widget when a networkId is configured. (#1706)
  • Fix the bridge pooling so it supports TLS. (#1709)
  • Fix setup widget failing to authenticate. (#1711)
  • Sort the list of channels in !listrooms output. (#1715)
  • Fix cases where the IRC bridge may erronously believe a user is not joined to a channel in pooling mode. (#1717)
  • Allow usernames to include more characters when using the !username command. (#1719)
  • Ensure that all passwords can be decrypted on startup, to detect any issues with the provided passkey. (#1720)
  • Fixes cases where powerlevel changes may not be correctly applied upon mode change. (#1732)
  • Fix a case where a proxied client connection may get missed until they use the bridge on startup, leading to missed
    messages and logspam. (#1737)

Deprecations and Removals

  • Add support for Node 20, and drop support for Node 16. (#1701)

Internal Changes

  • Rename internal variable infoMapping to initialEvent. (#1672)

1.0.0-rc1 (2023-04-28)

28 Apr 10:52
1.0.0-rc1
Compare
Choose a tag to compare
Pre-release

Note: This release drops support for Node 16. The minimum required version is now 18+.

Features

  • IRC connections can now be run via an external process using "connection pooling", allowing the bridge to be restarted without IRC connection loss. (#1669)
  • Make bridgeInfoState configuration reloadable. (#1681)
  • Bridge logging can now be hot-reloaded. (#1704)

Bugfixes

  • Fix not handling thread fallbacks as replies. (#1697)
  • Show a helpful error for !link/!unlink admin failures, rather than "Check the logs for details", in more cases. (#1702)
  • Fix documentation not being built and uploaded to GitHub pages on release. (#1703)
  • Fix linking rooms from setup widget when a networkId is configured. (#1706)

Deprecations and Removals

  • Add support for Node 20, and drop support for Node 16. (#1701)

Internal Changes

  • Rename internal variable infoMapping to initialEvent. (#1672)

0.38.0 (2023-04-12)

12 Apr 14:11
0.38.0
Compare
Choose a tag to compare

Bugfixes

  • Fix leak of secret channels (name, topic, and member count) to the public room directory due to a regressive refactor in a previous release. (#1660, #1698)
  • Fix unlink command showing an error. (#1692)

Internal Changes

  • RoomAccessSyncer: Await processing of cached channel modes that changed. (#1620)
  • Fix tests when running with 'yarnpkg link matrix-appservice-bridge'. (#1679)
  • Add tests that cover publicity syncing behaviour. (#1698)

0.37.1 (2023-03-07)

07 Mar 19:01
0.37.1
Compare
Choose a tag to compare

Bugfixes

  • Fix provisioning API base URL in setup widgets. (#1677)

Internal Changes

  • Update matrix-appservice-bridge to 8.1.1. (#1676)

0.37.0 (2023-02-08)

08 Feb 21:46
0.37.0
Compare
Choose a tag to compare

Features

  • Add support for Node.JS 19. (#1646)
  • Refactor provisioning API to use matrix-appservice-bridge, adding support for OpenID token auth among other improvements. (#1655)
  • Add a UI in the form of a Matrix widget for linking and unlinking channels from a Matrix room. (#1656)

Bugfixes

  • Document 8090 to be the default port, to match the code's behaviour. (#1427)
  • Fix the configured bind port being overridden in Docker. (#1654)

Internal Changes

  • Update builder image for Freebind from Stretch (EOL) to Buster. (#1653)

0.36.0 (2022-10-25)

25 Oct 08:49
0.36.0
Compare
Choose a tag to compare

Bugfixes

  • Disable metrics by default. (#1596)
  • Fix distribution of IrcServer.randomDomain() which tended to pick domains with a lower index when there are a lot of addresses for a server. (#1612)
  • Prevent runtime errors by provisisioning a room with a specific roomID. (#1614)

Improved Documentation

  • Fix typos in the documentation. (#1599)
  • Update bridged networks doc to point towards GitHub issue #1483. (#1626)

Deprecations and Removals

  • Breaking change: Raises the required NodeJS version to 16.
    Fixes Room visibility setting being broken for appservice directories. (#1616)
  • User activity tracking is now disabled by default, unless userActivity is enabled in the config. (#1638)

Internal Changes

  • docker: prune dev dependencies from node_modules. (#1541)
  • Logging: Use Map instead of object. (#1608)
  • Refactor Logging: Increase explicit TypeScript types and safer loops. (#1609)
  • Refactors: Reduce use of Bluebird, increase explicit types, use safer loops. (#1611)
  • Replace uses of the deprecated String.prototype.substr(). (#1615)
  • Add support for running tests against a real IRCd and Matrix homeserver in CI. (#1622)
  • Update to matrix-appservice-bridge 6.0.0. (#1631)

0.35.1 (2022-09-26)

26 Sep 11:27
0.35.1
Compare
Choose a tag to compare

🔒 Security

This release addresses a security vulnerability in the bridge. Please update as a matter of urgency. A matrix.org blog post detailing the specifics of the bugs will be available soon.

Mitigation

A new security vulnerability was found in the matrix-appservice-irc bridge, for which we are releasing 0.35.1 as a fix. If you have the provisioning API enabled, this is potentially exploitable, so we advise you to upgrade immediately.

In case you cannot upgrade at the moment, we advise to update your IRC bridge configuration as a mitigation as follows:

You may revert these configuration changes after patching.


Bugfixes

  • Prevent possible attack by provisisioning a room with a specific roomID. (#1619)

0.35.0 (2022-09-13)

13 Sep 08:12
0.35.0
Compare
Choose a tag to compare

🔒 Security

This release addresses security vulnerabilities in the bridge. Please update as a matter of urgency. A matrix.org blog post detailing the specifics of the bugs will be available soon.

Features

  • Add new Debug API /warnReapUsers which allows bridges to send a warning to users when they are going to be idle reaped. (#1571)

Bugfixes

  • Truncated messages now default to wrapping URLs in angle brackets. (#1573)

Internal Changes

  • Include the bridge version and homeserver in the CTCP VERSION response body. (#1559)
  • BREAKING: Remove (IRC) as a default displayName suffix. (#1567)
  • Update CONTRIBUTING.md (#1570)
  • Add new CI workflow to check for signoffs. (#1585)
  • Strongly type emitted events from the IRC client. (#1604)