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

1032 commits

Author SHA1 Message Date
Jason Volk
83dd5581be ircd:Ⓜ️ Workaround comparison operator resolution and others for clang. 2019-06-24 02:22:55 -06:00
Jason Volk
37760fe251 ircd:Ⓜ️:keys: Improve key query and cache loop. 2019-06-23 16:27:37 -07:00
Jason Volk
c2f86a8094 ircd:Ⓜ️:keys: Distill out expiration test from verification test. 2019-06-23 16:22:15 -07:00
Jason Volk
fcbd31f672 ircd:Ⓜ️:keys: Add an iteration over node's cached keys. 2019-06-23 15:50:02 -07:00
Jason Volk
805f2c1184 ircd:Ⓜ️:user: Tentative fixes for clang rejection of std::string_view::size() constexprness. 2019-06-23 07:37:23 -06:00
Jason Volk
53ea7b8658 ircd:Ⓜ️:feds: Add send operation to feds suite.
modules/console: Update console for feds resend.
2019-06-22 20:03:58 -07:00
Jason Volk
a67f134a6b ircd:Ⓜ️ Partial migration of m::node to module; modernize legacy extern "C". 2019-06-21 21:02:38 -07:00
Jason Volk
4093dc2f85 ircd:Ⓜ️:self::init: Fix keys init; prevent libircd as dependency for module. 2019-06-21 20:29:26 -07:00
Jason Volk
b7023a6dc7 ircd:Ⓜ️ Reorg keys related interfaces and init. 2019-06-21 16:41:43 -07:00
Jason Volk
133b2605c6 ircd:Ⓜ️:dbs: Generalize the reflection for M_RELATES event_refs related. 2019-06-21 16:32:15 -07:00
Jason Volk
75c125e8aa ircd:Ⓜ️:rooms: Expose fetcher in interface; internal cleanup. 2019-06-17 23:05:31 -07:00
Jason Volk
f24c7c2e82 ircd:Ⓜ️:rooms: Simplify interface. 2019-06-17 16:57:00 -07:00
Jason Volk
4f741960a0 ircd:Ⓜ️:room::state: Reconnect !present() branch with state::history. 2019-06-16 02:18:04 -07:00
Jason Volk
24ce076c3d ircd:Ⓜ️:room::state: Add state::history interface derived from state::space. 2019-06-16 02:17:47 -07:00
Jason Volk
b5a61a7a6b ircd:Ⓜ️:room::state::space: Improve interface; fixes. 2019-06-16 01:00:47 -07:00
Jason Volk
493bd85c11 ircd:Ⓜ️:dbs: Add additional room state space key overload. 2019-06-15 15:20:00 -07:00
Jason Volk
390b8bf2fb ircd:Ⓜ️ Remove remaining vestiges of m::state.
closes #15.
2019-06-15 14:10:36 -07:00
Jason Volk
b78ea359b6 ircd::db: Rename db::index to db::domain; fix userspace. 2019-06-11 12:57:52 -07:00
Jason Volk
8e0ac58987 ircd:Ⓜ️:room: Expose bootstrap to interface. 2019-06-07 04:56:23 -07:00
Jason Volk
5afa11baca ircd:Ⓜ️:init: Improve exception propagation and abortive shutdown. 2019-06-06 19:41:48 -07:00
Jason Volk
f1b0ba8648 ircd:Ⓜ️:dbs: Involve the servername in the database path.
Fixes #75.
2019-06-06 18:47:44 -07:00
Jason Volk
475ee3867d ircd:Ⓜ️:event::horizon: Split the full column iteration into separate function. 2019-06-04 21:21:21 -07:00
Jason Volk
f5df386e1c ircd:Ⓜ️:fetch: Add a request count() to interface. 2019-06-04 18:50:17 -07:00
Jason Volk
b570497e75 ircd:Ⓜ️:vm: Improve aggregated eval loop. 2019-06-01 18:38:07 -07:00
Jason Volk
dd49243224 ircd:Ⓜ️:event: Add explicit event::id conversion. 2019-06-01 18:31:57 -07:00
Jason Volk
9661db89af ircd:Ⓜ️:events: Move file dumper to module. 2019-06-01 00:09:03 -07:00
Jason Volk
b403fbc421 ircd:Ⓜ️:events: Add event type name iteration.
ircd:Ⓜ️:events: Add sender name iteration.

ircd:Ⓜ️:events: Add origin name iteration.
2019-05-27 16:37:29 -07:00
Jason Volk
bab9d9d033 modules/vm: Create a general vm.access hook; move server_acl to module hookfn. 2019-05-26 21:00:54 -07:00
Jason Volk
25dd717b7e ircd:Ⓜ️:room::server_acl: Add a noexcept convenience check. 2019-05-26 20:25:15 -07:00
Jason Volk
eec6c40653 ircd:Ⓜ️ Abort the experimental id::node. 2019-05-26 19:13:20 -07:00
Jason Volk
1354066e3d modules/m_room_server_acl: Disregard port for comparison; improve docs; ctor. 2019-05-26 18:37:40 -07:00
Jason Volk
e038ebfaf1 ircd:Ⓜ️:room: Remove stale comments.
modules/vm: Minor cleanup.
2019-05-26 02:49:24 -07:00
Jason Volk
6baff99607 modules/m_room_server_acl: Optimize implementation IO. 2019-05-25 23:08:17 -07:00
Jason Volk
a44e491054 ircd:Ⓜ️:room: Add server_acl interface and protocol module. 2019-05-25 20:12:41 -07:00
Jason Volk
f02a1a2be6 ircd:Ⓜ️:vm: Relax fetch_prev_any enforcement by default. 2019-05-19 15:22:49 -07:00
Jason Volk
ea14caa95a ircd:Ⓜ️:dbs: Update comment for event_refs enum. 2019-05-19 15:11:58 -07:00
Jason Volk
c119c84c2f ircd:Ⓜ️:event: Augment event::horizon interface allowing full column iteration. 2019-05-17 02:26:27 -07:00
Jason Volk
5721920957 ircd:Ⓜ️:event: Start an event::horizon interface around dbs::event_horizon. 2019-05-17 00:07:18 -07:00
Jason Volk
2b011d80df ircd:Ⓜ️:dbs: Make indexers internal. 2019-05-15 21:12:59 -07:00
Jason Volk
304c6df468 ircd:Ⓜ️:dbs: Simplify indexers / interface. 2019-05-13 15:25:37 -07:00
Jason Volk
758a266b1b ircd:Ⓜ️:dbs: Rename room_space to room_state_space. 2019-05-13 12:37:00 -07:00
Jason Volk
614b9202fc ircd:Ⓜ️:room: Add state::space interface w/ console cmd. 2019-05-13 10:30:12 -07:00
Jason Volk
d1425da434 ircd:Ⓜ️:dbs: Typedef a tuple for room_space key; conditions for truncated key generation. 2019-05-13 10:19:18 -07:00
Jason Volk
e486d8907e ircd:Ⓜ️;dbs: Add _room_space metadata column. 2019-05-11 17:48:35 -07:00
Jason Volk
3293443cb8 ircd:Ⓜ️:vm: Add dbs::write_opts to vm::opts. 2019-05-11 15:30:40 -07:00
Jason Volk
6fe7329189 ircd:Ⓜ️:dbs: Rename room_head_refs to room_head_resolve. 2019-05-11 15:30:23 -07:00
Jason Volk
5af3d3a4f2 ircd:Ⓜ️:dbs: Add column layout key next to includes for quick reference. 2019-05-11 14:56:09 -07:00
Jason Volk
dc1b5f6881 ircd:Ⓜ️:dbs: Unsplit appendix.h and write_opts.h for better interface in dbs.h 2019-05-11 14:44:08 -07:00
Jason Volk
838ad51b05 ircd:Ⓜ️:dbs: Make blacklist a write option rather than API call. 2019-05-11 14:44:08 -07:00
Jason Volk
305e02db7c ircd:Ⓜ️:dbs: Split into headers by column. 2019-05-11 14:39:16 -07:00
Jason Volk
3ec009bf6d ircd:Ⓜ️ Rename function. 2019-05-10 00:20:02 -07:00
Jason Volk
c311a69c7b ircd:Ⓜ️:room: Add sounding iteration. 2019-05-10 00:06:17 -07:00
Jason Volk
f044b447e2 ircd:Ⓜ️:dbs: Split event_refs related into file. 2019-05-09 23:20:33 -07:00
Jason Volk
62f1b5a539 ircd:Ⓜ️:dbs: Rename and document various ref types. 2019-05-09 23:13:16 -07:00
Jason Volk
a331bc2882 ircd:Ⓜ️:dbs: Add interposing system for transaction self-references. 2019-05-09 21:53:12 -07:00
Jason Volk
61ff45214c ircd:Ⓜ️:dbs: Add missing prefix key creation overload. 2019-05-09 21:53:12 -07:00
Jason Volk
d81612a724 ircd:Ⓜ️ Checkpoint blerb rework. 2019-05-09 18:33:02 -07:00
Jason Volk
2d209388c1 ircd:Ⓜ️:dbs: Add event_horizon resolver. 2019-05-09 16:58:29 -07:00
Jason Volk
ed3a7343cf ircd:Ⓜ️:dbs: Add the event_horizon column. 2019-05-09 00:02:33 -07:00
Jason Volk
a8a6e1039d ircd:Ⓜ️:dbs: Split header into directory. 2019-05-08 21:53:04 -07:00
Jason Volk
47f496a155 ircd:Ⓜ️:room::timeline: Checkpoint initial interface. 2019-05-07 16:10:24 -07:00
Jason Volk
180c83634f ircd:Ⓜ️:dbs: Reorg write_opts; throw panic on nul event_idx; various. 2019-05-07 16:10:24 -07:00
Jason Volk
9d5f0049cf ircd:Ⓜ️:dbs: Reorg the indexer conditions. 2019-05-07 15:14:10 -07:00
Jason Volk
8e90f8de5d ircd:Ⓜ️:room::state: Add convenience to check if state event. 2019-05-06 20:47:12 -07:00
Jason Volk
6c43a47d87 ircd:Ⓜ️:room::messages: Add event_idx convenience conversion. 2019-05-06 14:36:49 -07:00
Jason Volk
d74985d3f9 ircd:Ⓜ️ Move event.h/room.h headers into their dirs. 2019-05-02 21:43:27 -07:00
Jason Volk
04e5e44c98 ircd:Ⓜ️:event: Use direct reference initialization for constexprs here. 2019-05-02 15:35:26 -07:00
Jason Volk
77a92a1874 modules/s_keys: Reorg free functions into namespace; various cleanup. 2019-05-01 15:40:17 -07:00
Jason Volk
a5f26db7ea modules/s_fetch: Split hook handler into auth and prev related subroutines. 2019-04-30 14:14:08 -07:00
Jason Volk
64770c0214 ircd:Ⓜ️:event::prev: Add suite to check if prev reference exists; minor cleanup. 2019-04-29 11:06:56 -07:00
Jason Volk
73ea2ff156 ircd:Ⓜ️:event: Add comment \brief's to prev and refs interfaces. 2019-04-29 10:59:33 -07:00
Jason Volk
17a9763da6 ircd:Ⓜ️:event::prev: Use size_t indexing rather than uint. 2019-04-29 10:57:43 -07:00
Jason Volk
80fb8699a1 ircd:Ⓜ️ Add a membership string size constant. 2019-04-27 18:32:45 -07:00
Jason Volk
425385265a ircd:Ⓜ️:room::origins: Minor reorg for_each. 2019-04-27 18:32:45 -07:00
Jason Volk
10b8e1d08b ircd:Ⓜ️:event::fetch: Relax object semantics. 2019-04-26 05:30:21 -07:00
Jason Volk
05306b2ce7 ircd:Ⓜ️ Minor formatting fix; remove stale comment. 2019-04-26 03:23:09 -07:00
Jason Volk
e5563586cf ircd:Ⓜ️ Additional room sounding tools; improve console cmd. 2019-04-26 01:47:13 -07:00
Jason Volk
486ca09153 ircd:Ⓜ️ Replace is_complete w/ sounding(); console cmd. 2019-04-26 01:35:39 -07:00
Jason Volk
ba797778d6 ircd:Ⓜ️ Provide event_idx for event after gap to closure. 2019-04-26 01:35:38 -07:00
Jason Volk
e3e9322718 ircd:Ⓜ️ Add a room depth gap sounding suite w/ console cmd. 2019-04-26 01:35:16 -07:00
Jason Volk
f26fc85b0a ircd:Ⓜ️:error: Add convenience getters for properties. 2019-04-25 23:35:46 -07:00
Jason Volk
541d95f47e ircd:Ⓜ️:v1: Add ids_only to event_auth opts. 2019-04-24 17:43:03 -07:00
Jason Volk
d18711503f ircd:Ⓜ️ Unsplit event/event.h room/room.h. 2019-04-22 21:38:27 -07:00
Jason Volk
f6314a4201 modules/s_fetch: Minor reorg; pass room arg to fetch::synchronize(). 2019-04-22 12:45:45 -07:00
Jason Volk
e3b1be2910 ircd:Ⓜ️:vm: Refactor various fetch related options. 2019-04-22 12:27:43 -07:00
Jason Volk
56dd0ed8e7 ircd:Ⓜ️:vm: Add opts to pass user_id/node_id of evaluator. 2019-04-22 12:25:50 -07:00
Jason Volk
b683f1d436 modules/vm: Assert options; prevent assignment of eval. 2019-04-22 12:23:37 -07:00
Jason Volk
21a62019f2 modules/vm: Simplify error wrapping on propagation. 2019-04-20 15:03:51 -07:00
Jason Volk
c7a872c67a ircd:Ⓜ️🪝 Add accounting for hook calls; site/hook current call count. 2019-04-18 21:52:33 -07:00
Jason Volk
02b835eb2b ircd:Ⓜ️:feds: Add additional options; document options. 2019-04-18 21:23:00 -07:00
Jason Volk
0176dba9a8 ircd:Ⓜ️:fetch: Consolidate interface; remove unused; reorg. 2019-04-18 19:12:37 -07:00
Jason Volk
0edd47d383 ircd:Ⓜ️:feds: Add vector of operations to API. 2019-04-18 15:26:03 -07:00
Jason Volk
5232893c6a ircd:Ⓜ️:fetch: Checkpoint frontfill / head selection related. 2019-04-18 05:17:49 -07:00
Jason Volk
bc922724cd ircd:Ⓜ️:feds: Refactor interface into opcode ABI. 2019-04-18 05:16:21 -07:00
Jason Volk
08cd894cd0 ircd:Ⓜ️:feds: Point to the opts in result struct. 2019-04-18 04:15:13 -07:00
Jason Volk
59982907d3 ircd:Ⓜ️:feds: Add feds::auth; update console cmd. 2019-04-18 04:13:21 -07:00
Jason Volk
871fb748eb ircd:Ⓜ️:fetch: Pass boolean values down the stack for start/prefetch. 2019-04-18 01:21:22 -07:00
Jason Volk
0fa4bdcff7 ircd:Ⓜ️:rooms: Consolidate / refine the rooms iteration interface. 2019-04-17 20:47:50 -07:00
Jason Volk
5fee4a9933 ircd:Ⓜ️:events: Add type-based iteration w/ console cmd. 2019-04-16 16:11:23 -07:00
Jason Volk
9b00c65ef6 ircd:Ⓜ️:events: Add additional lighter-weight event_idx iteration tools. 2019-04-16 16:11:23 -07:00
Jason Volk
d96208faaf ircd:Ⓜ️:events: Add iteration tools for events in sender/origin. 2019-04-16 16:11:23 -07:00
Jason Volk
ecbdf00f22 ircd:Ⓜ️:dbs: Add event_type metadata column. 2019-04-16 16:11:23 -07:00
Jason Volk
8148dc6502 ircd:Ⓜ️:dbs: Add event_sender metadata column. 2019-04-16 15:04:31 -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
307d8bf71c ircd:Ⓜ️:fetch: Fix object assignment semantics. 2019-04-15 14:44:58 -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
2822cd0a8a ircd:Ⓜ️:fetch: Add headfill operation. 2019-04-12 05:09:38 -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
7d27126f96 ircd:Ⓜ️:room: Add any_user() convenience. 2019-04-12 04:44:26 -07:00
Jason Volk
c14d67102a ircd:Ⓜ️:fetch: Reorient interface to expose fetch::request. 2019-04-12 03:35:46 -07:00
Jason Volk
eace5e309c ircd:Ⓜ️:feds: Add / upgrade backfill. 2019-04-12 01:53:57 -07:00
Jason Volk
360cc01dc8 ircd:Ⓜ️:feds: Migrate feds::perspective() to interface. 2019-04-12 00:55:16 -07:00
Jason Volk
06e381ce2b ircd:Ⓜ️:feds: Use a misc arg vector of string_view's. 2019-04-12 00:52:29 -07:00
Jason Volk
302969f100 ircd:Ⓜ️:feds: Add namespace \brief. Reorg impl layout. 2019-04-12 00:33:29 -07:00
Jason Volk
dc93610914 ircd:Ⓜ️:feds: Add feds::event to interface. 2019-04-12 00:16:27 -07:00
Jason Volk
c9c171ed5b ircd:Ⓜ️:feds: Refine the feds preliminary central interface. 2019-04-11 06:27:28 -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
1209d47fa5 ircd:Ⓜ️:vm: Add additional vmopts related to fetching. 2019-04-10 22:32:06 -07:00
Jason Volk
a82410009e ircd:Ⓜ️:sync: Introduce phased polylogarithmic initial sync. 2019-04-08 02:46:49 -07:00
Jason Volk
a780609b76 ircd:Ⓜ️:sync: Add opts to sync::item. 2019-04-08 01:53:09 -07:00
Jason Volk
d08bd0b336 ircd:Ⓜ️:vm: Remove unused fault codes. 2019-04-07 20:57:43 -07:00
Jason Volk
6ae6624772 ircd:Ⓜ️ Add room object equality operator suite. 2019-04-07 14:50:27 -07:00
Jason Volk
19c58ca23e ircd:Ⓜ️:filter: Add convenience filter::get() taking a direct query string value. 2019-03-31 14:41:04 -07:00
Jason Volk
6644161140 ircd:Ⓜ️ Add state_filter w/ related m::name strings. 2019-03-31 14:03:21 -07:00
Jason Volk
9c2b215d60 ircd:Ⓜ️:room::aliases::cache: Add remote fetching; improve interface. 2019-03-30 19:02:11 -07:00
Jason Volk
8063904c06 ircd:Ⓜ️:room::aliases: Add preliminary aliases cache replacement interface. 2019-03-30 19:02:11 -07:00
Jason Volk
d17ac6a8bb ircd:Ⓜ️🆔 Add id part-swapping interface. 2019-03-30 18:15:07 -07:00
Jason Volk
276ba9941d modules/m_room_aliases: Move for_each impl to module. 2019-03-30 18:15:07 -07:00
Jason Volk
317fa612fb ircd:Ⓜ️:room: Add aliases interface. 2019-03-30 18:15:07 -07:00
Jason Volk
d47518a102 ircd:Ⓜ️:self: Add the servername string to this section; update README. 2019-03-28 13:08:40 -07:00
Jason Volk
0043cb2af7 modules/s_fetch: Add branch for auth chain fetch/eval on missing room state for event. 2019-03-27 14:09:40 -07:00
Jason Volk
1c5b7d2d71 ircd:Ⓜ️:room::auth: Add central interface for chain fetch/eval. 2019-03-27 13:44:33 -07:00
Jason Volk
939812f6bd modules/vm: Fix #ifdef RB_DEBUG coverage; minor adjust type. 2019-03-25 20:18:33 -07:00
Jason Volk
84d4ca485b ircd:Ⓜ️:room::state: Add preliminary purge_replaced() w/ console cmd. 2019-03-25 18:39:30 -07:00
Jason Volk
1ffa00adbf ircd:Ⓜ️:room: Add central interface linkage for room::purge(). 2019-03-25 18:04:16 -07:00
Jason Volk
008dfcb43f ircd:Ⓜ️:vm: Add counters and synchronization for safe module reloading. 2019-03-21 16:46:04 -07:00
Jason Volk
82378db816 modules/vm: Share transactions between all evals on the same stack; adjust sequence strategy. 2019-03-21 16:46:04 -07:00
Jason Volk
a7f6549c27 ircd:Ⓜ️:vm: Add tools for evals on a specific stack/ctx. 2019-03-21 14:11:42 -07:00
Jason Volk
507c256eb4 ircd:Ⓜ️:vm: Add loghead convenience. 2019-03-21 12:49:02 -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
aae00eab7f ircd:Ⓜ️:app: Add configuration access interface for appservice. 2019-03-15 16:19:05 -07:00
Jason Volk
ddb08a37a4 ircd:Ⓜ️:user: Add framework around m.ignored_user_list; w/ console cmd. 2019-03-14 17:27:45 -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
2070a72850 ircd:Ⓜ️:rooms: Add interface to remove entries from the !public room list. 2019-03-14 15:12:40 -07:00
Jason Volk
a995a14a3b ircd:Ⓜ️:user: Split user interfaces into headers. 2019-03-14 13:02:27 -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
9f67a146f4 modules/m_event: Unconditionally supply an age when no event_idx. 2019-03-13 17:08:35 -07:00
Jason Volk
c4c95916c2 ircd:Ⓜ️ Add central event append() to compose elaborated json::stack::object for clients. 2019-03-11 16:02:36 -07:00
Jason Volk
f61059a400 ircd:Ⓜ️:room::state: Add prev() and next() reference traversal interface. 2019-03-11 15:06:54 -07:00
Jason Volk
3444bed245 ircd:Ⓜ️:dbs: Add a reverse reference for previous state in event refs index. 2019-03-11 14:46:11 -07:00
Jason Volk
06c548699a ircd:Ⓜ️:dbs: Add a previous state reference to refs meta index. 2019-03-11 13:40:25 -07:00
Jason Volk
a55c549e70 ircd:Ⓜ️:dbs: Add reference index type for m.room.redaction. 2019-03-10 14:52:11 -07:00
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
47446dcd5c ircd:Ⓜ️:vm: Translate vm::fault codes to better specific http::code's for m::error's. 2019-03-09 14:00:00 -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
79eed85397 modules/vm: Add a post-write pre-notify hook site. 2019-03-09 12:08:05 -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
3a673dadf4 ircd:Ⓜ️:room::state: Extend the for_each stack with optimal type,state_key closure. 2019-03-08 11:21:56 -08:00
Jason Volk
3b34785853 Revert "ircd:Ⓜ️:v1: Remove any opts constructors preventing aggregate initialization."
This reverts commit 506531790b.
2019-03-06 17:26:25 -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
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
506531790b ircd:Ⓜ️:v1: Remove any opts constructors preventing aggregate initialization. 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
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
19e09b0ad5 ircd:Ⓜ️:login: Support identifier typed login. 2019-03-04 13:16:14 -08:00
Jason Volk
c0ab6080d8 ircd:Ⓜ️:event: Add membership to event tuple for essential key consideration. 2019-03-03 17:16:20 -08:00
Jason Volk
295794ec42 ircd:Ⓜ️:user: Improve user filter interface and module linkage. 2019-03-02 16:49:44 -08:00
Jason Volk
3a08d93c15 ircd:Ⓜ️:event::fetch: Cache the event_idx as a class member. 2019-03-01 15:59:49 -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
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
66249c620f ircd:Ⓜ️:room::state: Add central interface linkage for state utils. 2019-02-28 17:12:04 -08:00
Jason Volk
c969eb2792 ircd:Ⓜ️:event: Typedef an idx_range pair. 2019-02-28 17:12:03 -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
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
3e1157f043 ircd:Ⓜ️🆔 Add test for whether hostname is an IP literal. 2019-02-26 13:55:01 -08:00
Jason Volk
f3d4e27b24 ircd:Ⓜ️:room: Start a room statistics interface. 2019-02-25 18:20:48 -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
b1cff29219 ircd:Ⓜ️:device: Remove internal access_token_id from the enumeration. 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
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
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
6ccc171bce ircd:Ⓜ️:v1::user::keys::claim: Add additional convenience construction. 2019-02-21 17:02:41 -08:00
Jason Volk
dd7e31806d ircd:Ⓜ️:v1::user::keys::query: Add another convenient request composer. 2019-02-21 14:57:45 -08:00
Jason Volk
08c5de6e2b ircd:Ⓜ️:device: Remove duplicate property; fix closure argument. 2019-02-21 13:42:43 -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
a3923e8374 ircd:Ⓜ️:device: Typedef device::id; add func to get device from access_token. 2019-02-20 19:08:38 -08:00
Jason Volk
98a8ca7bf2 ircd:Ⓜ️:device: Associate access_token to device. 2019-02-20 15:46:48 -08:00
Jason Volk
d5e8bbbf4a modules: Stub m.device_list_update edu handler; json schema. 2019-02-20 13:36:29 -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
7c09123a3c ircd:Ⓜ️:room::state: Add a type prefix-domain iteration to state interface. 2019-02-20 13:10:56 -08:00
Jason Volk
99058105b3 ircd:Ⓜ️:event: Minor move utils to event.h index header. 2019-02-20 13:10:56 -08:00
Jason Volk
b3baebd395 ircd:Ⓜ️:device: Add a proper device interface (sans device::set()). 2019-02-19 17:42:05 -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
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
bc0e12e31b ircd:Ⓜ️ Add m.direct_to_device edu schema / header. 2019-02-18 12:23:58 -08:00
Jason Volk
9b8f08a6e5 Update README. 2019-02-16 15:27:51 -08:00
Jason Volk
f275cf8c83 ircd:Ⓜ️:event::auth::chain: No closing over full event; overload void closure. 2019-02-16 15:25:36 -08:00
Jason Volk
547c6ca8e5 ircd:Ⓜ️:v1: Add query_auth request. 2019-02-16 15:25:36 -08:00
Jason Volk
4f721f48e5 Eliminate friend-injection. 2019-02-15 18:48:59 -08:00
Jason Volk
2660b30061 ircd:Ⓜ️:event: Add auth::chain utility. 2019-02-14 16:48:45 -08:00
Jason Volk
194160a735 ircd:Ⓜ️:event::refs: Reorientations for consolidated refs. 2019-02-14 14:02:34 -08:00
Jason Volk
17e1bb96bf ircd:Ⓜ️:dbs: Consolidate event_refs column. Drop prev_events column. 2019-02-14 13:11:37 -08:00
Jason Volk
f48274fc58 ircd:Ⓜ️:event::auth: Preliminary v1 auth rules. 2019-02-13 18:44:26 -08:00
Jason Volk
df64c6e573 ircd:Ⓜ️:room::power: Improve requirements for different constructions. 2019-02-13 16:01:18 -08:00
Jason Volk
11264d2806 ircd:Ⓜ️:room: Add convenience wrapper for event::idx state::get() to interface. 2019-02-13 16:01:18 -08:00
Jason Volk
1a6d173a0b ircd:Ⓜ️:room::state: Change return value from event::id to event::idx for simple get(). 2019-02-13 16:01:18 -08:00
Jason Volk
674373be90 ircd:Ⓜ️:event::auth: Restructure / rename interfaces; move is_power_event() to module. 2019-02-12 17:50:44 -08:00
Jason Volk
aaf80932fe ircd:Ⓜ️:room::auth: Simplify closure requirements. 2019-02-12 17:47:35 -08:00
Jason Volk
74fdda36e2 ircd:Ⓜ️:event::conforms: Add checks for m.room.member state_key. 2019-02-12 17:19:13 -08:00
Jason Volk
7117d4a17c ircd:Ⓜ️:event::conforms: Add check for m.room.aliases sender host vs. state_key. 2019-02-12 15:34:40 -08:00
Jason Volk
903a117bf7 ircd:Ⓜ️:event::conforms: Add check for room_id host matching sender host for create event. 2019-02-12 15:22:53 -08:00
Jason Volk
1bd9ce0d1e ircd:Ⓜ️:event::conforms: Add checks for duplicate / self / missing auth refs. 2019-02-12 15:07:50 -08:00
Jason Volk
20eb440408 ircd:Ⓜ️:event: Improve the event::cache checking behavior. 2019-02-12 14:57:08 -08:00
Jason Volk
2f6384b068 ircd:Ⓜ️:room: Add room::auth interface w/ console cmd. 2019-02-12 12:04:02 -08:00
Jason Volk
8a81a6d24e ircd:Ⓜ️:event::auth: Add comments; remove cruft. 2019-02-12 12:04:01 -08:00
Jason Volk
c204ece49a ircd:Ⓜ️:event: Add std::string overloads to event get() suite. 2019-02-12 10:03:20 -08:00
Jason Volk
a1c8845e1e ircd:Ⓜ️🧾 Normalize module definition names / layout. 2019-02-11 15:57:01 -08:00
Jason Volk
68be0a321e ircd:Ⓜ️:event: Convert modular components to demangled style. 2019-02-09 18:43:04 -08:00
Jason Volk
80a25cf352 ircd:Ⓜ️:event::auth: Add auth chain traversal. 2019-02-08 07:54:03 -08:00
Jason Volk
2b82dfec76 ircd:Ⓜ️:event::auth: Add iteration by type. 2019-02-08 07:53:39 -08:00
Jason Volk
1df1897e6d ircd:Ⓜ️:event::get: Add templates to return integral values. 2019-02-08 07:06:25 -08:00
Jason Volk
ef740d339b ircd:Ⓜ️:event: Add event::auth examination device. 2019-02-08 03:19:54 -08:00
Jason Volk
2a431fa26a ircd:Ⓜ️:dbs: Add event_auth column. 2019-02-08 03:19:54 -08:00
Jason Volk
cbe829368f ircd:Ⓜ️:event: Start an auth header; add is_power_event(). 2019-02-08 03:19:54 -08:00
Jason Volk
0aa977c307 ircd:Ⓜ️:event: Simplify verify stack. 2019-02-07 23:41:29 -08:00
Jason Volk
fb6be95f2c ircd:Ⓜ️:v1: Add the user::keys::claim ctor stack complex; minor cleanup. 2019-02-07 23:09:30 -08:00
Jason Volk
dcb1f2197e ircd:Ⓜ️:v1: Split user:: / user::keys headers. 2019-02-07 22:16:19 -08:00
Jason Volk
3a8f53e46e ircd:Ⓜ️ Start a device header. 2019-02-07 08:19:27 -08:00
Jason Volk
d5f03fba59 ircd:Ⓜ️:v1: Add ctor stack complex for user::keys::query. 2019-02-07 00:40:48 -08:00
Jason Volk
ce0d974868 ircd:Ⓜ️:v1: Add principals for user::keys::query & claim; remove unstables. 2019-02-07 00:17:26 -08:00
Jason Volk
8eb68c0e2e ircd:Ⓜ️:dbs: Add missing event refs comparator: minor cleanup. 2019-02-06 21:32:26 -08:00
Jason Volk
93fb468ba2 ircd:Ⓜ️:vm: Add tools using the eval instance_list. 2019-02-06 20:54:21 -08:00
Jason Volk
70c901a894 ircd:Ⓜ️:vm: Add json::array eval ctor. 2019-02-06 20:54:04 -08:00
Jason Volk
bb68dfc1e7 ircd:Ⓜ️ Add event::hash(json::object) w/ branch from event.source. 2019-02-06 20:52:42 -08:00
Jason Volk
e497fe8506 ircd:Ⓜ️:event: Add event_id() convenience suite to reverse index(). 2019-02-06 17:18:38 -08:00
Jason Volk
ec8f0c1e1c ircd:Ⓜ️:event: Add refs interface. 2019-02-06 17:18:38 -08:00
Jason Volk
2586476a57 ircd:Ⓜ️:dbs: Fix prefix related for event_refs column. 2019-02-06 17:18:38 -08:00
Jason Volk
9bd86e7f69 ircd:Ⓜ️:request: Use conf items for buffer sizes and limits. 2019-02-06 02:34:52 -08:00
Jason Volk
ca4ef84c9f ircd:Ⓜ️:dbs: Add event_refs indexer; reorg event indexers related. 2019-02-05 19:05:17 -08:00
Jason Volk
843f78548b ircd:Ⓜ️:dbs: Add event_refs metadata column. 2019-02-05 19:05:17 -08:00
Jason Volk
6cb4020034 ircd:Ⓜ️:dbs: Rename head/refs options to room_head/room_refs; update vmopts and sites. 2019-02-05 19:05:17 -08:00
Jason Volk
4eed3e5ca0 ircd:Ⓜ️🆔 Minor reorg. 2019-02-05 03:09:40 -08:00
Jason Volk
d36a6cd2b0 ircd:Ⓜ️:room: Add index(room::id) convenience to get some integer rep for room. 2019-02-04 19:19:56 -08:00
Jason Volk
7e11176ab7 ircd:Ⓜ️:room::messages: Simplify/optimize seek() functions. 2019-02-04 19:19:56 -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
0b8a2dfae4 ircd:Ⓜ️ Reorder / reorg m_event unit definitions. 2019-01-26 15:24:03 -08:00
Jason Volk
5ae0a521d6 ircd:Ⓜ️:event::fetch: Swap the fallback logic to json query after row query. 2019-01-26 14:06:03 -08:00
Jason Volk
5ce55a9dee ircd:Ⓜ️:event::fetch: Simplify interface; reference opts as class member. 2019-01-26 13:52:33 -08:00
Jason Volk
c458448104 ircd:Ⓜ️:dbs: Drop the origin column. 2019-01-25 17:37:30 -08:00
Jason Volk
5d701601ae ircd:Ⓜ️:dbs: Add indiv meta_block confs for all colums; various meta_block fixes. 2019-01-24 13:34:34 -08:00
Jason Volk
14570f73e3 ircd:Ⓜ️:dbs: Drop the auth_events column. 2019-01-24 13:05:48 -08:00
Jason Volk
695985327e ircd:Ⓜ️:dbs: Drop the redacts column. 2019-01-24 12:52:45 -08:00
Jason Volk
250f315589 ircd:Ⓜ️:dbs: Drop the membership column; minor cleanup / fixes. 2019-01-24 12:52: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
64229eb755 ircd:Ⓜ️:vm: Expose json_source dbs option to vmopts interface. 2019-01-24 11:37:26 -08:00
Jason Volk
f1a6654f21 ircd:Ⓜ️ Remove any options which toggle full json persistence. 2019-01-24 11:37:26 -08:00
Jason Volk
5ea765642e ircd:Ⓜ️:dbs: Drop the hashes column. 2019-01-24 11:12:41 -08:00
Jason Volk
c551777f7b ircd:Ⓜ️:dbs: Drop the signatures column. 2019-01-24 11:12:15 -08:00
Jason Volk
a95b688925 ircd:Ⓜ️:dbs: Drop the prev_state column from schema. 2019-01-23 16:11:26 -08:00
Jason Volk
92154be55d ircd:Ⓜ️ Use event::keys::selection bitset in event::fetch::opts rather than event::keys. 2019-01-23 15:36:02 -08:00
Jason Volk
764585e370 ircd:Ⓜ️:dbs: Move direct column append into function; minor cleanup. 2019-01-23 14:47:47 -08:00
Jason Volk
97181f9eca Revert "ircd:Ⓜ️:event::fetch: Disallow the json query by default for now."
This reverts commit de8d14da5b.
2019-01-21 16:24:09 -08:00
Jason Volk
de8d14da5b ircd:Ⓜ️:event::fetch: Disallow the json query by default for now. 2019-01-19 16:50:40 -08:00
Jason Volk
51c5ffbb5e ircd:Ⓜ️:event::fetch: Eliminate the selected_only option; make unconditional. 2019-01-18 14:54:04 -08:00
Jason Volk
b947aee02d ircd:Ⓜ️ Fix subobject-linkage. 2019-01-18 14:54:04 -08:00
Jason Volk
4d05fe0353 ircd:Ⓜ️:event::fetch: Reorg / cleanup internal interface. 2019-01-18 14:33:42 -08:00
Jason Volk
42d9f6dc79 ircd:Ⓜ️:event::fetch: Simplify opts ctor; minor cleanup. 2019-01-17 15:38:00 -08:00
Jason Volk
a61d9e5d96 ircd:Ⓜ️:event::fetch: Add option for tight-to-selections. 2019-01-16 18:35:58 -08:00
Jason Volk
1b9e306ff0 ircd:Ⓜ️:event::fetch: Various fixes / minor reorg. 2019-01-16 18:08:31 -08:00
Jason Volk
fc703660f6 ircd:Ⓜ️ Add selecting-key ctor for event from json::object. 2019-01-16 16:38:14 -08:00
Jason Volk
2b12c8a9c5 ircd:Ⓜ️:dbs: Use event source if available; add write options. 2019-01-16 15:55:08 -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
52a9ca9635 ircd:Ⓜ️:vm: Add json vm option. 2019-01-15 19:03:52 -08:00
Jason Volk
c5489cecb0 ircd:Ⓜ️:event::fetch: Add options to seek(); add event_json query branch. 2019-01-15 19:03:52 -08:00
Jason Volk
c314a9bb78 ircd:Ⓜ️:dbs: Add event_json column with conditional indexer. 2019-01-15 15:36:18 -08:00
Jason Volk
7c998e48ed ircd:Ⓜ️:dbs: Cleanup / reorg write-indexers stack. 2019-01-15 13:00:15 -08:00
Jason Volk
1ab20cf721 ircd:Ⓜ️ Reorg / split / de-friend-inject various event interfaces. 2019-01-15 12:49:53 -08:00
Jason Volk
522656047e ircd:Ⓜ️:events: Add clarification to comment. 2019-01-13 14:02:54 -08:00
Jason Volk
8421dd46b6 modules/client/register: Support the inhibit_login option. 2019-01-12 12:34:34 -08:00
Jason Volk
4c495e1f44 modules/client/sync: Various cleanup / simplify. 2019-01-10 16:58:37 -08:00
Jason Volk
26ee1c9b5c ircd:Ⓜ️ Minor cleanup. 2019-01-10 13:16:41 -08:00
Jason Volk
2d860b25a8 ircd:Ⓜ️:sync: Checkpoint. 2019-01-09 20:39:12 -08:00
Jason Volk
5815fc87c2 ircd:Ⓜ️:events: Simplify interface. 2019-01-09 18:08:29 -08:00
Jason Volk
6c96e0d785 ircd:Ⓜ️:events: Simplify the for_each iteration interface. 2019-01-09 17:11:00 -08:00
Jason Volk
443905859f ircd:Ⓜ️:sync: Additional abstraction; checkpoint polylog /sync modules. 2019-01-08 17:17:41 -08:00