0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-09 11:31:11 +01:00
Commit graph

555 commits

Author SHA1 Message Date
Jason Volk
25d153d64c ircd:Ⓜ️:sync: Add an initial phase convenience; add account_data as an initial phase. 2019-04-16 01:32:52 -07:00
Jason Volk
a70d22151f modules/client/sync/rooms: Elide query for room head/depth for EDU's. 2019-04-15 17:09:35 -07:00
Jason Volk
77b16f32ce ircd:Ⓜ️:append: Calculate age based on depth from room head.
fixes #55
2019-04-15 14:44:58 -07:00
Jason Volk
eb33688bc1 ircd:Ⓜ️:fetch: Add additional interface tools; consolidate interface; cleanup/reorg.
ircd:Ⓜ️:fetch: Add backfill suite.
2019-04-12 04:44:26 -07:00
Jason Volk
4500df4b78 modules/client/rooms/initialsync: Preliminary fetch trigger here.
modules/s_fetch: Start the prev_events fetch here.
2019-04-11 07:01:56 -07:00
Jason Volk
562651aa7d ircd:Ⓜ️:fetch: Add fetch+eval workers; start central interface; various. 2019-04-10 22:32:06 -07:00
Jason Volk
e9a6f2ec92 modules/client/sync: Disable phased sync by default for now until stable. 2019-04-08 06:54:54 -07:00
Jason Volk
77b4ea969f modules/client/sync/rooms/state: Split out the initial sync branch; add room avatar. 2019-04-08 06:11:16 -07:00
Jason Volk
a8b536e420 modules/client/sync: Improve phased initial sync by bursting full room list at phase 0. 2019-04-08 04:43:23 -07:00
Jason Volk
a82410009e ircd:Ⓜ️:sync: Introduce phased polylogarithmic initial sync. 2019-04-08 02:46:49 -07:00
Jason Volk
0f2dcf1706 modules/client/sync: Rename conf item. 2019-04-08 00:03:17 -07:00
Jason Volk
e98e4babce modules: Add preliminary s_command; client command-message support. 2019-04-07 16:22:34 -07:00
Jason Volk
d0ad243860 modules/client/sync/rooms/account_data: Ensure room_id found on room account_data handlers. 2019-04-02 09:53:02 -07:00
Jason Volk
a3ca9a986b modules/client: Stub 14.13.1.3 notifications handler. 2019-03-31 14:03:21 -07:00
Jason Volk
46324b1ac8 modules/client/sync/rooms/timeline: Fix polylog timeline limited indicator. 2019-03-31 13:09:36 -07:00
Jason Volk
7433daa440 modules/client/rooms/context: Minor cleanup extra; remove default token inits. 2019-03-31 00:44:34 -07:00
Jason Volk
40b74a6721 modules/client/rooms/context: Enforce spec event_id param only; fix urldecode condition. 2019-03-31 00:35:34 -07:00
Jason Volk
37d1b156e0 modules/client/directory/room: Implement 10.2.1 PUT directory/room/{roomAlias}. 2019-03-30 19:02:11 -07:00
Jason Volk
4eba0fcd6f modules/client/directory/room: Remove old alias caching and fetching; reroute central interfaces. 2019-03-30 19:02:11 -07:00
Jason Volk
a83e304382 modules/client/sync: Manually invalidate checkpoints on known polylog commitments. 2019-03-30 15:02:18 -07:00
Jason Volk
7042d8e041 modules/client/rooms/account_data: Move checkpoint to cover both linear branches. 2019-03-30 14:13:34 -07:00
Jason Volk
f7fa89b061 ircd::json::stack: Alter checkpoint rollback() behavior to proactive. 2019-03-30 14:13:34 -07:00
Jason Volk
881d3116cc modules/client/sync/rooms/account_data: Ensure apropos() hits the linear event coming through. 2019-03-30 14:09:47 -07:00
Jason Volk
efd1124cd7 modules/client/login: Fix loss of value data during device tuple assimilation.
modules/client/register: Fix loss of value data during device tuple assimilation.
2019-03-28 21:31:22 -07:00
Jason Volk
8f335ca1bb modules/client/login: Fix JSON typing of remote IP strings.
modules/client/register: Fix JSON typing of remote IP strings.
2019-03-28 17:47:57 -07:00
Jason Volk
e555b91fa5 modules/client/sync/rooms/ephemeral/receipt: Elide syncing user's own receipts. 2019-03-28 17:36:22 -07:00
Jason Volk
6419333457 modules/client/sync/rooms/unread_notifications: Use better counter upper bound. 2019-03-28 00:11:35 -07:00
Jason Volk
0e6e556d50 modules/client/sync: Reuse scratch buffer on longpoll handles. 2019-03-27 23:50:43 -07:00
Jason Volk
5d06042140 modules/client/sync: Use the same linear vector merge in longpoll handler. 2019-03-27 20:28:59 -07:00
Jason Volk
394ec523a2 ircd:Ⓜ️:sync: Do a full iteration of all linear sync items even if success. 2019-03-27 20:13:04 -07:00
Jason Volk
fc09dd4034 modules/client/rooms/read_markers: Reimplement client 14.6 /read_markers m.fully_read. 2019-03-27 16:54:10 -07:00
Jason Volk
2d459d8da8 modules/client/rooms/receipt: Split m.read logic into subroutine. 2019-03-27 16:14:14 -07:00
Jason Volk
0e5b10816a modules/client/rooms/receipt: Enforce support for m.read type only. 2019-03-27 15:30:40 -07:00
Jason Volk
54f7ddb6bd modules/client/rooms/state: Log an error when a state event fetch fails during sync. 2019-03-23 02:45:05 -07:00
Jason Volk
5b951b55c5 modules/vm: Add sequencing points.
ircd:Ⓜ️:vm: Reorganize sequence counters.
2019-03-19 16:31:05 -07:00
Jason Volk
21d8c9ce76 modules/client/rooms/report: Provide missing error string in log message. 2019-03-17 13:41:33 -07:00
Jason Volk
22fe24f54f modules/client/sync: Add linear buffer size conf item; add help texts to some confs. 2019-03-17 13:24:24 -07:00
Jason Volk
9ab3549660 modules/client/sync: Tweak log message format; cleanup longpoll::accepted struct. 2019-03-17 13:18:33 -07:00
Jason Volk
2158d3e7b6 modules/client/rooms/report: Create !abuse room with !ircd init hook. 2019-03-16 19:38:33 -07:00
Jason Volk
4e618175c7 modules/client/sync: Try to ensure all next_batch tokens are limited to the upper bound. 2019-03-16 18:12:38 -07:00
Jason Volk
7fc68e1933 modules/client/sync: When longpoll hits an unsequenced EDU, the next_batch must repeat the current since token. 2019-03-16 12:59:18 -07:00
Jason Volk
03abdd5ac6 modules/client/sync: Improve since token rejection message. 2019-03-16 12:26:03 -07:00
Jason Volk
b456210f1e modules/client/directory/list: Preliminary AS 2.3.5.1 PUT list/appservice. 2019-03-15 16:19:05 -07:00
Jason Volk
11afd2e590 modules/client/sync/rooms: Support ignoring invites based on m.ignored_user_list. 2019-03-14 18:11:52 -07:00
Jason Volk
78c18f45ab Implement client 14.26 Reporting Content. 2019-03-14 16:20:40 -07:00
Jason Volk
86ddcd7149 modules/client/createroom: Implement 13^h^h14.23.3 Server behaviour. 2019-03-14 15:32:06 -07:00
Jason Volk
380032d4a9 ircd:Ⓜ️:room: Augment m::invite() convenience interface for custom content. 2019-03-14 15:32:06 -07:00
Jason Volk
240c181b16 modules/client/directory/list/room: Complete the missing PUT functionality. 2019-03-14 15:12:40 -07:00
Jason Volk
b1bf848155 modules/client/voip/turnserver: Add conf items for voip turnserver response. 2019-03-14 14:49:04 -07:00
Jason Volk
db9b891493 modules/client/rooms/event: Respond with zero-copy/zero-alloc. 2019-03-14 14:29:59 -07:00
Jason Volk
8ebb51bd9f modules/client/rooms/state: Refactor GET handlers for chunk streaming and spec behavior. 2019-03-14 14:25:37 -07:00
Jason Volk
42309c1c96 modules/client/rooms/members: Upgrade /members and /joined_members to streamed responses. 2019-03-14 13:55:44 -07:00
Jason Volk
3e72e1277e modules/client/directory/list: Implement directory list room handlers. 2019-03-14 13:25:28 -07:00
Jason Volk
1f35e9c57e modules/m_event: Add option to toggle query for txnid; disable query for non-timeline appends. 2019-03-13 17:08:35 -07:00
Jason Volk
f745787ce4 modules/client/sync: Check if the client is still alive during longpoll. 2019-03-12 18:41:05 -07:00
Jason Volk
fe778e6ae4 modules/client/sync/rooms: Remove unnecessary checkpoint. 2019-03-12 18:41:05 -07:00
Jason Volk
425364f13e modules/client/sync/rooms/state: Fix missing append. 2019-03-12 18:41:05 -07:00
Jason Volk
06459e655e modules/client/sync/to_device: Fix improper seek. 2019-03-12 18:41:05 -07:00
Jason Volk
c416be8398 modules: Replace individual client event appending with m::append(). 2019-03-11 16:02:48 -07:00
Jason Volk
daee236126 modules/client: Remove 308 redirects for unstable endpoints. 2019-03-11 10:43:06 -07:00
Jason Volk
e90e4aba42 modules/client/keys/upload: Disable one_time_keys; otherwise it spams the user's room. 2019-03-10 20:47:50 -07:00
Jason Volk
ba09d57d8e modules/client/rooms/context: Include unsigned data in returned events. 2019-03-09 19:21:44 -08:00
Jason Volk
48ab443ece modules/client/rooms/messages: Include unsigned data in returned events. 2019-03-09 19:21:22 -08:00
Jason Volk
bfc189da7e modules/client/rooms/messages: Omit pagination tokens at ends of iteration. 2019-03-09 18:52:48 -08:00
Jason Volk
d8da7814e8 modules/client/rooms/messages: Consider the from token inclusive. 2019-03-09 18:48:08 -08:00
Jason Volk
811e4f8c03 modules/client/rooms/context: Omit pagination tokens for ends of iteration. 2019-03-09 18:16:27 -08:00
Jason Volk
79782958fc modules/client/sync/rooms/timeline: Add conf item for default limit. 2019-03-09 17:37:48 -08:00
Jason Volk
ce8824a1bd modules/client/sync/rooms: Reenable per-room debug stats. 2019-03-09 15:17:21 -08:00
Jason Volk
0a8bb92e6d modules/client/rooms/send: Use vm.post hook site to save transaction_id before notifies. 2019-03-09 12:09:07 -08:00
Jason Volk
58159d3ee6 modules/client/sync: Fix condition to skip linear for longpoll. 2019-03-08 17:47:29 -08:00
Jason Volk
e2d2c7f376 ircd:Ⓜ️:v1::user: Default to dynamic content buffering; adjust callsite buffer sizes. 2019-03-08 17:11:42 -08:00
Jason Volk
8e2aef32ef modules/client/sync: Consistent display of next_batch values in debug log msgs. 2019-03-08 15:29:10 -08:00
Jason Volk
fcfcb83d42 modules/client/sync/rooms/timeline: Log dwarning message when transaction_id missing. 2019-03-08 15:02:48 -08:00
Jason Volk
78c888ffae modules/client/users/openid: Return a better http code here. 2019-03-08 14:33:54 -08:00
Jason Volk
c0d0599b19 modules/client/sync: Tweak next_batch case; add debuglog on timeout branch. 2019-03-08 14:26:23 -08:00
Jason Volk
187eca0e4e modules/client/sync: Refactor linear sync handlers to assume no implicit path. 2019-03-08 14:19:04 -08:00
Jason Volk
8230819edf modules/client/sync: Optimize these user state iterations. 2019-03-08 13:42:24 -08:00
Jason Volk
d1e0864590 modules/client/profile: Optimize the user profile iteration. 2019-03-08 11:25:38 -08:00
Jason Volk
cdac039658 modules/client/rooms/leave: Simplify leave endpoint handler. 2019-03-08 10:07:17 -08:00
Jason Volk
60c48d2a83 modules/client/rooms/unban: Implement 10.4.4.2 POST unban. 2019-03-08 09:57:43 -08:00
Jason Volk
cb2c65e8e2 modules/client/rooms/kick: Simplify endpoint handler. 2019-03-08 09:45:50 -08:00
Jason Volk
47216cba91 modules/client/rooms/ban: Implement 10.4.4.1 POST ban. 2019-03-08 09:43:30 -08:00
Jason Volk
3fdb3a420a modules/client/rooms/forget: Implement 10.4.3.2 POST forget. 2019-03-07 16:26:04 -08:00
Jason Volk
59124a0fe1 modules/client/createroom: Differentiate between spec preset and internal preset strings. 2019-03-07 15:40:45 -08:00
Jason Volk
864c6cc889 modules/client/rooms/send: urldecode type and txnid path parameters. 2019-03-07 15:32:03 -08:00
Jason Volk
cc14164dc8 modules/client/profile: Reuse the profile::set() path in fetch(). 2019-03-07 12:14:01 -08:00
Jason Volk
5adfb3ba43 modules/client/sync: Add conf items which override the sync mode selection. 2019-03-07 11:53:58 -08:00
Jason Volk
34561a5659 modules/client/profile: Fix JSON string type assumption for profile values. 2019-03-06 18:17:46 -08:00
Jason Volk
33d3764c71 modules/client/createroom: Make special conditions to optimize user's user rooms. 2019-03-06 17:41:56 -08:00
Jason Volk
9f4890a517 ircd:Ⓜ️ Unify room create interface and paths around createroom tuple. 2019-03-06 15:02:43 -08:00
Jason Volk
dd961fc53d modules/client/profile: Remove attempt at non-trivial designated initializers. 2019-03-06 10:50:42 -08:00
Jason Volk
eb050591c9 modules/client/profile: Improve profile related for remote users. 2019-03-06 00:12:21 -08:00
Jason Volk
094ae6e997 ircd:Ⓜ️:user::profile: Add interface for remote profile fetch(). 2019-03-06 00:12:21 -08:00
Jason Volk
1f82b884ff ircd:Ⓜ️ Implement 14.18 Room Tagging. 2019-03-05 18:42:04 -08:00
Jason Volk
8b32f0558d modules/client/sync/rooms/state: Add unsigned addendum to event output. 2019-03-05 14:43:00 -08:00
Jason Volk
6fed8cc360 modules/client/createroom: Forbid guest access on all presets in violation of the spec. 2019-03-05 14:27:52 -08:00
Jason Volk
00da74fa27 modules/client/createroom: Improve error reporting; add derror log message. 2019-03-05 14:24:31 -08:00
Jason Volk
85b66e2d55 modules/client/sync/rooms/timeline: For non-longpoll, attempt to query transaction_id. 2019-03-05 14:24:08 -08:00
Jason Volk
d30e053e42 modules/client/rooms/send: Save transaction_id's to user's user room. 2019-03-05 14:24:08 -08:00
Jason Volk
78eab2fbcd modules/client/createroom: Implement the preset string behavior. 2019-03-05 14:24:08 -08:00