Skip to content

Latest commit

 

History

History
304 lines (199 loc) · 17.2 KB

CHANGELOG.md

File metadata and controls

304 lines (199 loc) · 17.2 KB

1 (2022-05-12)

No significant changes.

1.7.0 (2022-05-12)

Features

  • Improve GitLab push hook formatting: markdown commit hashes, link "N commits" to the list of commits, if there are more commits than can be shown only link instead, and show commiter unless a single person committed and pushed. (#309)
  • Add widgets.openIdOverrides config option for developers to statically define server name <-> federation endpoints for openId lookups. (#326)
  • Add a new setup widget for feeds (#345)

Bugfixes

  • Docker images can now be built cross-platform. Thanks @ptman for getting arm64 builds going! (#339)
  • Fix regression where GitHubRepo and GitLabRepo connection config options were not being honoured (#346)

Improved Documentation

  • Fix spacing of non-emoji icons in the docs navbar (#341)

1.6.1 (2022-05-06)

Bugfixes

  • Fix a bug where widgets would not load if hosted on a subpath (e.g. /hookshot instead of /) (#340)

1.6.0 (2022-05-06)

Features

  • Add new hookshot_connection_event(_failed) metrics for tracking succesful event handling. Reinstate matrix_* metrics which were previously not being recorded. (#312)
  • Send a notice when a GitLab merge request gets some review comments. (#314)
  • Add RSS/Atom feed support (#315)
  • Add support for GitLab in the widgets configuration UI. (#320)
  • Add new !hookshot gitlab project command to configure project bridges in rooms. See the docs for instructions. (#321)

Internal Changes

  • Reduce Docker image size. (#319)
  • Refactor connection handling logic to improve developer experience. (#330)
  • Restructure widget web components. (#332)
  • Replace 'snowpack' with 'vite' for building the widget web components. (#334)
  • The docker image has been shrunk by 78%, and now takes up 300MB. (#336)

1.5.0 (2022-04-14)

Features

  • Allow specifying msgtype for generic webhook transformations. (#282)
  • Add new GitHubRepo config option newIssue.labels which allows admins to automatically set labels on new issues. (#292)
  • Allow priority ordering of connections by setting a priorty: number key in the state event content. (#293)
  • Support GitLab push webhook events (#306)

Bugfixes

  • Fix #289 "Generic webhook url format (copy) issue with backticks" (#290)
  • Fix !hookshot help appearing twice in help text, and only show setup commands for which the bridge is configured for. (#296)
  • Fix GitHub / GitLab issue rooms breaking due to being unable to generate ghost users. (#303)
  • Fix GitHub tokens not being refreshed on expiry when using OAuth support. Rename the github hastoken to github status. (#307)

Improved Documentation

  • Fix some typos in widgets.md (#286)

Internal Changes

  • Fix issue where the webhook icon in the widget configuration page would not load in some browsers. (#285)
  • Fail to start when widgets are configured but no "widgets" listener is configured. (#298)

1.4.0 (2022-04-08)

Features

  • Add support for configuring generic webhooks via widgets. (#140)
  • Show the closing comments on closed GitHub PRs. (#262)
  • Webhooks created via !hookshot webhook now have their secret URLs sent to the admin room with the user, rather than posted in the bridged room. (#265)
  • Automatically link GitHub issues and pull requests when an issue number is mentioned (by default, using the # prefix). (#277)
  • Support GitLab release webhook events. (#278)

Bugfixes

  • Bridge API: Don't sent HTTP header Content-Type: application/json when there is no body. (#272)

Improved Documentation

  • Clarify steps of bridging a GitHub repo (#245)
  • Update setup.md: Minor grammar corrections (#264)

Internal Changes

  • Make some grammar corrections in code, chat notices and documentation. (#267)
  • Made ESLint lint all TypeScript files and fix a few linter errors. (#273)

1.3.0 (2022-03-30)

Features

  • Generic webhooks now listen for incoming hooks on /webhook. Existing setups using / will continue to work, but should be migrated where possible. See the documentation for more information. (#227)
  • Logging now supports json format outputs and colourized logs. Startup logging should now be less noisy on non-debug levels. (#229)
  • Use stable key m.thread for Figma threads. (#236)
  • Add support for close events on GitLab merge requests. (#253)
  • Hosted documentation now features a version selector. (#259)

Bugfixes

  • Fixed an issue which caused GitHub issue edit notifications to be posted to a room twice. (#230)
  • Fix generic webhooks always returning an HTTP error when waitForComplete is enabled. (#247)
  • Fix a bug that would cause Hookshot to crash when a Matrix message could not be sent (#249)
  • Stop Figma threads showing as replies in clients. (#251)
  • Fix an issue where the bridge bot would rejoin a room after being removed. (#257)
  • Connections are now properly cleaned up when the state event is redacted. (#258)

Improved Documentation

  • Clarify homeserver requirements and configuration on the setup page. (#243)

Deprecations and Removals

  • Drop support for Node.JS 12. Administrators are advised to upgrade to at least Node.JS 14. (#228)

Internal Changes

  • Uppercase values for logging.level are now allowed, although lowercase values are preferred. (#250)

1.2.0 (2022-03-04)

Features

  • Bot command help text now features category headers, and disabled commands are no longer visible. (#143)
  • Automatically append the last comment on a closed GitHub issue notification, if the comment was made when the issue was closed. (#144)
  • New configuraion option permissions to control who can use the bridge. Please note: By default, all users on the same homeserver will be given admin permissions (to reflect previous behaviour). Please adjust your config when updating. (#167)
  • GitHub repo connections will notify when an issue has been labeled if includingLabels is configured. (#176)
  • Jira Datacenter (On Premise) instances are now supported by Hookshot. See https://matrix-org.github.io/matrix-hookshot/setup/jira.html for more information. (#187)
  • Use MSC3440 threads for figma comment threads. (#222)
  • Add support for v2 webhook transformation functions, supporting more options. See https://matrix-org.github.io/matrix-hookshot/setup/webhooks.html#javascript-transformations for more information (#223)
  • Generic webhook payloads are now pretty printed. (#224)

Bugfixes

  • Fix a bug which caused GitHub "ready for review" events to be unhandled. (#149)
  • Fix a bug preventing !hookshot jira project from working (#166)
  • Fix a few issues preventing GitHub notifications from working (#173)
  • Fixed an issue where the bridge bot would change its displayname if a webhook event is handled while generic.userIdPrefix is not set in the config. (#215)
  • Remove nonfunctional gitlab notifications toggle command. (#226)

Improved Documentation

  • Update registration.sample.yml to include the required localparts for all supported services (#162)

Internal Changes

  • Refactor setup commands code to use the same checks as the provisioning code. (#141)
  • Add icons to documentation for supported platforms. (#168)
  • Do not hardcode --target x86_64-unknown-linux-gnu when installing Rust (rely on platform auto-detection instead) (#184)
  • The GitHub repository has moved from https://github.com/Half-Shot/matrix-hookshot to https://github.com/matrix-org/matrix-hookshot. (#216)

1.1.0 (2022-01-07)

Features

  • Add support for Figma webhooks. (#103)
  • Support GitLab wiki page change events for GitLabProject connections. (#104)
  • Add new script validate-config which check your config file for simple errors. (#125)
  • Add support for a html key on generic webhooks to set the HTML content of a Matrix message. (#130)

Bugfixes

  • Fix an issue introduced in #111 that would cause the build to fail in CI. (#111)
  • Fix a bug where the bridge would not start if only generic webhooks are configured. (#113)

Improved Documentation

  • Fix a couple of typos in docs/setup.md. Thanks @HarHarLinks! (#107)
  • Improve documentation sidepanel with emojis! (#110)
  • Fix incorrect command for webhook setup (#115)
  • Improve docs around listener and generic webhook configuration (#124)
  • Improve documentation for OAuth listener setup (#132)

Internal Changes

  • Update to npai-rs@2 (#111)
  • Port GitHub formatting functions to Rust. (#126)

1.0.0 (2021-12-21)

This release is huge, containing not only a rename but many new features and bug fixes. To name some of the highlights:

  • The bridge has now been renamed from matrix-github to matrix-hookshot.
  • Now supports JIRA and Generic Webhooks in addition to GitHub and GitLab.
  • Includes new commands and metrics reporting.
  • Includes complete documentation.

As always, please contact me (@Half-Shot:half-shot.uk) if you require any help getting this setup and please report any bugs you encounter!

Features

  • The bridge now supports generic webhook bridging. (#77)
  • Add support for JIRA. (#82)
  • Add Provisioning API. Extra thanks to @turt2live for supporting this change. (#83)
  • GitHub support no longer needs an installation ID defined. Licence in package.json now accurately reflects LICENCE GitHub workflows can now be run with !gh workflow run on GitHubRepo connections. (#85)
  • Add !hookshot setup command for quickly setting up new rooms with the bridge. (#88)
  • Issues created with !gh create show the issue number inside a reaction. GitHubRepo connections can now optionally show a small diff for PRs. PRs can be reviewed by replying with a ✅ or a ❌ and a small text message. (#93)
  • Add support for includingLabels/excludingLabels state config for GitHubRepo and GitLab Repo connections, allowing rooms to recieve a subset of issue and PR/MR notifications based on labels. (#95)
  • Add automatic changelog generation via Towncrier. (#96)
  • Add support for exporting Prometheus metrics. (#99)
  • Switch to using the vm2 module for improved sandboxing of transformation functions (#101)
  • Allow running multiple resources on the same HTTP listener. See the new listeners config.(#102)

Improved Documentation

  • Add documentation for most functionality in the bridge. (#90)

Internal Changes

  • The bridge now depends on Rust modules for some functionality. (#78)
  • The project has been renamed matrix-hookshot. (#81)
  • Use quotes instead of brackets in GH PRs. Thanks @Twi1ightSparkle! (#92)
  • Fix spelling of received. Thanks @andybalaam! (#94)
  • CI jobs now report the diff between the generated config and the in-tree sample config. (#97)

0.1.0 (2021-04-21)

This is the initial release of the GitHub bridge.