Commit graph

1594 commits

Author SHA1 Message Date
Kerry
158e42f764
Unit test MessageActionBar (#8732)
* test most basic paths in messageactionbar

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tidy

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add rtl

* add code style note about using rtl

Signed-off-by: Kerry Archibald <kerrya@element.io>

* downgrade to rtl 12

* use rtl for MessageActionBar test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* try mocking settingsstore for ci only failure

Signed-off-by: Kerry Archibald <kerrya@element.io>

* mock setValue too

Signed-off-by: Kerry Archibald <kerrya@element.io>

* uupdate lockfile

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-06-02 10:25:56 +02:00
RiotRobot
afeea12167 v3.46.0-rc.1 2022-05-31 11:41:44 +01:00
RiotRobot
7ca3b6bb13 Upgrade matrix-js-sdk to 18.1.0-rc.1 2022-05-31 11:35:17 +01:00
Kerry
f742e3a17d
matrix-mock-request 2.0 (#8717) 2022-05-30 12:19:13 +00:00
Michael Telatynski
f3f14afbbf
Move spaces tests from Puppeteer to Cypress (#8645)
* Move spaces tests from Puppeteer to Cypress

* Add missing fixture

* Tweak synapsedocker to not double error on a docker failure

* Fix space hierarchy loading race condition

Fixes https://github.com/matrix-org/element-web-rageshakes/issues/10345

* Fix race condition when creating public space with url update code

* Try Electron once more due to perms issues around clipboard

* Try set browser permissions properly

* Try to enable clipboard another way

* Try electron again

* Try electron again again

* Switch to built-in cypress feature for file uploads

* Mock clipboard instead

* TMPDIR ftw?

* uid:gid pls

* Clipboard tests can now run on any browser due to mocking

* Test Enter as well as button for space creation

* Make the test actually work

* Update cypress/support/util.ts

Co-authored-by: Eric Eastwood <erice@element.io>

Co-authored-by: Eric Eastwood <erice@element.io>
2022-05-26 10:19:00 +01:00
RiotRobot
d214387c88 Reset matrix-js-sdk back to develop branch 2022-05-24 13:04:54 +01:00
RiotRobot
b0a6c216b7 Resetting package fields for development 2022-05-24 13:03:38 +01:00
RiotRobot
b5fdf11a03 v3.45.0 2022-05-24 12:57:53 +01:00
RiotRobot
076598ca85 Upgrade matrix-js-sdk to 18.0.0 2022-05-24 12:41:56 +01:00
RiotRobot
17cdf58d2d v3.45.0-rc.3 2022-05-20 11:00:07 +01:00
RiotRobot
3c2e9c364a Upgrade matrix-js-sdk to 18.0.0-rc.2 2022-05-20 10:58:03 +01:00
RiotRobot
c0bac337de v3.45.0-rc.2 2022-05-17 19:18:54 +01:00
RiotRobot
ca157db9d8 v3.45.0-rc.1 2022-05-17 19:13:51 +01:00
RiotRobot
a68032760e Upgrade matrix-js-sdk to 18.0.0-rc.1 2022-05-17 18:32:12 +01:00
Michael Telatynski
d9b7e0721c
Add visual tests using Percy in Cypress (#8610)
* Add basic Percy tests

* Run Percy in CI

* Fix snapshot timing

* Fix bad selector

* Hide another bit of dynamic text

* Add docs
2022-05-17 15:16:14 +00:00
Michael Telatynski
ad4d3f9a88
Move threads e2e tests over to cypress (#8501)
* Add non-consent (default) Synapse template

* Add consent test

* Add create room test

* Stash work

* Initial threads tests

* fix

* Delete old threads e2e tests, plan new ones

* Fix typed s'more

* Try something else

* specify d.ts

* Fix types once and for all?

* Fix the consent tests

* Iterate threads test harness

* Fix dispatcher types

* Iterate threads test

* fix typing

* Alternative import attempt

* let it break let it break let it break

* Tweak types

* Stash

* delint and update docs

* null-guard scrollIntoView

* Iterate threads test

* Apply suggestions from code review
2022-05-10 17:09:31 +00:00
RiotRobot
38f34c3d6a Reset matrix-js-sdk back to develop branch 2022-05-10 15:07:41 +01:00
RiotRobot
6396d26d21 Resetting package fields for development 2022-05-10 15:06:06 +01:00
RiotRobot
3d2866917a Merge branch 'master' into develop 2022-05-10 15:03:45 +01:00
RiotRobot
6d0e44cfc1 v3.44.0 2022-05-10 14:59:47 +01:00
RiotRobot
ee47cb8024 Upgrade matrix-js-sdk to 17.2.0 2022-05-10 14:54:47 +01:00
Janne Mareike Koschinski
e05a3e6446
fix: update matrix-analytics-events (#8543) 2022-05-09 14:18:15 +00:00
RiotRobot
873e9726fd v3.44.0-rc.2 2022-05-06 17:13:29 +01:00
Kerry
2c19d286ed
Eslint - require copyright header rule (#8514)
* bump eslint plugin to 0.5.2

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add rule

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add missing copyright headers

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix comment order

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-05-06 09:09:28 +00:00
Michael Telatynski
9c8a887361 Pin linkify version due to breaking changes 2022-05-03 23:35:08 +01:00
RiotRobot
9e55dda8ca v3.44.0-rc.1 2022-05-03 15:28:14 +01:00
RiotRobot
fab2a49a53 Upgrade matrix-js-sdk to 17.2.0-rc.1 2022-05-03 15:26:00 +01:00
Michael Telatynski
7477a2df7d
Switch coverage over to SonarQube (#8463) 2022-05-02 21:34:31 +01:00
Germain
45180111d0
Update analytics SDK (#8437) 2022-04-28 12:19:00 +01:00
Germain
1ed68a718f
Add new user signup event tracking in PostHog (#8412) 2022-04-28 11:46:02 +01:00
Janne Mareike Koschinski
9b0ab3321c
Add opt-in analytics to onboarding tasks (#8409)
* Add interaction tracking to explore room, send DM and create room events in onboarding view and elsewhere
* Update matrix analytics events dependency
2022-04-26 13:31:53 +02:00
RiotRobot
c7c0fdbcc5 Reset matrix-js-sdk back to develop branch 2022-04-26 12:15:33 +01:00
RiotRobot
961565967e v3.43.0 2022-04-26 11:37:40 +01:00
RiotRobot
bff1a3b088 Upgrade matrix-js-sdk to 17.1.0 2022-04-26 11:36:14 +01:00
RiotRobot
db89816db9 v3.43.0-rc.1 2022-04-19 14:55:24 +01:00
RiotRobot
1da1460baf Upgrade matrix-js-sdk to 17.1.0-rc.1 2022-04-19 14:54:05 +01:00
David Baker
b8013fc52a
Add a Cypress Test 🌲 (#8295)
* A first, maybe working cypress test

Plus cypress plugins to manage synapses in docker containers

* Fix yaml

* This file is important

* try & find where it's put the artifact

* Download artifact to a directory

* pics or it didn't happen

* Add conditional, otherwise no artifacts on failure...

* Try increasing timeout

also actually give the test a name

* Try in chrome

* Get docker logs to see why it's failing

also document the chrome setting

* Try changing mode on homeserver.yaml

* debug

* More debugging

* more file permissions debugging

* ARGH

* more debug

* sigh

* Eugh, that's not how arguments work

* Add the option to really allow open registration

and remove debug logging / comment fixes

* failure to yaml

* Upload docker logs as artifacts

and temporarily remove contional to test

* Put the conditional back

* Upgrade types in end to end tests

to be compatible with fs-extra types

* Try reducing timeout a bit

also make password more... sensible

* Hex is not octal

* Remove file mode

Seems to be unnecessary since the signing key is perfectly fine

* Give the log files extensions

* Rename workflow file now it also does tests

* Add cypress scripts

* copyright headers

* Use ? operator

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Use develop synapse image

* Tidy up any remaining synapses after each spec run

Also:
 * Move the synapseStart / synapseStop functions out to the top level
   so they can be reused
 * Add a tsconfig file
 * Give the containers names

* Don't upload video on test pass

We don't upload it anyway so tell cypress not to so it can not
bother encoding them

* Enable linting on cypress files

and fix existing lint errors

* Type check cypress files

and make it pass the type checks, specifically:
 * Upgrade sinon fake timers to a version that has the right types
 * Set module resolution
 * Type check cypress files separately

* Rename workflow file again

Probably better to just call it an element web build

* Don't plus + characters in container name

* Fix yaml

* Stream logs to file

* Add note to end to end tester to sya what's been ported

* Put docker rm in finally block

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-04-14 10:41:58 +01:00
RiotRobot
42dbe14f36 Reset matrix-js-sdk back to develop branch 2022-04-12 10:38:05 +01:00
RiotRobot
28512f20d3 Resetting package fields for development 2022-04-12 10:37:54 +01:00
RiotRobot
336492275a Merge branch 'master' into develop 2022-04-12 10:36:00 +01:00
RiotRobot
5f356093fd v3.42.3 2022-04-12 10:33:26 +01:00
RiotRobot
7844c3ac8d Upgrade matrix-js-sdk to 17.0.0 2022-04-12 10:31:47 +01:00
David Baker
285dc25b3e
Add a test for URL previews being disabled in e2e rooms (#8270)
* Add a test for URL previews being disabled in e2e rooms

Regression test for https://github.com/matrix-org/matrix-react-sdk/pull/8227

* Fix the types
2022-04-08 18:32:35 +01:00
Hugh Nimmo-Smith
457fc542da
Replace browser-encrypt-attachment with matrix-encrypt-attachment (#7795)
* Replace browser-encrypt-attachment with matrix-encrypt-attachment

matrix-encrypt-attachment is maintained and includes TS typings

* Upgrade matrix-encrypt-attachment to latest with default exports
2022-04-05 11:29:27 -06:00
RiotRobot
e4df547c31 v3.42.2-rc.1 2022-04-05 18:13:45 +01:00
RiotRobot
7571552836 Upgrade matrix-js-sdk to 16.0.2-rc.1 2022-04-05 18:12:37 +01:00
Travis Ralston
a6564d9ab9 Step 14: Remove reskindex 2022-03-28 15:30:30 -06:00
Travis Ralston
15b84bd9a6 Step 2: Remove the decorator 2022-03-28 14:02:31 -06:00
RiotRobot
2520d81784 Reset matrix-js-sdk back to develop branch 2022-03-28 16:19:31 +01:00
RiotRobot
7a130d2eb7 Resetting package fields for development 2022-03-28 16:19:20 +01:00
RiotRobot
7507d4f43d Merge branch 'master' into develop 2022-03-28 16:19:20 +01:00
RiotRobot
cc296ef3da v3.42.1 2022-03-28 16:17:36 +01:00
RiotRobot
eb51ba1d2a Upgrade matrix-js-sdk to 16.0.1 2022-03-28 16:16:39 +01:00
Michael Telatynski
bc01efa124
Improve handling of animated GIF and WEBP images (#8153) 2022-03-25 16:31:40 +00:00
Travis Ralston
f92fcb7945
Fix stylelint on Windows (#8132) 2022-03-23 12:23:35 -06:00
Šimon Brandner
3534e9b6ce
Upgrade emojibase and twemoji (#7286)
Co-authored-by: Tulir Asokan <tulir@maunium.net>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-03-23 17:08:34 +00:00
RiotRobot
00d32482fa v3.42.1-rc.1 2022-03-22 21:48:22 +00:00
RiotRobot
cbb704fb24 Upgrade matrix-js-sdk to 16.0.1-rc.1 2022-03-22 21:46:47 +00:00
Michael Telatynski
7a22682a80
Install typings for escape-html package (#8098) 2022-03-21 17:02:22 +00:00
RiotRobot
2778fd135e Reset matrix-js-sdk back to develop branch 2022-03-15 14:34:00 +00:00
RiotRobot
2ed18a1d85 Resetting package fields for development 2022-03-15 14:33:47 +00:00
RiotRobot
d592537a3a Merge branch 'master' into develop 2022-03-15 14:33:46 +00:00
RiotRobot
ac3a907238 v3.42.0 2022-03-15 14:31:45 +00:00
RiotRobot
ddb3f57470 Upgrade matrix-js-sdk to 16.0.0 2022-03-15 14:26:48 +00:00
Andy Balaam
c89c2253fd
Add test coverage reporting (#8009) 2022-03-10 13:17:01 +00:00
RiotRobot
e485907443 v3.42.0-rc.1 2022-03-08 14:54:35 +00:00
RiotRobot
6dbcf837e5 Upgrade matrix-js-sdk to 16.0.0-rc.1 2022-03-08 14:53:26 +00:00
Kerry
547144a565
Jest mock for svgr icons (#7941)
* add svg mock

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use same mock string as imageMock

Signed-off-by: Kerry Archibald <kerrya@element.io>

* newline

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-02 12:05:50 +00:00
RiotRobot
b7787eaf2e Merge branch 'master' into develop 2022-03-01 11:57:55 +00:00
RiotRobot
915d8385d4 v3.41.1 2022-03-01 11:52:59 +00:00
RiotRobot
b02d5ecb97 Merge branch 'master' into develop 2022-02-28 17:01:22 +00:00
RiotRobot
bf2bb26cda v3.41.0 2022-02-28 16:51:08 +00:00
RiotRobot
9feae296f4 Upgrade matrix-js-sdk to 15.6.0 2022-02-28 16:48:46 +00:00
Michael Telatynski
75e41b4c1c
Basic threads analytics into Posthog MVP (#7871) 2022-02-28 14:11:14 +00:00
Kerry
6e143c313e
eslint to 8.9.0 (#7889)
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-24 15:54:06 +01:00
RiotRobot
4dccf9e98f v3.41.0-rc.1 2022-02-22 13:49:09 +00:00
RiotRobot
a793815aa2 Upgrade matrix-js-sdk to 15.6.0-rc.1 2022-02-22 13:39:33 +00:00
Andy Balaam
eed8db4c26 Bump matrix-events-sdk to 0.0.1-beta.7 (#7837)
* Bump matrix-events-sdk to 0.0.1-beta.7

* Update lockfile
2022-02-22 13:00:03 +00:00
Andy Balaam
213b32bf14
Bump matrix-events-sdk to 0.0.1-beta.7 (#7837)
* Bump matrix-events-sdk to 0.0.1-beta.7

* Update lockfile
2022-02-22 11:54:56 +00:00
Kerry
9db59d75b9
Bump react-focus-lock (#7858)
* react-focus-lock to 2.5.1

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use enzyme in ASSD test so focus lock finds active element

Signed-off-by: Kerry Archibald <kerrya@element.io>

* findById and flushPromises to test utils

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-21 17:09:01 +00:00
Michael Telatynski
38a547b5d0
Remove ResizeObserver Polyfill (#7844) 2022-02-18 13:51:27 +00:00
Michael Telatynski
658590e5bc
More posthog tracking around joining rooms and room search (#7807) 2022-02-17 18:03:27 +00:00
RiotRobot
c19aa957b6 Merge branch 'master' into develop 2022-02-17 12:08:14 +00:00
RiotRobot
5892d8b733 v3.40.1 2022-02-17 11:55:35 +00:00
RiotRobot
da6b6b3bc0 Upgrade matrix-js-sdk to 15.5.2 2022-02-17 11:52:34 +00:00
Travis Ralston
aba61fa390 Revert "Support refresh tokens (#7802)"
This reverts commit 839593412c.
2022-02-16 12:32:38 -07:00
Travis Ralston
839593412c
Support refresh tokens (#7802)
MSC: https://github.com/matrix-org/matrix-doc/pull/2918
Fixes https://github.com/vector-im/element-web/issues/18698
Fixes https://github.com/vector-im/element-web/issues/20648
**Requires https://github.com/matrix-org/matrix-js-sdk/pull/2178**

**Note**: There's a lot of logging in this PR. That is intentional to ensure that if/when something goes wrong we can chase the exact code path. It does not log any tokens - just where the code is going. Overall, it should be fairly low volume spam (and can be relaxed at a later date).

----

This approach uses indexeddb (through a mutex library) to manage which tab actually triggers the refresh, preventing issues where multiple tabs try to update the token. If multiple tabs update the token then the server might consider the account hacked and hard logout all the tokens.

If for some reason the timer code gets it wrong, or the user has been offline for too long and the token can't be refreshed, they should be sent to a soft logout screen by the server. This will retain the user's encryption state - they simply need to reauthenticate to get an active access token again.

This additionally contains a change to fix soft logout not working, per the issue links above.

Of interest may be the IPC approach which was ultimately declined in favour of this change instead: https://github.com/matrix-org/matrix-react-sdk/pull/7803
2022-02-15 20:16:49 +00:00
Michael Telatynski
cfa6e266cd
Wire up new fields on the ViewRoom posthog event and more interactions (#7787) 2022-02-14 19:31:13 +00:00
Travis Ralston
9141225a79
Add jest-mock to dependencies (#7800)
It's being used by the chat export test, but is not listed as a dependency.

If we rely on it, we should rely on it.
2022-02-14 19:29:08 +00:00
RiotRobot
9b3af6c493 Reset back to develop branch 2022-02-14 15:41:31 +00:00
RiotRobot
8c62945096 Resetting package fields for development 2022-02-14 15:39:36 +00:00
RiotRobot
0304d3245c Merge branch 'master' into develop 2022-02-14 15:39:33 +00:00
RiotRobot
f7e6250599 v3.40.0 2022-02-14 15:23:26 +00:00
RiotRobot
7558568158 Upgrade matrix-js-sdk to 15.5.1 2022-02-14 15:19:06 +00:00
Michael Telatynski
87ca70edb1
Switch to web-specific screens and $pageview event (#7777) 2022-02-10 14:38:31 +00:00
Michael Telatynski
fd832488f1
Update slash command posthog enum (#7776) 2022-02-10 13:11:10 +00:00
Michael Telatynski
f6565bfbc8
Send how many favorited rooms a user has to Posthog (#7772) 2022-02-10 10:02:34 +00:00
Michael Telatynski
5620b83d34
Wire up more Posthog tracking (#7689) 2022-02-09 14:25:58 +00:00
RiotRobot
db34ff8174 v3.40.0-rc.2 2022-02-09 10:27:18 +00:00
Kerry
ebb1feee50
Basic script to create react component with test and style files (#7757)
* basically working script

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add test template

* add skinned-sdk import to test temp

* remove extra import

Signed-off-by: Kerry Archibald <kerrya@element.io>

* comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-09 10:33:21 +01:00