Travis Ralston
1c9dbbbb19
[BREAKING] Convert RoomState's stored state map to a real map
...
Though the dictionary format works fine, it's slow. Access times are around the 1ms range for rooms like HQ, which doesn't seem like much, but when compared to the Map's access time of 0.05ms it's slow.
Converting things to a map means we lose index access and have to instead use `.keys()` and `.values()`, both of which return iterables and not arrays. Even doing the `Array.from()` conversion we see times in the 0.05ms range. This is also what makes this a breaking change.
Memory-wise there does not appear to be any measurable impact for a large account.
2020-07-08 22:28:14 -06:00
Bruno Windels
68c7273f56
Merge pull request #1414 from matrix-org/bwindels/fixbootstraperror
...
Ask general crypto callbacks for 4S privkey if operation adapter doesn't have it yet
2020-06-26 12:53:11 +00:00
Bruno Windels
8b56ff4eff
ask general crypto callbacks for 4S privkey if operation adapter doesn't
2020-06-26 10:59:04 +02:00
Michael Telatynski
8134eedd93
Merge pull request #1413 from matrix-org/t3chguy/hf
...
Fix ICreateClientOpts missing idBaseUrl
2020-06-25 23:34:31 +01:00
Michael Telatynski
a87ae770cc
Fix ICreateClientOpts missing idBaseUrl
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-06-25 21:58:15 +01:00
J. Ryan Stinnett
10bdd63762
Increase max event listeners for rooms
...
It's common to add listeners for every displayed Matrix event, so this increases
the default to remove some log noise.
2020-06-25 13:37:35 +01:00
Hubert Chathi
69dc518c2c
Merge pull request #1406 from matrix-org/uhoreg/distrust_backup
...
Don't trust keys megolm received from backup for verifying the sender
2020-06-23 15:37:27 -04:00
Hubert Chathi
fa1dddf06c
apply feedback from review
2020-06-23 15:20:41 -04:00
Travis Ralston
dbe2f5e4db
Fix lint
2020-06-22 10:24:02 -06:00
Travis Ralston
f27791b7de
Raise the last known account data / state event for an update
...
This is to better support the react-sdk in trying to identify what actually changed in settings instead of re-firing everything.
Overall this change differs from `prev_content` semantics as it's the last known *stored* event, not whatever the server thinks may or may not have changed.
2020-06-22 10:17:42 -06:00
Hubert Chathi
cfca1c7b06
add unit tests and improve docs
2020-06-19 19:27:29 -04:00
Hubert Chathi
fb7a67025f
add information function to return information about event encryption
2020-06-18 21:43:50 -04:00
Bruno Windels
8a6cd48b8e
Merge pull request #1380 from matrix-org/bwindels/bootstrap-operation
...
Isolate encryption bootstrap side-effects
2020-06-18 14:29:35 +00:00
David Baker
e21d1f539d
Merge pull request #1405 from matrix-org/dbkr/fix_verification_race
...
Add method to get current in-flight to-device requests
2020-06-18 15:10:58 +01:00
Bruno Windels
f62049559c
make authUploadDeviceSigningKeys required, as default is only used by tests
...
and make tests pass {} instead of undefined for authDict as otherwise
we'll enter in the "obtain flows" mode and not add the keys to the builder
2020-06-18 15:06:56 +02:00
Bruno Windels
1fe9dd03a3
apparently we call the callback also to obtain flows, so handle that
2020-06-18 14:39:16 +02:00
Bruno Windels
c5eb290e66
remove resetCrossSigningKeys
...
it was only used by the bootstrap method in js-sdk,
and was not used in react-sdk either.
This is a breaking change, in case anything other than react-sdk
was using this.
2020-06-17 15:34:30 +02:00
Bruno Windels
d3b2c8246d
remove try/finally as we don't monkey patch the callbacks anymore
2020-06-17 15:34:02 +02:00
Bruno Windels
c11796af4b
don't fix old key when we're force-creating a new one
2020-06-17 15:29:21 +02:00
Bruno Windels
8591815d66
add comment
2020-06-17 15:26:30 +02:00
Bruno Windels
b82870adb2
move key backup bootstrap/migration over to builder
2020-06-17 15:25:42 +02:00
Bruno Windels
3c5b304b6b
move cross-signing bootstrapping over to builder
2020-06-17 15:22:24 +02:00
Bruno Windels
f656698061
fixup: secret storage indenting
2020-06-17 15:14:26 +02:00
Bruno Windels
d4b4bc5031
move 4S creation to operation
2020-06-17 15:06:41 +02:00
Bruno Windels
9bcf33b6d3
Add EncryptionSetupBuilder to capture bootstrapping side-effects
2020-06-17 14:55:19 +02:00
Hubert Chathi
fa550e8f03
fix jsdoc
2020-06-16 12:03:29 -04:00
Hubert Chathi
2d73564eba
apply feedback from review, and improve js docs
2020-06-16 11:38:36 -04:00
David Baker
1bd80247fd
Better variable name
2020-06-16 14:27:26 +01:00
Michael Telatynski
aa2d0d9a08
Merge pull request #1404 from matrix-org/t3chguy/push-rules-device
...
Remove support for unspecced device-specific push rules
2020-06-16 10:26:08 +01:00
Hubert Chathi
fd126b8563
lint
2020-06-15 17:53:37 -04:00
Hubert Chathi
bc97e7a5ea
don't trust keys megolm received from backup for verifying the sender
2020-06-15 17:47:25 -04:00
David Baker
3dece4f46b
Add method to get current in-flight to-device requests
2020-06-15 17:38:50 +01:00
Michael Telatynski
be05452c70
Fix tests
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-06-14 13:15:28 +01:00
Michael Telatynski
583650cf7d
Remove support for unspecced device-specific push rules
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-06-13 14:49:49 +01:00
Michael Telatynski
ace8a787b4
undo that because {} sux
2020-06-12 20:06:58 +01:00
Michael Telatynski
ed2ea9ac8e
clean up
2020-06-12 20:00:08 +01:00
Michael Telatynski
8d09a4abe6
Use existing session id for fetching flows as to not get a new session id
2020-06-12 19:50:38 +01:00
Bruno Windels
013fbb87a7
Merge pull request #1398 from matrix-org/bwindels/backupformatbug
...
Bring back backup key format migration
2020-06-05 13:25:00 +00:00
Bruno Windels
73764d23dc
take into account key can be an object now
2020-06-05 13:38:46 +02:00
Bruno Windels
8f62703bf2
fix type check in migration code
2020-06-05 13:38:15 +02:00
Bruno Windels
6dedae2e4d
Revert "remove key backup format migration"
...
This reverts commit 8d81240c58 .
2020-06-05 11:23:04 +02:00
Bruno Windels
0a790b2ae3
Merge pull request #1313 from matrix-org/bwindels/throwifcantdecrypt4s
...
Fix: more informative error message when we cant find a key to decrypt with
2020-06-05 08:30:43 +00:00
Michael Telatynski
c525a19df5
Merge pull request #1394 from matrix-org/t3chguy/e2eedefault
...
Add js-sdk mechanism for polling client well-known for config
2020-06-03 10:47:10 +01:00
Michael Telatynski
a987a31667
Merge pull request #1388 from matrix-org/dbkr/timeouts
...
Fix verification request timeouts to match spec
2020-06-03 10:41:15 +01:00
Michael Telatynski
10329c3436
rename _clientWellKnownInterval to _clientWellKnownIntervalID
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-06-03 10:26:46 +01:00
Travis Ralston
29f10bcd44
Merge pull request #1391 from matrix-org/hs/drop-presence-list
...
Drop presence list methods
2020-06-02 19:50:12 -06:00
Travis Ralston
76da708352
Call the callback on cached
2020-06-02 14:19:41 -06:00
Travis Ralston
145f01ff2d
Batch up URL previews to prevent excessive requests
...
Cache expiration is still not implemented here.
2020-06-02 13:25:37 -06:00
J. Ryan Stinnett
bebeec7d84
Merge pull request #1304 from MTRNord/fix-register-auth-with-new-spec
...
Make auth argument in the register request compliant with r0.6.0
2020-06-02 10:13:57 +01:00
Michael Telatynski
18b1e00875
Add js-sdk mechanism for polling client well-known for config
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2020-06-01 22:22:01 +01:00