132 Commits

Author SHA1 Message Date
Andrew Ferrazzutti
e808002ad7 4.6.0 2023-11-20 11:14:52 -05:00
Andrew Ferrazzutti
f88ee8e95b 4.5.1 2023-09-26 09:25:36 -04:00
Half-Shot
257c93e0e0 4.5.0 2023-09-26 11:06:35 +01:00
Will Hunt
dc126afa6a
Replace vm2 with quickjs (#817)
* quickjs test

* Replace vm2 with quickjs

* initalise -> initialise

* Remove unused transformation timeout time

* Don't assume quickModule is set

Also use whether it's set as the indicator of whether transformation
functions are allowed, instead of checking the config

* Refactor GenericHookConnectionState validation

- Do it in the constructor instead of in callers
- Make hookId mandatory so as to not drop it on some state updates
- Conflate a state event's state key with a connection state's name,
  which was already the case in practice

* Refactor validateState

* Drop explicit any

Better to infer the type instead

* Always validate transformation fn

* Fix test

* Add changelog

* Fix disposal, validation, and printing

* Fix transformation error string formatting

Also refactor similar code

* Let invalid transformations run & fail

instead of pretending that one was never set

* Restore transformation timeout time

* Don't execute transformation fn when validating it

Instead, only compile it

* Revert unrelated changes

---------

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2023-09-25 14:55:15 +00:00
Andrew Ferrazzutti
d2ae7dfb18
Update eslint (#815)
* Update eslint

* Revert new lint errors back to warnings

* changelog
2023-09-11 13:54:52 +00:00
Will Hunt
38c34b671b
Update bot-sdk to 0.6.7-element-1 (#814)
* Update to bot-sdk 0.6.7-1

* Update cargo dependencies

* changelog
2023-09-11 13:37:17 +00:00
Half-Shot
b7d66177de 4.4.1 2023-07-31 10:18:01 +01:00
Half-Shot
a55cb58a9e 4.4.0
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEYycU2dLYoNt0fu0PRCA+X3+iSR4FAmScWV8ACgkQRCA+X3+i
 SR5wvRAAh2BUGpvu4/6Vg3YSrH5yBPZerNGIyKfPiiNknE86EpCY1ZCM85X9AEJW
 i4KD+pbxDAftTmonunTe1wpkJAQ2ZyDbCtWQa8M/2hPtpgdWitCJusNPmcTd47He
 WWtnsHLGTuGCTcOdYaM1hhuXA6TBouemOHdjBMgXOpHo0oHUAYjrOA0VKzIcnTh7
 z2RvaY3j1E1bLzOz4K9MH4mtt7HilmKnBjmdvgel6NFm54SQuTBLKiTeRVfWlUWB
 T3RE7L4ruYlRn4vOSOJHt3FX6cNm5MrUINjTith8rfg1UoM9oIYFMsRdpHgGL5Pg
 vl5f3x2uOQmpydi/HcwQhPO4EiCNeVzclvKq54LLkt3jrp/CRuMgF0FxGBjkjBae
 84h/evn5Ezzn0ix3ia+EMfbvVq6qahQ/sxlwOm71o0wT/aJYBlLkhoarItYEjWGJ
 9hmXhg2TpYAIVkkar6VnsLKzcp3zLIQatxFD4mwUPiOMgsllb61no3PCTauOgxoH
 gfsHGFfQRR47pZ6ydhDJk0tQ0F0kYk9YFrFp5ZyS141hagdpGLWsmVzl87+dlpcR
 LWOL+aMwRT2BcTyK8Q0ErzyYJQ5dhkKRLC6qtrORbOFOewnRf1nrzdQavRaZ9ofP
 BA4q5PrdYqJRUBqjOdGzrQ3XOmXnZMdvjCetW5C9nFNbxzOPDg8=
 =WZ1J
 -----END PGP SIGNATURE-----

Merge tag '4.4.0'

4.4.0
2023-07-31 10:17:27 +01:00
Will Hunt
fa8023707c
Update matrix-appservice-bridge to 9.0.1 (#800) 2023-07-31 09:02:55 +00:00
Will Hunt
e41c9a8dd2 4.4.0 2023-06-28 17:01:19 +01:00
Will Hunt
3217b9eecf
Performance improvements to Feeds (#786)
* Various smaller changes

* Drop account data entirely

* Use max feed items

* Commit known working improvements

* Better status handlingh

* changelog

* Update changelog

* Add a note on Redis.

* Add proper HTTP tests

* Linty lint

* Tweaks

* New metrics woah

* Tweaks
2023-06-28 15:29:54 +00:00
Tadeusz Sośnierz
2173a8ccb9 4.3.0 2023-06-19 15:47:50 +02:00
dependabot[bot]
93400c72db
Bump vite from 4.1.4 to 4.1.5 (#772)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.1.4 to 4.1.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v4.1.5/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.1.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 11:05:40 +01:00
Justin Carlson
584f1d092f 4.2.0 2023-06-05 12:51:46 -04:00
Tadeusz Sośnierz
9e5b569723 4.1.0 2023-05-24 15:21:44 +02:00
Will Hunt
466ab6d5e3
Allow sanitized HTML from feed summaries (#738)
* Add a function to sanitize html output

* Allow some HTML in feed messages

* Update cargo

* changelog

* lint

* Saved a ton of code by just using ruma.

* Reverse order of rs:apply

* Lint

* Update src/Connections/FeedConnection.ts

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>

* Apply suggestions from code review

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>

* Add a test for partial html

---------

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2023-05-18 18:59:58 +00:00
Andrew Ferrazzutti
1df4f7928a
Update eslint (#760)
* Update eslint

* changelog
2023-05-18 18:53:28 +00:00
Will Hunt
b9313cd140
Add Sentry support (#754)
* Add sentry support

* Add basic listening for errors on express.

* Additional event types

* Add a default config

* changelog

* Improve wording

* Add docs
2023-05-18 11:05:23 +00:00
Will Hunt
d772a4050c
Run Clippy in CI (#753)
* Clippy fixes

* Refactor to make rust linter happy

* Enable warnings since we have none

* Tidy up tests

* changelog
2023-05-18 11:38:59 +01:00
dependabot[bot]
1c692bea8f
Bump vm2 from 3.9.17 to 3.9.18 (#751)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.17 to 3.9.18.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.17...3.9.18)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-17 15:57:36 +01:00
Andrew Ferrazzutti
2110e88210 4.0.0 2023-04-27 21:58:32 +09:00
Will Hunt
c864dc6b42
Support node 20, drop node 16 (#724)
* Support node 20, drop node 16

* Update workflow versions

* Update backendmeta

* Use version file

* Update packages

* Yarn updates

* Changelog

* Fix glibc compatibility

* Target es2021

Without this, CI tests fail

* Drop unused metrics parameter

* Revert "Drop unused metrics parameter"

This reverts commit 4d874549bcec3dea0d6941215ac5c4f4707966ac.

* Make a note about broken support

---------

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2023-04-27 12:24:06 +01:00
Will Hunt
01159fa0d1
Update yaml dependency (#728)
* Update yaml dependency

* changelog
2023-04-25 15:52:57 +00:00
Will Hunt
43176adf7a
Fallback to parsing feeds as atom format if rss format fails. (#721)
* Support atom feeds in rust parser

* Add an apply linting command

* Add changelog

* Fixup

* Add tests for atom feeds + remove redundant code

* Remove unused rss-parser

* Tests for all formats.

* Move hashing logic into rust to save cross-context calls

* lint my rust

* Use a String::from

* Ensure guids are not repeated
2023-04-25 15:45:55 +00:00
Andrew Ferrazzutti
f29fac7584
Allow usage of the SQLite-based crypto store (#714)
* Allow usage of the SQLite-based crypto store

Signed-off-by: Andrew Ferrazzutti <andrewf@element.io>

* Add changelog

* Log when crypto storage is initialized

* Add yarn script for resetting crypto state

Also document its usage & when it may be necessary to use it.

* Minor style improvements

- add trailing semicolons
- remove redundant `Promise.resolve`s

* Change logging in crypto reset script

- Move error object to parameter
- Rename logger

* Add method to close the Redis store

and call it to let the process exit cleanly

* Update matrix-bot-sdk

Use release with SQLite crypto store support

---------

Signed-off-by: Andrew Ferrazzutti <andrewf@element.io>
2023-04-21 23:18:27 +09:00
dependabot[bot]
9baa21bb30
Bump vm2 from 3.9.16 to 3.9.17 (#720)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.16 to 3.9.17.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.16...3.9.17)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-21 10:20:59 +01:00
dependabot[bot]
97ff9f2e3a
Bump vm2 from 3.9.15 to 3.9.16 (#713)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.15 to 3.9.16.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.15...3.9.16)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 00:03:22 +01:00
dependabot[bot]
a634cdeed8
Bump xml2js from 0.4.23 to 0.5.0 (#712)
Bumps [xml2js](https://github.com/Leonidas-from-XIV/node-xml2js) from 0.4.23 to 0.5.0.
- [Release notes](https://github.com/Leonidas-from-XIV/node-xml2js/releases)
- [Commits](https://github.com/Leonidas-from-XIV/node-xml2js/commits/0.5.0)

---
updated-dependencies:
- dependency-name: xml2js
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-12 09:52:17 +01:00
dependabot[bot]
0b555b8073
Bump vm2 from 3.9.11 to 3.9.15 (#705)
* Bump vm2 from 3.9.11 to 3.9.15

Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.11 to 3.9.15.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.11...3.9.15)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Create 705.misc

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Will Hunt <will@half-shot.uk>
2023-04-09 18:06:00 +00:00
Tadeusz Sośnierz
81b0bf57fe 3.2.0 2023-04-04 18:18:57 +02:00
Half-Shot
e2226d6748 3.1.1 2023-03-28 15:58:16 +01:00
Half-Shot
64ffab4be8 3.1.0 2023-03-28 11:26:19 +01:00
Justin Carlson
dd76b9dbcd 3.0.1 2023-03-21 08:51:32 -04:00
Half-Shot
e6f51bf2de 3.0.0 2023-03-17 17:29:46 +00:00
Will Hunt
55529d7128
Add support for OAuth login to GitHub via widget (including adding new installations) (#661)
* WIP

* Update vite

* Add oauth landing page

* Add API support for GitHub oauthing

* Remove console.logs

* Add support for logging and and out of GitHub

* Add bridge API methods

* Add base link styling

* Sugar syntax main get

* Update vite

* changelog

* Review changes

* Use instance to match UI

* lint

---------

Co-authored-by: Justin Carlson <justinc@element.io>
2023-03-14 10:50:46 +00:00
Will Hunt
80ccb0c877
Use replace uuid package with crypto.randomUUID (#640)
* Use randomUUID over uuid

* changelog

* Fix mess
2023-02-10 11:14:21 +00:00
Half-Shot
e846f3f19b 2.7.0 2023-01-20 13:27:25 +00:00
Will Hunt
88273a249b
New project picker component for room configs (#624)
* Implement new Dropdown component

* Apply field styling to search too

* General improvements to GitLabClient

* Add support for storing small base64 files in the storage provider

* Refactor GitLab repo to use new connection provider

* Start trying to deduplicate code

* Begin refactor to support ConnectionSearch

* Add support for GitHub searching

* Refactor GitLab/GitHub into components

* Port Jira to ConnectionSearch

* Drop unused functions

* Hide connection list if no connections are present.

* Cleanups

* Cleanup abort controller

* changelog

* Update JIRA for search powers
2023-01-20 13:16:11 +00:00
Half-Shot
b08ca20803 2.6.1 2023-01-16 16:08:28 +00:00
Half-Shot
66d5abb5d8 2.6.0 2023-01-16 16:07:43 +00:00
Will Hunt
a5ea88578c
Decrease connection creation concurrency when starting up (#614)
* Add a queue system for loading connections on startup

* Retry state requests

* Add ability to retry on some matrix failures

* Add the queue

* changelog

* Add docstring
2023-01-09 17:57:24 +00:00
Will Hunt
abe4fefda4
Mark encryption as experimental (#610)
* Update config to mark encryption support as experimental

* Mention encryption as experimental in docs

* changelog

* Hide empty values from config

* transmuate snakes into camels
2023-01-05 16:25:48 +00:00
Will Hunt
c962f17a91
Add support for native e2ee (#299)
* Add support for native e2ee

* Various temps to coax it into working

* Formatting nitpicks

* Include stable registration config key for msc2409

* Update default config with encryption options

* Manage admin rooms with bot-sdk DMs

This also enables encryption for new admin rooms when appropriate.

* Update config comments for encryption settings

- Add comment to clarify Redis (the `queue` section) must be configured
  in order for encryption to work
- Mention that the `encryption` section is optional, and omitting it
  will disable encryption support

* Update docs for encryption support

* Add changelog

* Add to docs some notes about encryption state

* Move all post-join logic to onRoomJoin

* Block post-join actions on crypto setup

Requires https://github.com/turt2live/matrix-bot-sdk/pull/269

* Fix linter error

* Update encryption docs and changelog

- Mention that worker mode isn't supported with encryption yet
- Mention removal of Pantalaimon-based encryption

* Update worker docs with encryption config notice

* Share main appservice config with feed bots

This is required to safely enable encryption for the bots that post
GenericHook messages.

* Make slight clarification for queue config

* Minor fixes

* Block post-join actions on feed bot crypto setup

Same as a9e6e11d but for the sub-bots that post GenericHook messages.

* Get joined rooms from intent instead of bot

This refreshes the list of known rooms for crypto events.

* Use Element fork of bot-sdk for crypto fixes

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2022-12-09 10:25:36 -05:00
dependabot[bot]
423dbb11fd
Bump express from 4.17.2 to 4.17.3 (#590)
Bumps [express](https://github.com/expressjs/express) from 4.17.2 to 4.17.3.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.2...4.17.3)

---
updated-dependencies:
- dependency-name: express
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 01:52:35 +00:00
Half-Shot
231597c964 2.5.0 2022-12-02 13:47:18 +00:00
Andrew Ferrazzutti
e178d67781 2.4.0 2022-10-21 11:32:25 -04:00
Will Hunt
db3caeae03 Use matrix-appservice-bridge logging (#488)
* Use matrix-appservice-bridge logger

* Update to be in line with bridge sdk

* Update packages

* changelog

* nits
2022-10-06 09:30:31 +01:00
Andrew Ferrazzutti
14747bb92e 2.3.0 2022-10-05 04:13:12 -04:00
dependabot[bot]
426f971cb9
Bump vm2 from 3.9.6 to 3.9.11 (#498)
Bumps [vm2](https://github.com/patriksimek/vm2) from 3.9.6 to 3.9.11.
- [Release notes](https://github.com/patriksimek/vm2/releases)
- [Changelog](https://github.com/patriksimek/vm2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/patriksimek/vm2/compare/3.9.6...3.9.11)

---
updated-dependencies:
- dependency-name: vm2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-29 14:18:03 +01:00
Half-Shot
2a093562ce 2.2.0 2022-09-16 14:30:57 +01:00