Commit Graph

3507 Commits

Author SHA1 Message Date
td d10befcac5
fix: allow famedly calls for everyone before choosing an existing one 2024-05-21 15:04:25 +05:30
td d4566d7512
fix: minor perm issue typo while setting famedly call member event 2024-05-21 15:02:30 +05:30
Krille-chan 290cac25fc
Merge pull request #1815 from famedly/krille/make-request-timeout-configurable
refactor: Make network request timeout
2024-05-21 09:16:01 +02:00
Krille 4d60c8f023
refactor: Make network request timeout
configurable
2024-05-21 08:30:34 +02:00
krille-chan c5e6a89f05
refactor: Combine sendMessageTimeoutSeconds and sendTimelineEventTimeout
Those timeouts were basically the same
and both had the same default value
1 minute. I guess it was just a
mistake to duplicate this.
2024-05-20 16:57:55 +02:00
Krille-chan fe637e1627
Merge pull request #1804 from famedly/karthi/max-pdu-size-check
perf: check event size in bytes without encoding twice
2024-05-20 16:46:39 +02:00
Karthikeyan S 29e554337c
perf: check event size in bytes without encoding twice 2024-05-20 16:40:15 +02:00
td f9fe6b17a9
Merge pull request #1814 from famedly/krille/store-upload-inbound-sessions-in-que
refactor: Store not uploaded group sessions in its own database queue
2024-05-20 18:40:39 +05:30
krille-chan 97d544ba85
refactor: Store not uploaded group sessions in its own database queue
This should highly increase the
performance as right now for every sync
ALL inbound group sessions are loaded
from the database and checked if
they need an upload. So if a user
has 10k stored sessions locally, this
would probably let the whole application
lag a lot. This stores the sessions which
need upload in a different table now,
similar how we do this with the to
device queue
2024-05-20 11:28:08 +02:00
Krille-chan 7d6bd1ab9d
Merge pull request #1805 from famedly/karthi/update-event-error
fix: update event status to error on EventTooLarge
2024-05-16 16:03:16 +02:00
Karthikeyan S eef3fd1dfc
fix: update event status to error on EventTooLarge 2024-05-16 19:12:25 +05:30
td b50bab6b29
Merge pull request #1806 from famedly/krille/make-client-fields-read-only
refactor: Make client members read only
2024-05-16 14:43:38 +05:30
Krille 93bf30f376
refactor: Make client members read only 2024-05-16 07:23:30 +02:00
Krille-chan 9217231527
Merge pull request #1802 from famedly/release/v0.29.2
build: release v0.29.2
2024-05-14 15:16:44 +02:00
Krille db5aedc8f5
build: release v0.29.2 2024-05-14 14:07:23 +02:00
Krille-chan 476d86b425
Merge pull request #1755 from famedly/krille/custom-refresh-token-lifetime
feat: Implement unpublished MSC custom refresh token lifetime
2024-05-14 10:49:17 +02:00
Krille 5a79aa9536
refactor: make sure ensureNotSoftLoggedOut does not run multiple times 2024-05-14 10:40:32 +02:00
Krille 3f8a4c8189
feat: Implement unpublished MSC custom refresh token lifetime 2024-05-14 10:40:32 +02:00
Krille-chan 5ecff08bf4
Merge pull request #1801 from famedly/krille/fix-get-logged-out-by-sync-filter-request
fix: ensureNotSoftLoggedOut must be called before network reqeust in syncFilter check
2024-05-14 10:39:25 +02:00
Krille 039c214e7a
fix: ensureNotSoftLoggedOut must be called before network reqeust in syncFilter check 2024-05-14 10:13:45 +02:00
td 85a85211b8
Merge pull request #1800 from famedly/td/fixIceRestart
fix: ice restart mechanism
2024-05-13 22:16:44 +05:30
td 59703aef75
fix: ice restart mechanism 2024-05-13 22:07:38 +05:30
Krille-chan 9cc7c0e581
Merge pull request #1791 from famedly/krille/cache-direct-chat-matrix-id
refactor: Cache direct chat matrix ID
2024-05-10 11:01:40 +02:00
krille-chan 42f44de2b1
refactor: Cache direct chat matrix ID
The direct chat account data
content is a map from matrixId
to roomId(s). If we want to find
the roomId for a given userId,
then this is not a problem. But
the other way around, if we
want to check if a given roomId
is a direct chat or not, needs to
process all entries which can be
hundreds. Doing this very
often in an app costs a lot of
performance. This adds a simple
cache in the room object and
validates the cache every time
to make this more efficient.
2024-05-10 10:52:27 +02:00
Krille-chan 188a4e2596
Merge pull request #1774 from PhantomRay/prod
feat: support for JWT authentication
2024-05-10 10:48:32 +02:00
Ray Wang e9825f7f40
feat: support for JWT authentication
Signed-off-by: Krille <c.kussowski@famedly.com>
2024-05-10 10:39:58 +02:00
Krille-chan ecb1fc973e
Merge pull request #1793 from famedly/release/v0.29.1
build: Release 0.29.1
2024-05-10 08:42:07 +02:00
Krille 2670788efc
build: Release 0.29.1 2024-05-10 08:32:44 +02:00
Krille-chan 55388da505
Merge pull request #1792 from famedly/krille/revert-check-size
revert: Check size before fake sync
2024-05-10 08:31:30 +02:00
Krille 1dbb81ed83
chore: Revert check message size before fake sync
This lead to the huge problem that there is no
user feedback between sending a message and
seeing it in the timeline as it is encrypted
before the first user feedback is shown. But
the encryption step is async and also includes
fetching devices if necessary so that can take
seconds or even forever on bad internet
connection.

This reverts commit 981c3ea94d.
2024-05-10 08:22:09 +02:00
Krille-chan e89c9ac89b
Merge pull request #1790 from famedly/release/v0.29.0
build: Update to v0.29.0
2024-05-08 12:32:14 +02:00
Krille 66cc7960c0
build: Update to v0.29.0 2024-05-08 12:21:20 +02:00
Krille-chan e8c6eca7f8
Merge pull request #1788 from famedly/krille/better-delete-failed-send-event
refactor: delete not sent events without eventupdate stream workaround
2024-05-08 12:11:38 +02:00
Krille 501c457ea1
refactor: delete not sent events without eventupdate stream workaround
This fixes several problems. First
sending a fake event through the
onEventUpdate stream was not a
good design and lead to problems
if you expect a timeline event but
then are unable to build the
event from json. This now uses
a new stream in the Client which
is listened to in the timeline to
delete an event which should be
much more reliable.
It also now throws an exception
if deleting the event fails
instead of returning true or false.
A deprecation note is added.
2024-05-08 12:02:55 +02:00
Krille-chan e4acb1f510
Merge pull request #1789 from famedly/krille/do-not-delete-file-in-constructor
refactor: Removes the behavior of deleting an event if the file is no longer cached
2024-05-07 10:33:25 +02:00
Krille bf5bf2adb0
refactor: Removes the behavior of deleting an event if the file is no longer cached
This brings more problems than it
helps. It leads to bugs like flickering
of sending images and also
confuses the user. This should
either be handled by the app
or the user.
2024-05-06 14:59:45 +02:00
Nicolas Werner 7637f9b65c
Merge pull request #1787 from famedly/krille/create-stripped-state-events-in-db
refactor: Create StrippedStateEvents for invite rooms when loading from db
2024-05-06 11:38:34 +02:00
Krille a1a542d98e
refactor: Create StrippedStateEvents for invite rooms when loading from db 2024-05-06 09:42:05 +02:00
Krille-chan 587ce378c7
Merge pull request #1786 from famedly/use-stripped-state-for-room-state
refactor: Use strippedstatevent as base for room state and user class
2024-05-03 14:32:21 +02:00
Krille 5b46ae6e31
refactor: Use strippedstatevent as base for room state and user class
Before we have used the Event class for all
state events while for invite rooms those
actually were StrippedStateEvent objects. This
created some problems like we needed to set a
fake originServerTs (usually to DateTime.now()).
Actually we don't need the additional keys for
state events most of the time so just using
StrippedStateEvent for all states and typecasting
them to event where needed is not much of a
hassle while we benefit from a more clear
structure.
This also now uses StrippedStateEvent as a base
class for the User class which makes the User
class more minimal as keys like event_id and
origin_server_ts are no longer necessary. As we
create a lot of fake User objects where we had to
put fake values in it, it brings more benefits
than problems to just get rid of those fields.
2024-05-03 14:06:49 +02:00
td ffe496a234
Merge pull request #1694 from famedly/krille/box-tests-chrome
ci: Add tests for database on web
2024-05-02 14:57:18 +05:30
Krille 8c98a0058a
ci: Add tests for database on web 2024-05-02 11:18:35 +02:00
Nicolas Werner 30cb81bc95
Merge pull request #1784 from famedly/td/logCleanup
chore: reduce isValidMemEvent log level
2024-04-30 18:19:24 +02:00
td c5b5a1cf14
chore: reduce isValidMemEvent log level 2024-04-30 21:40:43 +05:30
td d90178d8f5
Merge pull request #1783 from famedly/release/v0.28.1
chore: release v0.28.1
2024-04-30 18:08:50 +05:30
td 6dbbfb3f70
chore: more gh_release fixes 2024-04-30 17:59:10 +05:30
td f83351a4b5
chore: release v0.28.1 2024-04-30 17:53:28 +05:30
td 20d6850e70
Merge pull request #1781 from famedly/td/exposefakeapi
chore: expose fake matrix api
2024-04-30 17:51:28 +05:30
td a2e8830df0
chore: expose fake matrix api 2024-04-30 17:42:36 +05:30
td 5cf1e65838
Merge pull request #1782 from famedly/td/meshCallInviteFix
fix: allow mesh group call invite
2024-04-30 17:31:49 +05:30