Jason Volk
1381524f95
ircd: Ⓜ️ :device: Add has(user, device_id, property) overload to interface suite.
2019-03-09 18:48:32 -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
5cbc35298d
modules/console: Allow empty string value param to conf set cmd.
2019-03-09 17:21:09 -08:00
Jason Volk
45840a3393
modules/console: Use dynamic for tokenization here.
2019-03-09 16:45:42 -08:00
Jason Volk
9981ab7b12
modules/m_presence: Add named logger for presence.
2019-03-09 16:05:45 -08:00
Jason Volk
db8c91661e
ircd::log: Increase the logger name width.
2019-03-09 16:05:45 -08:00
Jason Volk
ce8824a1bd
modules/client/sync/rooms: Reenable per-room debug stats.
2019-03-09 15:17:21 -08:00
Jason Volk
197168059b
ircd: Ⓜ️ :vm: Create a conform hook; move checks into conform hookfns.
2019-03-09 14:00:00 -08:00
Jason Volk
e501c6434a
modules/vm: Rename commit hook to issue hook; add opts toggle.
2019-03-09 12:13: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
79eed85397
modules/vm: Add a post-write pre-notify hook site.
2019-03-09 12:08:05 -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
2b1c6682e6
modules/m_receipt: Remove the m.receipt eval for client syncs; ircd.read is used instead.
2019-03-08 14:19:04 -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
9028f63d35
modules: Add preliminary prometheus metrics endpoint.
2019-03-08 12:31:08 -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
7ea83597e5
modules/media: Assert and condition remote download request isn't for my_host().
2019-03-07 15:11:27 -08:00
Jason Volk
80743b2fd5
modules/media: Throw better http codes for downloading media.
2019-03-07 15:11:27 -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
faf0914f23
modules/console: Add cmd to trigger m::user::profile::fetch().
2019-03-06 18:17:32 -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
654901d7df
modules/vm: Include empty auth_events array in create event rather than undefined.
2019-03-06 15:02:43 -08:00
Jason Volk
90752f1fb4
modules/federation/send_join: Add required spec "origin" in response.
2019-03-06 15:02:43 -08:00
Jason Volk
0c38d78bba
modules/federation/send_leave: Respond with so-called empty response.
2019-03-06 15:02:43 -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
85c041c27b
ircd: Ⓜ️ :room Update version query based on spec room version grammar (string type).
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
09c2d7cbe5
modules/federation: Minor cleanup/simplification.
2019-03-06 00:22:18 -08:00
Jason Volk
c2966275c6
ircd: Ⓜ️ :room::head: Improve interface/linkage for head utils / prev_events generation.
2019-03-06 00:22:18 -08:00
Jason Volk
1a1939e2c7
ircd: Ⓜ️ :room::auth: Improve interface/linkage for auth_events generation.
2019-03-06 00:22:18 -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
9e884b326d
modules/webhook: Handle github issue_comment / created action.
2019-03-05 15:23:15 -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
bbaf38937b
ircd: Ⓜ️ :room::power: Add util to generate spec-default power_levels content.
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
025313b6fe
modules/webhook: Handle github issue labeled.
2019-03-05 11:14:29 -08:00
Jason Volk
6be111ac0b
Revert "modules/m_room_member: Remove membership rule on can_join hook."
...
This reverts commit 6d6fb8b0d3
.
2019-03-05 08:51:00 -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
6d6fb8b0d3
modules/m_room_member: Remove membership rule on can_join hook.
2019-03-04 12:52:13 -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
d70e46718b
modules/federation: Remove these unnecessary checks.
2019-03-03 16:49:51 -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
bfb2efc1ac
modules/federation/send_join: Improve response; include proper auth_chain.
2019-03-03 15:45:43 -08:00
Jason Volk
aa6b8352da
modules/federation/query: Respond with full profile when no field query parameter.
2019-03-03 14:45:18 -08:00
Jason Volk
81127045b0
modules/console: Add certificate_chain_path parameter to net listen cmd.
2019-03-03 13:57:29 -08:00
Jason Volk
55c08f08ae
modules/console: Print more information with crt cmd.
2019-03-03 13:46:27 -08:00
Jason Volk
8331fd0890
modules/s_keys: Fix valid_until_ts generation.
2019-03-03 13:41:40 -08:00
Jason Volk
80bc6236d5
modules/console: Add milliseconds epoch to date cmd output; fix key create cmd name.
2019-03-03 13:31:09 -08:00
Jason Volk
69210c64be
modules/s_keys: Reduce milliseconds epoch to seconds.
2019-03-03 13:08:10 -08:00
Jason Volk
86a946ab89
modules/console: Add certificate diagnostic cmd.
2019-03-03 12:31:23 -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
a21e03df27
ircd: Add restart support w/ console cmd.
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
c8bce8e251
ircd: Ⓜ️ :rooms: Add is_public() test if listed in !public.
2019-03-01 14:51:30 -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
70a47c98b1
ircd: Reduce several strict-overflow & related warnings.
2019-03-01 11:35:07 -08:00
Jason Volk
b15fd581c7
modules/console: Improve parameters for file download cmd.
2019-03-01 10:16:31 -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
eb17327f61
modules/vm: Add conf items for debuglog/infolog accept msgs; minor cleanup.
2019-02-28 17:12:04 -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
66249c620f
ircd: Ⓜ️ :room::state: Add central interface linkage for state utils.
2019-02-28 17:12:04 -08:00
Jason Volk
c0009a0745
ircd: Ⓜ️ Add central linkage for is_complete(room).
2019-02-28 17:12:03 -08:00
Jason Volk
43b8ea9de7
ircd: Ⓜ️ :room::origins: Improve origins::random import definition.
2019-02-28 17:12:03 -08:00
Jason Volk
7bcc40f13f
ircd: Ⓜ️ Fix count_since prototype; upgrade definition.
2019-02-28 17:12:03 -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
2192ee4f89
modules/m_receipt: ircd.read messages don't need to go to clients.
2019-02-27 18:28:32 -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
b9cf3e6c18
modules/federation/send: Disable notifies for edu evals.
2019-02-27 18:07:38 -08:00
Jason Volk
9e063bbf83
ircd::resource: Add a pending request counter; block destruction of method when pending.
2019-02-27 17:49:40 -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
70e0fe221f
modules/m_event: Improve pretty_oneline(); add timestamp.
2019-02-26 10:44:56 -08:00
Jason Volk
92371040af
modules/m_event: Move essential() definitions; minor reorg.
2019-02-26 10:28:30 -08:00
Jason Volk
2854ea9a0f
Makefiles: Remove --gdb-index here because no -gsplit-dwarf used.
2019-02-25 18:20:48 -08:00
Jason Volk
f3d4e27b24
ircd: Ⓜ️ :room: Start a room statistics interface.
2019-02-25 18:20:48 -08:00
Jason Volk
6f7fc0a837
ircd::db: Add interface to query size of key in column.
2019-02-25 18:17:01 -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
e3a6e55808
ircd: Ⓜ️ :device: Add unrestricted set() overload.
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
80ecb903cc
modules/webroot: Return 404 before any 405 for non-existent resources.
2019-02-24 15:12:31 -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
8dbd0ae829
modules/console: Add fed user keys claim cmd.
2019-02-22 15:40:53 -08:00
Jason Volk
08c38b2251
modules/m_direct_to_device: Tweak logic for local message handling; handle exception per msg.
2019-02-22 15:40:53 -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
456a3fcc49
modules/federation/send: Allow conf item to control self-send protection.
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
190662f16d
modules/federation/sender: Hack other send targets carried in event's room_id.
2019-02-22 15:40:53 -08:00