Jason Volk
767e18791c
modules/client/sync: Fix queue pop.
2019-07-06 05:50:13 -07:00
Jason Volk
5cf7eb9db4
modules/client/sync: Enable crazyloading by default.
2019-07-06 02:06:46 -07:00
Jason Volk
261151f539
ircd: Ⓜ️ :fetch: Remove ambiguating event_id() util.
2019-07-05 23:45:00 -07:00
Jason Volk
9fc175bf17
modules/client/sync/rooms/state: Send some additional fundamental state events at phase 0.
2019-07-04 03:43:59 -07:00
Jason Volk
8f2495893b
modules/client/sync/rooms/state: Send the room creators member event on phase 0.
2019-07-04 03:19:30 -07:00
Jason Volk
d1ecaf5ffb
modules/client/sync/rooms/state: Send the user's own member event on phase 0.
2019-07-04 03:07:54 -07:00
Jason Volk
babc28ccd0
modules/client/sync/rooms/timeline: Add conf item for separate phased+initial limit.
2019-07-04 03:05:38 -07:00
Jason Volk
333309e52f
modules/client/sync/rooms/timeline: Set initial=true for polylog phased.
2019-07-04 02:32:33 -07:00
Jason Volk
22fd1c4350
modules/client/sync/rooms/unread_notifications: Set initial=true for polylog phased.
2019-07-04 02:29:05 -07:00
Jason Volk
9234fd34a6
modules/client/account: Fix use of deprecated json::object nested traversal API.
2019-07-03 18:57:48 -07:00
Jason Volk
a3da1fd0d0
modules/client/events: Add missing user::room event_append_opts contextual data.
2019-06-29 19:16:20 -07:00
Jason Volk
1f8bff0ef5
modules/client/rooms/initialsync: Add missing event_append_opts contextual data.
2019-06-29 19:16:20 -07:00
Jason Volk
6ce67a81a1
ircd: Ⓜ️ :user::highlight: Add conf items to toggle counting; improve match detail.
2019-06-27 01:59:19 -07:00
Jason Volk
0fb3f1d8ac
ircd: Ⓜ️ :user: Modernize the highlight counting interface.
2019-06-27 01:32:16 -07:00
Jason Volk
80655da66e
Misc fixes for clang.
2019-06-24 01:34:14 -07:00
Jason Volk
ce7bb21ea4
modules: Disambiguations for clang.
2019-06-24 01:33:41 -07:00
Jason Volk
a371bc3e1f
ircd: Fix cast-conversion based reference-constructions.
2019-06-22 17:36:42 -06:00
Jason Volk
534afe8859
ircd: No need to move x-values.
2019-06-22 17:36:42 -06:00
Jason Volk
c944818f4b
modules/client/rooms: Add pre-checks for membership on the convenience endpoints.
2019-06-21 16:53:26 -07:00
Jason Volk
cef538fdf3
modules/client/publicrooms: Fix url decoding of query string arguments.
2019-06-18 00:22:16 -07:00
Jason Volk
f2fb177d7d
modules/client/publicrooms: Refresh the cache on request.
...
fixes #82
2019-06-18 00:22:16 -07:00
Jason Volk
4a7f079b49
modules/client/versions: Claim support for more versions.
2019-06-16 14:04:28 -07:00
Jason Volk
98ec2d7008
modules/client/sync: Update README.
2019-06-11 14:51:20 -07:00
Jason Volk
2e80a5ab02
modules/client/sync/rooms/state: Make the linear-sync handler able to handle belated state events.
2019-06-08 01:07:16 -07:00
Jason Volk
abfdb06ebf
modules/client/rooms/join: Hard reset the room head after join completes.
2019-06-07 23:01:46 -07:00
Jason Volk
87e8b5eb1f
modules/client/sync: Minor reorg; increase default timeout conf items.
2019-06-07 21:56:17 -07:00
Jason Volk
def97cf25b
modules/client/rooms/join: Improve lazy chain member event search.
2019-06-07 06:02:19 -07:00
Jason Volk
4f3123be62
modules/client/rooms/join: Use dedicated log facility.
2019-06-07 06:02:19 -07:00
Jason Volk
3d8d71c97c
modules/client/rooms/join: Mask nothrow conditions; various fixes.
2019-06-07 06:02:19 -07:00
Jason Volk
8e0ac58987
ircd: Ⓜ️ :room: Expose bootstrap to interface.
2019-06-07 04:56:23 -07:00
Jason Volk
077e953e3b
modules/client/sync/rooms/timeline: Add conf item to toggle excluding state in timeline exposure_depth.
2019-06-07 04:08:35 -07:00
Jason Volk
92761f5d9f
modules/client/events: Use the proper m::append event appender.
2019-06-07 02:49:25 -07:00
Jason Volk
b2bb7767a7
modules/client/rooms/join: Spawn context for asynchronous joinstrap; improve various.
2019-06-07 02:49:25 -07:00
Jason Volk
f728906505
modules/client/rooms/join: No need to parse the unused and deprecated origin field here.
2019-06-06 22:39:05 -07:00
Jason Volk
48a8057cb5
modules/client/rooms/join: Tweak the lazychain process; remove cruft.
2019-06-06 21:58:47 -07:00
Jason Volk
e8b61b0caf
modules/client/rooms/join: Rename lazychain conf item to lazychain_enable.
2019-06-06 19:41:48 -07:00
Jason Volk
55e2ac98ce
modules/client/rooms/join: Implement the lazychain optimization; tweak eval options.
2019-06-06 05:35:21 -07:00
Danilo Spinella
4682e1fae4
ircd: Fix ambiguous references to BSD stringops.
2019-06-06 03:49:54 -07:00
Jason Volk
ed247e6200
modules/client/rooms/join: Implement the Hackfill optimization.
2019-06-06 01:46:07 -07:00
Jason Volk
a20a11722d
modules/client/rooms/join: Add conf item for initial backfill amount.
2019-06-06 01:45:21 -07:00
Jason Volk
5994a0820d
modules/client/rooms/join: Promote these log message levels.
2019-06-06 01:44:33 -07:00
Jason Volk
25442bdff2
modules/client/sync/rooms/timeline: Consider all events for exposure depth.
2019-06-06 01:09:57 -07:00
Jason Volk
a99a7e2501
modules/client/sync/rooms/timeline: Add exposure depth condition to not sync irrelevant events.
2019-06-05 17:06:37 -07:00
Jason Volk
359ab6e897
modules/client/rooms/join: Elaborate the join bootstrap stack.
...
fixes #8
2019-06-05 16:44:16 -07:00
Jason Volk
6982fa2dac
modules/client/sync/rooms/account_data: Ignore since range for tags on polylog sync.
2019-06-05 15:18:46 -07:00
Jason Volk
9662d195cf
modules/client/directory/user: Modernize user directory query term interpretation.
2019-06-05 01:15:11 -07:00
Jason Volk
1a48bc3899
modules/client/rooms/join: Process send_join response events.
2019-06-04 23:01:39 -07:00
Jason Volk
0658f7c6be
modules/client/rooms/join: Bypass dependent fetching and eval on join bootstrap.
2019-06-02 15:44:55 -07:00
Jason Volk
1f7ad67805
modules/client/rooms/invite: Move the foreign invite hook here; do namespace modernizations.
2019-05-31 14:21:41 -07:00
Jason Volk
f3ba0f163b
modules/client/sync/rooms/account_data: Eliminate the idx upper bound on room tags selection.
2019-04-29 10:28:55 -07:00
Jason Volk
e75b75e3f9
modules/client/createroom: More descriptive error propagation here.
2019-04-27 18:33:23 -07:00
Jason Volk
80fb8699a1
ircd: Ⓜ️ Add a membership string size constant.
2019-04-27 18:32:45 -07:00
Jason Volk
ea7e06fe27
modules/client/rooms/state: Optimize parallel closure invariant.
2019-04-26 06:04:06 -07:00
Jason Volk
564a64e5d6
modules/s_fetch: Improve recursive eval.
2019-04-26 05:30:21 -07:00
Jason Volk
633802310c
modules/client/rooms/context: Fix missing unsigned/transaction_id on returned event.
2019-04-23 15:26:44 -07:00
Jason Volk
b481d994f5
modules/client/sync/rooms/state: Attemt fix "invite_state" vs. "state".
2019-04-22 20:08:29 -07:00
Jason Volk
ae4ae66f08
modules/client/sync/rooms: Show membership string in debug msg.
2019-04-22 14:47:06 -07:00
Jason Volk
7117e943ed
modules/client/rooms/leave: Call m::leave() to handle POST /leave/.
2019-04-22 14:27:12 -07:00
Jason Volk
4d491340b6
modules/client/rooms/leave: Add missing m::leave definition.
2019-04-22 14:27:12 -07:00
Jason Volk
fd9097cfd4
modules/m_room: Move m::send impl back to client/rooms.
2019-04-22 14:27:12 -07:00
Jason Volk
f3845e11af
modules/client/rooms/join: Export namespaced definitions for join.
2019-04-22 14:27:12 -07:00
Jason Volk
e3b1be2910
ircd: Ⓜ️ :vm: Refactor various fetch related options.
2019-04-22 12:27:43 -07:00
Jason Volk
454051f9f3
modules/client/sync: Condition for client / socket in longpoll::poll loop.
2019-04-19 18:21:17 -07:00
Jason Volk
5ad6d2153e
modules/client/keys/query: Eliminate head-of-line timeout; stream results to client as they arrive.
2019-04-18 19:47:33 -07:00
Jason Volk
02bb466898
modules/client/rooms/messages: Fix pagination token related.
2019-04-18 15:11:48 -07:00
Jason Volk
cdefddf6af
modules/client/rooms/messages: Add log facility; add debug msg.
2019-04-18 14:20:47 -07:00
Jason Volk
492d58dd83
modules/client/rooms/context: Add a log facility; debug message.
2019-04-18 14:14:41 -07:00
Jason Volk
0fa4bdcff7
ircd: Ⓜ️ :rooms: Consolidate / refine the rooms iteration interface.
2019-04-17 20:47:50 -07:00
Jason Volk
31bbc6b1b4
modules/client/sync/rooms/account_data: Arrange room tags in the initial phase.
2019-04-16 01:32:52 -07:00
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
Jason Volk
d4b8a8089e
ircd: Ⓜ️ :createroom: Generate default power_levels w/ option for content_override.
2019-03-05 14:24:08 -08:00
Jason Volk
c972683e2c
modules/client/createroom: Set the visibility in the public rooms list; minor cleanup.
2019-03-05 12:51:48 -08:00
Jason Volk
70484be697
modules/client/createroom: Add graceful error handling and granular reporting to client.
2019-03-05 12:42:53 -08:00
Jason Volk
f0598bb27a
modules/client/createroom: Set initial room state from supplied request data.
...
modules/client/createroom: Set the room name and topic if supplied in request.
modules/client/createroom: Set any state events from supplied initial_state.
modules/client/createroom: Invite any users in the supplied invite array.
modules/client/createroom: Set the room's initial guest_access if supplied by user.
2019-03-05 12:23:49 -08:00
Jason Volk
d8a9f484a4
modules/client/rooms/messages: Simplify the messages iteration.
2019-03-04 15:46:44 -08:00
Jason Volk
1dcf36adc8
modules/client/rooms/event: Fix param missing error message.
2019-03-04 14:36:49 -08:00
Jason Volk
19e09b0ad5
ircd: Ⓜ️ :login: Support identifier typed login.
2019-03-04 13:16:14 -08:00
Jason Volk
59973705bb
modules/client/rooms/context: Provide better pagination tokens in response.
2019-03-04 12:43:14 -08:00
Jason Volk
48055345ea
modules/client/rooms/messages: Fix the start pagination token in reponse.
2019-03-04 12:42:58 -08:00
Jason Volk
86e7e78a8a
modules/client/register: Disable guest registration by default for now.
2019-03-04 09:29:27 -08:00
Jason Volk
68ed0d6133
modules/client/register: Add email to the registration flows.
2019-03-04 09:28:02 -08:00
Jason Volk
3099997049
modules/client/sync/rooms/state: Deal with "invite_state" vs. "state".
2019-03-03 16:33:10 -08:00
Jason Volk
e93e460f22
modules/client/sync: Must wait for parallel completion before copying ret.
2019-03-03 16:33:10 -08:00
Jason Volk
f1bca6de7e
modules/client/profile: Return 404 rather than {} for empty profiles.
2019-03-03 16:33:10 -08:00
Jason Volk
295794ec42
ircd: Ⓜ️ :user: Improve user filter interface and module linkage.
2019-03-02 16:49:44 -08:00
Jason Volk
73be558ff2
modules/client/register_available: Deny response when registration disabled.
2019-03-02 16:05:30 -08:00
Jason Volk
3deeab99de
modules/client/register: Allow flows request before denying registration otherwise Riot infinite-loops.
2019-03-02 16:05:30 -08:00
Jason Volk
47bcfaecb4
ircd: Upgrade various templates with argument deduction.
2019-03-02 14:20:52 -08:00
Jason Volk
157805d97b
modules/client/sync: Simplify next_batch token decision after linear and longpoll.
2019-03-02 14:20:52 -08:00
Jason Volk
7f7ecc90b3
modules/client/rooms/context: Allow a room_id as the event_id and fetch the room head.
2019-03-01 19:02:49 -08:00
Jason Volk
0720b2f4c4
modules/client/events: Implement 14.17.1.1 /events (room previews).
2019-03-01 18:34:53 -08:00
Jason Volk
d50462a9dd
modules/client/rooms: Implement 9.3.8 initialSync (for acquired rooms).
2019-03-01 18:25:37 -08:00
Jason Volk
ba2e81254b
modules/client/profile: Add conf item for remote request timeout.
2019-03-01 14:18:22 -08:00
Jason Volk
452c664a8c
modules/client/profile: Return better errors to client for remote profile requests.
2019-03-01 14:12:49 -08:00
Jason Volk
e763e7e9a8
modules/client/sync/account_data: Fix regressions; optimize query pattern.
2019-03-01 13:09:19 -08:00
Jason Volk
ec4fbe3640
modules/client/sync/rooms/account_data: Add linear sync handler.
2019-03-01 12:58:37 -08:00
Jason Volk
b6fe591142
modules/client/sync/rooms/account_data: Improve polylog sync handler.
2019-03-01 12:58:37 -08:00
Jason Volk
58a98806e9
ircd: Ⓜ️ :user::room_account_data: Expose type prefixing in interface.
2019-03-01 12:58:37 -08:00
Jason Volk
8fee82b0d6
modules/client/sync: Readd the transaction_id on longpoll; fix ghost events.
2019-02-28 18:28:45 -08:00
Jason Volk
9c20d49e33
ircd::resource::response::chunked: Eliminate move semantic.
2019-02-28 17:12:04 -08:00
Jason Volk
70173f5893
modules/client/sync: Use better flush() path.
2019-02-28 17:12:04 -08:00
Jason Volk
af6ac4a2ac
ircd: Replace various unwind count patterns with scope_count.
2019-02-28 17:12:03 -08:00
Jason Volk
4e6ed85d27
modules/client/sync/rooms/state: Fix condition for using state[] rather than timeline[].
2019-02-28 12:45:04 -08:00
Jason Volk
b8fa7455e9
modules/client/sync: Provide better next_batch after linear iteration.
2019-02-28 12:36:14 -08:00
Jason Volk
9a43a9524c
modules/client/sync: Uniform log messages; longpoll error message; various fixes.
2019-02-27 18:49:38 -08:00
Jason Volk
a13ffd8978
modules/client/sync/rooms/ephemeral/receipt: Fix competing receipt formats.
2019-02-27 18:36:34 -08:00
Jason Volk
1e9b2cad9c
modules/client/sync: Improve various sync handler conditions.
2019-02-27 18:24:12 -08:00
Jason Volk
d469015e95
modules/client/sync/rooms/ephemeral/receipt: Filter my origin only.
2019-02-27 18:19:11 -08:00
Jason Volk
4724110736
modules/client/sync/rooms/ephemeral: Add m.typing sync handler.
2019-02-27 18:19:11 -08:00
Jason Volk
2c239858cb
modules/client/sync/account_data: Ignore proffered events without an event_idx.
2019-02-27 16:30:43 -08:00
Jason Volk
9f7a08e9da
modules/client/sync/rooms/timeline: Consolidate event append paths.
2019-02-27 16:27:04 -08:00
Jason Volk
c88d961ad4
modules/client/sync: Implement longpoll sync handler.
2019-02-27 16:27:04 -08:00
Jason Volk
902466450e
modules/client/sync: Enable linear sync.
2019-02-27 16:25:37 -08:00
Jason Volk
f91f6226a6
modules/client/sync: Add event_idx to accept struct; move top object construction to handlers.
2019-02-27 16:25:37 -08:00
Jason Volk
7f57a4c422
modules/client/sync: Sketch various preliminary linear sync handlers.
2019-02-26 18:17:45 -08:00
Jason Volk
a263b2ff40
modules/client/sync: Use resource::response buffer w/ passed size argument.
2019-02-26 18:04:37 -08:00
Jason Volk
cc586a352e
modules/client/sync: Implement iteration base of linear sync.
2019-02-26 18:04:37 -08:00
Jason Volk
78a1281b1c
ircd: Ⓜ️ :sync: Make data.out a pointer to the json::stack.
2019-02-26 15:50:58 -08:00
Jason Volk
11766b3e04
ircd: Ⓜ️ :v1: Remove non-opts overloads; workaround g++-7 compiler bug.
2019-02-25 18:00:39 -08:00
Jason Volk
5910b97e03
modules/client/keys/upload: Add candidate one_time_key_counts response.
2019-02-25 18:00:39 -08:00
Jason Volk
55fd9505bc
modules/client/sync/to_device: More efficient iteration seek.
2019-02-24 15:30:38 -08:00
Jason Volk
af5b0e69a1
modules/client/sync: Employ json::stack::checkpoint using boolean return values in all handlers.
2019-02-24 14:49:29 -08:00
Jason Volk
ec50b0f76e
ircd: Ⓜ️ :sync: Make instance-level conf::items for all sync::items.
2019-02-22 17:11:53 -08:00
Jason Volk
603cc98e30
modules/client/sync: Adjust the object creation for handlers; put the room head idx in data.
2019-02-22 16:23:02 -08:00
Jason Volk
cdb0ed443d
modules/client/sync/to_device: Implement to_device event polylog sync.
2019-02-22 15:40:53 -08:00
Jason Volk
1ca01962a3
modules/client/keys: Implement 14.11.5.2.3 POST keys/claim.
2019-02-22 15:40:53 -08:00
Jason Volk
1ca90d9a3d
modules/client: Implement 14.9.3.1 PUT sendToDevice (with limitation).
2019-02-22 15:40:53 -08:00
Jason Volk
c9f8e44c78
ircd: Ⓜ️ :sync: Add stats.info conf item; rename debug_stats item.
2019-02-22 15:40:53 -08:00
Jason Volk
a4e709c6d4
ircd: Ⓜ️ :sync: Add conf item for polylog item stats to debuglog.
2019-02-22 15:40:52 -08:00
Jason Volk
4797cf8b5e
modules/client/send_to_device: Add client/unstable/ redirect to /r0/.
2019-02-21 17:56:08 -08:00
Jason Volk
16e83bbcca
modules/client/keys/query: Implement 14.11.5.2.2 POST keys/query.
2019-02-21 16:19:49 -08:00
Jason Volk
207a12934c
ircd: Ⓜ️ :user: Reorg user::account_data interface.
2019-02-21 12:11:42 -08:00
Jason Volk
7f37400dcb
ircd: Ⓜ️ :user: Reorg user::profile interface.
2019-02-21 11:53:25 -08:00
Jason Volk
f2eea77654
modules/client/keys/upload: Persist uploaded device_keys.
2019-02-20 19:19:54 -08:00
Jason Volk
8f4795e387
modules/client/keys: Move existing into directory; stub remaining endpoints.
2019-02-20 19:12:32 -08:00
Jason Volk
1dd97b8c75
modules/client/register: Fix device_id property name in access_token event.
2019-02-20 19:08:38 -08:00
Jason Volk
0fe24757ba
modules/client/sync/rooms/unread_notifications: Remove condition to send counts.
2019-02-20 16:32:01 -08:00
Jason Volk
98a8ca7bf2
ircd: Ⓜ️ :device: Associate access_token to device.
2019-02-20 15:46:48 -08:00
Jason Volk
964d6b427f
modules/client/devices: Implement 14.10.2 security considerations.
2019-02-20 15:45:32 -08:00
Jason Volk
0efd723edb
ircd: Ⓜ️ :device: Develop interface; use individual state events for properties.
2019-02-20 13:36:29 -08:00
Jason Volk
d05f58d352
modules/client: Add preliminary delete_devices endpoint.
2019-02-20 13:10:56 -08:00
Jason Volk
815709bbed
modules/client/devices: Implement handlers through m::device interface.
2019-02-19 17:42:17 -08:00
Jason Volk
b4ee0a9bcf
ircd: Ⓜ️ Temporary eval workarounds.
2019-02-19 16:34:24 -08:00
Jason Volk
77ababbe85
modules/client/sync/rooms: Minor constness fix.
2019-02-19 14:49:50 -08:00
Jason Volk
ddd59f6a04
modules/client/versions: Report r0.4.0.
2019-02-19 14:46:03 -08:00
Jason Volk
b8ea9fdad7
modules/client/keys: Use permanent redirect for /unstable/keys/ related.
2019-02-19 13:29:35 -08:00
Jason Volk
5b833ce6af
modules/client/devices: Use permanent redirect resource for /unstable/.
2019-02-19 13:25:32 -08:00
Jason Volk
22fe163344
modules/client/devices: Support /unstable/ URL as well as /r0/.
2019-02-18 17:20:04 -08:00
Jason Volk
d960a31143
modules/client/register: Set device data on registration w/ login.
2019-02-18 16:50:53 -08:00
Jason Volk
ddf76fe502
ircd: Ⓜ️ :register: Use json::string types here; simplify.
2019-02-18 16:44:28 -08:00
Jason Volk
aed1c856ef
modules/client/login: Set device in user's room on login.
2019-02-18 16:42:08 -08:00
Jason Volk
d445f98d93
modules/client: Stub a send_to_device endpoint.
2019-02-18 13:42:38 -08:00
Jason Volk
7d449e6e56
ircd: Ⓜ️ :login: Use json::string rather than string_view in tuple types; simplify.
2019-02-18 13:42:25 -08:00
Jason Volk
0644db459c
ircd: Ⓜ️ :event: Add various size constants replacing magic numbers.
2019-02-18 13:42:25 -08:00
Jason Volk
dd99d929aa
modules/client/logout: Implement 5.4.4 logout/all.
2019-02-18 11:22:45 -08:00
Jason Volk
cc2ed66190
modules/client/logout: Complete the logout endpoint.
2019-02-18 11:12:30 -08:00
Jason Volk
952f173204
modules/client/rooms: Add /event/ endpoint.
2019-02-18 09:59:14 -08:00
Jason Volk
247544d130
modules/client/rooms/messages: Relax requirement for a ?from=
parameter.
2019-02-18 09:59:14 -08:00
Jason Volk
2dfad15ee8
modules/client/keys: Rename URL from /unstable/ to /r0/.
2019-02-16 16:27:57 -08:00
Jason Volk
eca9bd7da9
modules/client/sync/rooms/ephemeral/receipt: Optimize polylog-sync strategy.
2019-02-14 15:28:38 -08:00
Jason Volk
2f088591f7
modules/client: Add capabilities endpoint.
2019-02-12 12:04:02 -08:00
Jason Volk
a1c8845e1e
ircd: Ⓜ️ 🧾 Normalize module definition names / layout.
2019-02-11 15:57:01 -08:00
Jason Volk
8fd1b57e86
modules/client/sync: Stub device related sync modules.
2019-02-08 09:18:39 -08:00
Jason Volk
11af393444
modules/client/sync/rooms/timeline: Bail faster if no room head idx found.
2019-02-05 01:58:12 -08:00
Jason Volk
03cb4a613b
modules/m_room_member: Fix improper hook match on local invites.
2019-02-04 22:50:51 -08:00
Jason Volk
6947c7e953
ircd: Ⓜ️ Move the state/send event iov composer into m_room.
2019-02-04 13:59:01 -08:00
Jason Volk
8c5b1f283f
modules/client/sync: Various range check fixes; simplify debug stats.
2019-01-26 17:26:05 -08:00
Jason Volk
c080d5523c
ircd: Ⓜ️ :presence: Improve get() interface based on realistic usage needs.
2019-01-26 16:59:12 -08:00
Jason Volk
fc162b41b3
modules/client/sync: Add a next_batch
param to the query args passed to the range upper-bound.
2019-01-26 15:33:11 -08:00
Jason Volk
80b3cd678e
modules/client/sync: Reorg / deinline sync args related.
2019-01-26 13:34:57 -08:00
Jason Volk
05f39b03d6
modules/client/sync/rooms: Don't skip sync routines based on room head index.
2019-01-25 17:03:29 -08:00
Jason Volk
33601e88a1
modules/client/sync: Increase default fibers for now; relax assertion.
2019-01-25 16:32:26 -08:00
Jason Volk
d64a49428e
ircd: Ⓜ️ Demote membership from top-level key; remove from m::event tuple.
2019-01-24 12:52:26 -08:00
Jason Volk
e2431a3f18
modules/client/sync: Use better ctx::parallel interface for non-trivial arguments.
2019-01-21 12:40:40 -08:00
Jason Volk
af3fe14e6d
modules/client/sync/rooms: Checkpoint.
2019-01-18 14:54:04 -08:00
Jason Volk
c5598ed60a
modules/client/sync/rooms/state: Use post-fetch key filter here for now; checkpoint.
2019-01-16 18:39:40 -08:00
Jason Volk
c3dcd5f586
modules/client/sync/rooms/state: Add fetch options w/ json request.
2019-01-16 16:46:01 -08:00
Jason Volk
f857e25ea7
ircd: Ⓜ️ :event: Add a source json::object as a member.
2019-01-16 14:35:10 -08:00
Jason Volk
5ae495031f
ircd: Ⓜ️ :event::fetch: Improve fetch options related; minor cleanup.
2019-01-16 12:19:25 -08:00
Jason Volk
8421dd46b6
modules/client/register: Support the inhibit_login option.
2019-01-12 12:34:34 -08:00
Jason Volk
0f6363f3e5
modules/client/register: Fix flows regression; minor cleanup.
2019-01-12 12:33:00 -08:00
Jason Volk
3a3dfe40d1
modules/client: Implement the register/available endpoint.
2019-01-12 11:51:57 -08:00
Jason Volk
ba5701acca
modules/client/sync: Improve parallel; comments; dynamic memory for large buffers.
2019-01-11 17:41:23 -08:00
Jason Volk
56b1e760cf
modules/client/sync/rooms: Create a directory for ephemeral.
2019-01-11 13:58:23 -08:00
Jason Volk
11f905274e
modules/client: Use the event::idx sequence difference for unsigned.age.
2019-01-10 16:58:44 -08:00
Jason Volk
86ae182f64
modules/client/sync: Fix rooms.ephemeral item.
2019-01-10 16:58:44 -08:00
Jason Volk
4c495e1f44
modules/client/sync: Various cleanup / simplify.
2019-01-10 16:58:37 -08:00
Jason Volk
2d860b25a8
ircd: Ⓜ️ :sync: Checkpoint.
2019-01-09 20:39:12 -08:00
Jason Volk
443905859f
ircd: Ⓜ️ :sync: Additional abstraction; checkpoint polylog /sync modules.
2019-01-08 17:17:41 -08:00
Jason Volk
af6fcb24f4
modules/client/sync: Add a README to the /sync directory.
2019-01-08 12:51:06 -08:00
Jason Volk
61e88e75bc
modules/client/sync: Additional sync items reorganization.
2019-01-04 14:47:01 -08:00
Jason Volk
86911226ed
ircd: Ⓜ️ Preliminary modular client sync system.
2019-01-03 17:21:02 -08:00
Jason Volk
3fd61ba361
modules/client/sync: Prefetching defaults to false for now.
2018-12-23 17:41:47 -08:00
Jason Volk
36c1b359ab
modules/client/sync: Optimize the room state iteration strategy.
2018-12-19 15:05:07 -08:00
Jason Volk
6de17431ff
ircd: Reverse arguments for url::encode()/decode(); minor reorg.
2018-12-06 16:41:47 -08:00
Jason Volk
f44f1cf89d
modules/client/sync: Fix sync timeout behavior.
2018-12-01 17:23:42 -08:00
Jason Volk
0da335c03c
modules/client/sync: Minor hackstops for now.
2018-11-15 18:39:51 -08:00
Jason Volk
d49b3ba7dd
ircd::resource: Minor reorg class layout / opts.
2018-11-05 19:14:53 -08:00
Jason Volk
13bea46f34
modules/client/sync: Ensure response buffer scales with large flush watermark values.
2018-11-04 18:11:55 -08:00
Jason Volk
c6e2dbe55b
modules/client/sync: Use conf item for linear vs. polylog threshold.
2018-11-04 18:11:37 -08:00
Jason Volk
8ab9d74218
modules/client/publicrooms: Unify GET and POST handlers; remove cruft.
2018-10-24 18:08:46 -07:00
Jason Volk
18f46bccd7
modules/client/publicrooms: Update endpoint for server and pagination keying.
2018-10-24 18:08:46 -07:00
Jason Volk
e85917abb1
ircd: Ⓜ️ :rooms: Add public rooms count for total_room_count_estimate; cleanup.
2018-10-24 17:31:21 -07:00
Jason Volk
f7c7850465
ircd: Ⓜ️ :rooms: Add and use interface for publicrooms iteration.
2018-10-24 17:31:21 -07:00
Jason Volk
62177dca20
modules: Start an m_rooms unit; move publicrooms summary chunk generation.
2018-10-24 17:31:21 -07:00
Jason Volk
002dea97ec
modules/client/user: Move user create to m_user.
2018-10-23 13:22:08 -07:00
Jason Volk
242516c853
ircd: Ⓜ️ Add central interface for room state prefetch; add console cmd; apply to client sync.
2018-10-23 10:01:36 -07:00
Jason Volk
5a9c264981
modules/client/sync: Promote polylog stats overview log message to infolog.
2018-10-21 00:24:26 -07:00
Jason Volk
8ed4dc9623
modules/client/sync: Add some stats and debug log to sync.
2018-10-18 07:46:53 -07:00
Jason Volk
18977fabe1
modules/client/sync: Condition on conf items for prefetches of polylog state/timeline.
2018-10-16 09:13:53 -07:00
Jason Volk
0843ff5f79
modules/client/sync: Checkpoint some structural changes.
2018-10-14 03:58:26 -07:00
Jason Volk
11818f6c3e
modules/client/sync: Minor simplify.
2018-10-09 21:34:58 -07:00
Jason Volk
9aa6e2b768
ircd: Ⓜ️ Rename most vm.notify hooks to vm.effect; Refactor vm::accept related.
2018-10-09 20:56:12 -07:00
Jason Volk
d5c3724428
modules/client/sync: Fix index minmax for stable notification counting.
2018-09-27 00:59:17 -07:00
Jason Volk
64ccbea79d
ircd: Ⓜ️ :room: Refactor out remaining "test protocol" iterations from state interface.
2018-09-25 16:02:19 -07:00
Jason Volk
8ce3325905
modules/client/sync: Catch and drop exception around account_data.
2018-09-22 16:01:10 -07:00
Jason Volk
46cb5aee41
modules/m_typing: Move non-handler related from client/rooms/typing.
2018-09-16 20:55:12 -07:00
Jason Volk
17e137f52a
modules/client/sync: Ensure indexes are a < b.
2018-09-15 19:32:16 -07:00
Jason Volk
a7dbc8e882
modules/client/sync: Add highlight count to sync; reintegrate notification count.
2018-09-14 07:34:05 -07:00
Jason Volk
6c629d3d89
modules: Fix various m::edu related improper typecasts.
2018-09-13 06:39:04 -07:00
Jason Volk
2eb55ea3a4
modules/client/sync: Hack patch for longpoll/linear sync events routing to the proper rooms.membership structure.
2018-09-13 02:05:16 -07:00
Jason Volk
0695584d2c
modules/client/sync: Support notification_count.
2018-09-12 22:32:00 -07:00
Jason Volk
f24d51c38d
modules/client/sync: The structure sent from a longpoll has no need for a state
, only timeline
.
2018-09-06 23:08:20 -07:00
Jason Volk
85aef85f61
ircd: Ⓜ️ :vm: Support client unsigned.transaction_id.
2018-09-05 20:16:01 -07:00
Jason Volk
2e96d6fe3b
modules/client/rooms/join: Add conf items for bootstrap timeouts.
2018-09-04 23:19:26 -07:00
Jason Volk
58d9bd7ca1
modules/client/rooms/initial_sync: Remove this trash and stub again.
2018-09-04 23:15:37 -07:00
Jason Volk
4f2e1a4acd
modules: Reduce various chunked json buffer mgmt boilerplates.
2018-09-04 22:48:23 -07:00
Jason Volk
660bfcc03f
modules/client/publicrooms: Implement queries for POST version.
2018-09-04 22:41:53 -07:00
Jason Volk
c7f211bb18
modules/client/publicrooms: Update stub; restructure POST w/ chunked json.
2018-09-04 22:15:05 -07:00
Jason Volk
d4a3b3c91d
modules/client/directory/room: Add conf items for alias related.
2018-09-04 21:12:47 -07:00
Jason Volk
f4607904d2
modules/client/rooms/context: Optimize queries with fetch options.
2018-09-03 02:35:11 -07:00
Jason Volk
455ba69b76
modules/client/rooms/context: Visibility check on the state events.
2018-09-03 02:24:22 -07:00
Jason Volk
3be110d6ca
modules/client/sync: Add prefetching for some polylog sync iterations.
2018-09-01 07:15:03 -07:00
Jason Volk
96363a527d
modules/client/sync: Simplify stack arguments; addl cleanup.
2018-09-01 07:15:02 -07:00
Jason Volk
4819112f54
modules/client/sync: Checkpoint preliminary sync reorg.
2018-09-01 00:51:40 -07:00
Jason Volk
89afac86a2
modules/client/rooms/messages: Select default event keys for now.
2018-08-18 22:05:32 -07:00
Jason Volk
8d5229d67d
modules/client/sync: Add room account_data to polylog sync.
2018-06-19 21:52:08 -06:00
Jason Volk
7d4eb46a1a
ircd: Ⓜ️ Interface/linkage to generate room account_data type string.
2018-06-19 21:47:26 -06:00
Jason Volk
6d81f355dc
modules/client/user/rooms: Support room account data.
2018-06-19 21:32:29 -06:00
Jason Volk
15e44463c3
modules/client: Stub joined_groups to shutup Riot.
2018-06-17 21:34:03 -06:00
Jason Volk
f5b73ce0c4
modules/client/rooms/invite: Fix linkage for invite__foreign routine.
2018-06-12 01:00:15 -07:00
Jason Volk
59a39caca3
modules/client/keys: Checkpoint 0-count keys for now.
2018-06-12 01:00:15 -07:00
Jason Volk
d659b7eaf5
modules/client/rooms/join: Checkpoint bootstrapped join related for now.
2018-06-12 01:00:15 -07:00
Jason Volk
7234f62b6c
modules/client/rooms/kick: Implement kick convenience endpoint.
2018-06-12 01:00:15 -07:00
Jason Volk
51d657a533
modules/client/register: Distill for extern linkage; add granular conf items.
2018-06-07 13:20:46 -07:00
Jason Volk
de07d32afd
ircd/modules: Update various conditional json::iov nodes.
2018-06-05 11:19:40 -07:00
Jason Volk
95f14503cf
modules/client/rooms/state: Add conditional event.member for member events.
2018-06-04 23:17:56 -07:00
Jason Volk
9028b1350a
modules/client/rooms/messages: Add visibility conditionals.
2018-05-31 05:45:29 -07:00
Jason Volk
9496f042b3
modules/client/rooms/context: Add event visibility conditionals.
2018-05-31 04:49:21 -07:00
Jason Volk
5d471b51b8
modules/client/rooms: Implement context endpoint.
2018-05-31 03:24:07 -07:00
Jason Volk
f37e090233
modules/client/rooms/receipt: Support read.ignore for rooms and senders; update console cmd.
2018-05-30 13:32:27 -07:00
Jason Volk
52767c836f
modules/client: Stub search endpoint.
2018-05-29 04:01:36 -07:00
Jason Volk
2ba495eb8b
modules/m_presence: Move some externs from client/presence; update linkages.
2018-05-28 01:31:45 -07:00
Jason Volk
88d3026cc7
ircd: Ⓜ️ :vm: More granular notification broadcast options.
2018-05-27 19:56:04 -07:00
Jason Volk
0d833cda4f
ircd: Ⓜ️ Add templated payload for hook.
2018-05-26 22:12:11 -07:00
Jason Volk
9a697783a9
modules/client/rooms/receipt: Add feature to not send read receipts to certain users.
2018-05-26 05:28:49 -07:00
Jason Volk
05147794c8
modules/client/rooms/receipt: Add log message for the local commit path.
2018-05-26 04:24:12 -07:00
Jason Volk
7bfe9e94a1
ircd::db: Default to no checksums on all reads; add conf item; adjust opts.
2018-05-23 18:45:27 -07:00
Jason Volk
53ba8dafcc
modules/client/sync: Add some default fopts.
2018-05-22 01:13:38 -07:00
Jason Volk
ca1fbfec55
modules/client/rooms/receipt: Add committal from the receipt post handler.
2018-05-21 00:01:28 -07:00
Jason Volk
3774b61cb8
modules/client/register: Add conf item to enable/disable registration.
2018-05-20 18:39:33 -07:00
Jason Volk
6bacfb6cb7
modules/client/register: Remove the first user thing.
2018-05-20 18:39:33 -07:00
Jason Volk
c88ce8168b
Revert "ircd: Ⓜ️ Convert hook to template."
...
This reverts commit 915076296f
.
2018-05-20 18:39:32 -07:00
Jason Volk
47e5e94ac1
modules/client/sync: Ignore errs for graceful degradation w/o killing entire polylog sync.
2018-05-19 18:49:06 -07:00
Jason Volk
631020d932
modules/client/sync: Force next_batch values to be quoted strings.
2018-05-19 18:49:06 -07:00
Jason Volk
bf6b50348a
modules/client/pushrules: Update stub to be a directory.
2018-05-19 18:49:06 -07:00
Jason Volk
97f38507e0
modules: Move state rebuild from client/state to s_state.
2018-05-19 18:49:05 -07:00
Jason Volk
915076296f
ircd: Ⓜ️ Convert hook to template.
2018-05-19 18:49:04 -07:00
Jason Volk
163fc25790
modules/client/sync: Use real exception handler; fix polylog call; fix presence key; unlocker.
2018-05-19 18:49:04 -07:00
Jason Volk
f79000b18d
modules/client/sync: Add flush high-watermark conf item.
2018-05-19 18:49:04 -07:00
Jason Volk
5590238b1f
modules/client/rooms: Add a state reindexer routine.
2018-05-19 18:49:03 -07:00
Jason Volk
9e1dd0abe1
modules/client/rooms/messages: Count filter misses w/ conf limit; fix alloc size.
2018-05-19 18:49:03 -07:00
Jason Volk
1d7fce8368
ircd: Ⓜ️ Reorg filter interface and linkage related.
2018-05-19 18:49:02 -07:00
Jason Volk
3ec5df018a
modules/client/rooms/messages: Add filtered messages pagination.
2018-05-19 18:49:02 -07:00
Jason Volk
08c3058fbc
ircd: Ⓜ️ :vm: Rename some commit opts.
2018-05-19 18:49:02 -07:00
Jason Volk
c14f268559
ircd: Ⓜ️ ADL the event::fetch::index() suite.
2018-05-09 16:38:11 -07:00
Jason Volk
369582339a
modules/client/rooms/receipt: Handle all errors; fixes missing event exceptions.
2018-05-08 19:01:11 -07:00
Jason Volk
68c863e7f9
ircd: Ⓜ️ :vm: Reorg commit stack; move room commit thing to m::vm.
2018-05-06 18:02:33 -07:00
Jason Volk
003ecf6357
ircd: Remove / update various ctx::interrupted catch blocks for ctx::terminated.
2018-05-06 02:06:08 -07:00
Jason Volk
7f4716c5e5
modules/client/sync: Use a real error log message on polylog sync backout.
2018-05-03 20:11:16 -07:00
Jason Volk
fb96f017b7
modules/client/rooms/messages: Chunk direct to socket.
2018-04-30 10:40:52 -07:00
Jason Volk
16f16678d8
modules/m_receipt: Shuffle around elements of the receipt vector.
2018-04-28 02:46:11 -07:00
Jason Volk
25d6c4d521
modules/client/presence: Stub my user's presence changed hook.
2018-04-27 15:27:09 -07:00
Jason Volk
70f962de4e
ircd: Ⓜ️ Elaborate presence interface to fetch full event from user's room.
2018-04-27 15:26:17 -07:00
Jason Volk
e6b06a4522
modules/client/profile: Return 200 rather than 304 for put profile dups.
2018-04-26 03:51:15 -07:00
Jason Volk
6aebe1f01e
modules/client/presence: Make redundant status return normally.
2018-04-23 19:17:03 -07:00
Jason Volk
d534ee8afa
modules/client/presence: Check for redundant status updates from client.
2018-04-23 17:50:47 -07:00
Jason Volk
f9e449dbf5
modules/client/presence: Various cleanup/reorg.
2018-04-23 17:20:00 -07:00
Jason Volk
5b8b35a7c6
modules/client/profile: Nothrow for the existing value check on profile update.
2018-04-23 01:58:54 -07:00
Jason Volk
18e9c792be
modules/client/sync: Handle timeout from acceptor dock.
2018-04-22 21:54:06 -07:00
Jason Volk
87bd9bc429
ircd: Ⓜ️ Add conf init sequence for m::self related.
2018-04-22 15:18:05 -07:00
Jason Volk
246e20d624
modules/client/rooms/initialsync: Use a conf item here fwiw.
2018-04-21 23:55:27 -07:00
Jason Volk
6dfe99e8e2
modules/publicrooms: Checkin the argument parsing half of this stub.
2018-04-21 23:53:36 -07:00
Jason Volk
5f2e8056d9
modules/client/sync: Checkpoint synchronous longpoll / polylog / prelim linear.
2018-04-21 23:50:16 -07:00
Jason Volk
bd3e004d70
modules/client/profile: Duplicate check for client put; extended timeout.
2018-04-21 17:28:48 -07:00
Jason Volk
3d5c8a5a2f
modules/m_receipt: Deconflict receipt user_room type; add usefulness detection.
2018-04-21 16:52:19 -07:00
Jason Volk
d031d7eec5
modules/client/profile: Update profile for all rooms hook.
2018-04-21 15:45:49 -07:00
Jason Volk
02bc9032e8
ircd: Ⓜ️ Add event::idx to top() tuple.
2018-04-18 15:04:46 -07:00
Jason Volk
7659ef3acc
ircd: Ⓜ️ Reorder top() tuple; use strong type template std::get'ers.
2018-04-18 15:03:42 -07:00
Jason Volk
7f3919dd17
ircd: Ⓜ️ Split events iterations into namespace.
2018-04-18 01:25:54 -07:00
Jason Volk
5b09cdc264
modules/client: Stub various lies to quiet errors in Riot.
2018-04-17 01:15:30 -07:00