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

902 commits

Author SHA1 Message Date
Jason Volk
bb386c5ab4 ircd:Ⓜ️:event: Fix integer value recast (assertion from 8ab735d002). 2020-09-18 19:09:19 -07:00
Jason Volk
08811519cf ircd:Ⓜ️:vm: Move internal room determination before room version procurement. 2020-09-17 10:49:41 -07:00
Jason Volk
677f2f6504 ircd:Ⓜ️:room::auth::chain: Parallelize query. 2020-09-17 10:49:41 -07:00
Jason Volk
347cdba1c6 ircd:Ⓜ️:room::auth: Parallelize index query. 2020-09-17 10:49:41 -07:00
Jason Volk
076384d697 ircd:Ⓜ️:dbs: Add prefetch loop for horizon resolver. 2020-09-17 10:49:41 -07:00
Jason Volk
0335bfa948 ircd:Ⓜ️:dbs: Parallelize auth reference indexer queries. 2020-09-17 10:49:41 -07:00
Jason Volk
c83ec8324b ircd:Ⓜ️:dbs: Parallelize the prev_events reference index queries. 2020-09-17 10:49:41 -07:00
Jason Volk
9165975953 ircd:Ⓜ️:dbs: Supersede index query tool with parallel impl. 2020-09-17 10:49:41 -07:00
Jason Volk
099b6d8301 ircd:Ⓜ️ Add parallel event::idx query to interface. 2020-09-17 10:49:41 -07:00
Jason Volk
8ab735d002 ircd:Ⓜ️:index: Optimize call chain; branch reduction; indirect call elimination. 2020-09-17 10:49:41 -07:00
Jason Volk
0675a621f1 ircd:Ⓜ️:homeserver: Add specific option to toggle initial backfill jobs after startup. 2020-09-16 23:00:58 -07:00
Jason Volk
cdadc3dfe8 ircd:Ⓜ️:homeserver: Skip head updates during bootstrap. 2020-09-16 04:41:32 -07:00
Jason Volk
d4677e2a29 ircd:Ⓜ️:roomstrap: Remove redundant parallel key fetching subroutine. 2020-09-16 04:31:37 -07:00
Jason Volk
03b6261dd8 ircd:Ⓜ️:vm::eval: Cleanup parallel key pre-fetcher. 2020-09-16 04:31:37 -07:00
Jason Volk
335a045d41 ircd:Ⓜ️:homeserver: Add manual memtable flush after bootstrap. 2020-09-16 01:03:42 -07:00
Jason Volk
8abab587ac ircd:Ⓜ️ Move modules/vm_fetch to central lib. 2020-09-15 22:16:11 -07:00
Jason Volk
4ecb2d0d5f ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes. 2020-09-15 22:16:11 -07:00
Jason Volk
772022a74e ircd::ed25519: Add create option to ctor; remove reference to global. 2020-09-15 18:46:28 -07:00
Jason Volk
a90191792e ircd:Ⓜ️:homeserver: Adjust assertions to continue incomplete bootstrap. 2020-09-15 04:33:28 -07:00
Jason Volk
b3085eecd8 ircd:Ⓜ️:vm: Add inner batch loop around parallel existence query. 2020-09-14 14:16:31 -07:00
Jason Volk
1407d8451a ircd:Ⓜ️:homeserver: Use batched eval in bootstrap loop. 2020-09-14 14:16:31 -07:00
Jason Volk
fb1f36ce72 ircd:Ⓜ️:vm: Remove call operators; inline trivial getter. 2020-09-13 16:10:40 -07:00
Jason Volk
bf8dd39144 ircd:Ⓜ️:vm: Move vector eval related to execute unit. 2020-09-13 16:10:40 -07:00
Jason Volk
a02bd474d7 Fix EXTRA_CXXFLAGS append order regression. 2020-09-13 14:32:47 -07:00
Jason Volk
4187a7aff2 ircd:Ⓜ️:homeserver: Additional bootstrap infolog, options; minor cleanup. 2020-09-13 10:29:26 -07:00
Jason Volk
034e5871a7 ircd:Ⓜ️:homeserver: Add conditions to bootstrap. 2020-09-13 09:14:05 -07:00
Jason Volk
453748c00a ircd:Ⓜ️:homeserver: Optimize bootstrap eval w/ unique/replays assumptions. 2020-09-13 09:14:05 -07:00
Jason Volk
87cff29e53 ircdⓂ️:dbs: Reduce content column block size. 2020-09-12 22:31:06 -07:00
Jason Volk
1dbce276d9 ircd:Ⓜ️:homeserver: Improve bootstrap loop; options, errors. 2020-09-12 07:03:21 -07:00
Jason Volk
afe0b96249 ircd::db: Support universal compaction by default; various write tweaks. 2020-09-12 07:03:21 -07:00
Jason Volk
1a7447837e ircd:Ⓜ️:vm: Remove legacy options; fix appendix masking. 2020-09-12 07:03:21 -07:00
Jason Volk
4e3348d3c3 ircd:Ⓜ️:events: Add elapsed time to events dump. 2020-09-12 05:01:29 -07:00
Jason Volk
b532523d04 ircd:Ⓜ️:events: Add checkpoint to events dump; adjust low watermark for flush. 2020-09-10 23:50:47 -07:00
Jason Volk
934ad6f70d ircd:Ⓜ️:homeserver: Allow instance w/o event signing key. 2020-09-10 23:50:47 -07:00
Jason Volk
ed6e2cff7a ircd:Ⓜ️ Integrate room_id in comparison operator suite. 2020-09-10 23:50:47 -07:00
Jason Volk
12bed2d87b ircd:Ⓜ️:room: Add json::tuple for m.room.message schema; property names. 2020-09-10 23:50:47 -07:00
Jason Volk
ab58cedc09 ircd:Ⓜ️:homeserver: Additional bootstrap vector related; comments; cleanup. 2020-09-07 17:01:45 -07:00
Jason Volk
5c7007ebef ircd:Ⓜ️:vm::eval: Add coarse limit to options for array evals. 2020-09-07 17:01:45 -07:00
Jason Volk
bd43de46b7 ircd:Ⓜ️:events: Move flusher closure; minor cleanup. 2020-09-07 17:01:45 -07:00
Jason Volk
7642f50ebb ircd:Ⓜ️:events: Add readahead; add conf item. 2020-09-07 17:01:44 -07:00
Jason Volk
cc123836ef ircd:Ⓜ️:events: Start a content scanning interface. 2020-09-07 17:01:44 -07:00
Jason Volk
3cc7885ee4 ircd:Ⓜ️:homeserver: Improve/reorg and comment on eval opts for bootstrap vector. 2020-08-31 18:34:25 -07:00
Jason Volk
b0a53ffd33 ircd:Ⓜ️:vm: Add option to skip any sorting/reordering for array eval. 2020-08-31 17:18:48 -07:00
Jason Volk
f2e851f875 ircd:Ⓜ️:events: Fix format string specifier. 2020-08-31 17:18:48 -07:00
Jason Volk
19b9113222 ircd:Ⓜ️:homeserver: Reorg bootstrap; add preliminary vector evaluator. 2020-08-28 05:18:57 -07:00
Jason Volk
a9878ae5f7 ircd:Ⓜ️ Handle and report id error in pretty oneline. 2020-08-28 05:18:57 -07:00
Jason Volk
135d134c2c ircd:Ⓜ️:vm: Minor merge branch sections. 2020-08-28 05:18:57 -07:00
Jason Volk
a8cd30157e ircd:Ⓜ️:room::bootstrap: Add expectation for non-empty host. 2020-08-28 05:18:57 -07:00
Jason Volk
9c4aea4ca6 ircd:Ⓜ️:events: Improve robustness of loop conditions; range controls. 2020-08-28 05:18:57 -07:00
Jason Volk
3930910cdb ircd:Ⓜ️:events: Use streaming json::stack array for events dump. 2020-08-28 05:18:57 -07:00
Jason Volk
a0f219a91b ircd:Ⓜ️:homeserver: Split bootstrap related into unit. 2020-08-28 05:18:57 -07:00
Jason Volk
57c27d7507 ircd:Ⓜ️:breadcrumbs: Use non-reference type; range loop copy warning. 2020-08-23 02:36:01 -07:00
Jason Volk
8e7c1c3eb2 ircd:Ⓜ️ Rename breadcrumb_rooms to breadcrumbs; related. 2020-08-23 02:32:54 -07:00
Jason Volk
44bd60ea08 ircd::b64: Add encoding diction parameter; remove converters; reorg interface. 2020-08-10 06:19:48 -07:00
Jason Volk
7ff89fbd17 ircd: Split base64 and base58 into separate namespaces. 2020-08-10 04:56:28 -07:00
Jason Volk
4a2adc4123 ircd::base: Remove allocated string convenience overloads; simplify interface. 2020-08-09 02:39:31 -07:00
Jason Volk
5774c849bb ircd:Ⓜ️:room::head: Try more eagerly to find and generate room head in some cases. 2020-08-05 16:30:42 -07:00
Jason Volk
8df7fd1180 ircd:Ⓜ️:error: Gracefully handle string content case. 2020-08-04 19:34:47 -07:00
Jason Volk
6ae8357c65 ircd:Ⓜ️:error: Use json::string type for property access; contain exceptions. 2020-08-04 19:30:05 -07:00
Jason Volk
9eed4dfa5f ircd:Ⓜ️:event::fetch: Use hidden section for non-plt/internal linkage. 2020-08-02 09:43:39 -07:00
Jason Volk
ccbd6c80bb ircd:Ⓜ️:fed: Use lvalue construction style for request buffer options. 2020-08-02 01:57:56 -07:00
Jason Volk
748c7730b1 modules/client/sync: Preliminary groups sync module stub. 2020-07-30 13:25:43 -07:00
Jason Volk
f12d197a32 ircd:Ⓜ️ Add missing federation_rooms module to load list. 2020-07-30 13:25:43 -07:00
Jason Volk
1877972828 ircd:Ⓜ️:groups: Start namespace, central lib; preliminary client resource module. 2020-07-30 10:24:10 -07:00
Jason Volk
9c3cd55639 ircd:Ⓜ️:groups: Preliminary stub for client/create_group. 2020-07-30 10:24:10 -07:00
Jason Volk
2f6f2af06f Reserve EXTRA_* flag sets for user.
configure: Move unit configuration section above application settings.

configure: -fasm-blocks not yet useful without GCC parity.
2020-07-30 06:38:51 -07:00
Jason Volk
4b7ebb3cf0 ircd::db: Elide std::function wrapping for equal comparator (related 6c2736f592). 2020-07-28 01:24:27 -07:00
Jason Volk
f2c182b403 ircd::db: Set max_open_files=-1 when required for secondary mode.
ircd:Ⓜ️:dbs: Condition option from being set in slave/secondary mode.

ircd::db: Skip snapshot creation in slave/secondary mode (required).

ircd::db: Slave implies read-only.
2020-07-28 00:38:46 -07:00
Jason Volk
daa3cd6284 ircd:Ⓜ️:homeserver: Fix missing conditions for write-avoid functionality. 2020-07-28 00:38:46 -07:00
Jason Volk
dd17ba9dec ircd:Ⓜ️:vm: Remove call to list member w/ template defined in another unit. 2020-07-25 09:21:01 -07:00
Jason Volk
ad6bd68b80 ircd:Ⓜ️:vm: Add case for counter value to quash warning. 2020-07-25 09:12:00 -07:00
Jason Volk
ecefcea599 ircd:Ⓜ️:roomstrap: Disable any notifies on eval path. 2020-07-21 01:50:34 -07:00
Jason Volk
ef3f63ec95 ircd:Ⓜ️:feds: Remove final specifier. 2020-07-19 20:35:22 -07:00
Jason Volk
60c1efc5be ircd:Ⓜ️ Disable all bloom filter bits by default. 2020-07-17 18:28:32 -07:00
Jason Volk
6adc71151d ircd:Ⓜ️:dbs: Disable bloom filter on event property columns. 2020-07-16 00:02:31 -07:00
Jason Volk
454e1bdd40 ircd:Ⓜ️ Move media module init order. 2020-07-13 20:18:18 -07:00
Jason Volk
d371fba034 ircd::db: Use reference to prevent string copy.
ircd:Ⓜ️ Fix reference/copy related warnings in clang-10.
2020-07-10 23:58:07 -07:00
Jason Volk
31bd80a6d1 Consolidate application of -flax-vector-conversions. 2020-07-10 20:12:33 -07:00
Jason Volk
d44ad15261 ircd:Ⓜ️:fetch: Add redaction query for non-conformity check; conf item. 2020-07-06 17:31:04 -07:00
Jason Volk
91d57ea989 ircd:Ⓜ️:vm: Add content requirement and redaction hint opts for non-conforming mask. 2020-07-06 17:31:04 -07:00
Jason Volk
41e13921c3 ircd:Ⓜ️:fetch: Enable conformity check for fetch by default. 2020-07-06 17:31:04 -07:00
Jason Volk
b32d2f07f5 Relax vector conversions in translation units; enforce in headers. 2020-07-06 17:31:04 -07:00
Jason Volk
14c652181d ircd:Ⓜ️:pretty_detailed: Fix cache keys selection on null event_idx. 2020-07-05 03:54:03 -07:00
Jason Volk
67dec89155 ircd:Ⓜ️🪝 Simplify debuglog msgs. 2020-06-20 06:25:54 -07:00
Jason Volk
bc1e54aa12 ircd:Ⓜ️:event: Minor rename; additional diagnostic arguments. 2020-06-19 22:53:01 -07:00
Jason Volk
2b86779a26 ircd:Ⓜ️:event::conforms: Log error if evaluation throws. 2020-06-18 22:56:21 -07:00
Jason Volk
46e0625daf ircd:Ⓜ️:event::conforms: Add hashes related codes and conditions. 2020-06-18 22:51:33 -07:00
Jason Volk
acad1fcaba ircd:Ⓜ️:event: Split out hash reimage generator. 2020-06-18 22:41:32 -07:00
Jason Volk
aa655cb745 ircd:Ⓜ️:event: Minor interface reorg. 2020-06-18 22:10:24 -07:00
Jason Volk
4ef7754ed5 ircd:Ⓜ️:room::members: Eliminate unnecessary query to the room state. 2020-06-14 22:05:15 -07:00
Jason Volk
6f508f92a4 ircd:Ⓜ️:acquire: Add a head reset option for now.
ircd:Ⓜ️:init::backfill: Use head reset option for room acquire.
2020-06-12 20:53:16 -07:00
Jason Volk
751b413f0d ircd:Ⓜ️:vm: Relax head::generate options for internal rooms. 2020-06-12 20:36:46 -07:00
Jason Volk
b2564fb5d2 ircd:Ⓜ️:vm: Decide if internal room at issue stage. 2020-06-12 20:36:46 -07:00
Jason Volk
356e2301e9 ircd:Ⓜ️:init::backfill: Improve info/errlog msg conditions. 2020-06-12 19:24:18 -07:00
Jason Volk
97269da444 ircd:Ⓜ️:init::backfill: Improve initial backfill termination. 2020-06-12 19:18:49 -07:00
Jason Volk
59665babae ircd:Ⓜ️:dbs: Enable compression on _event_idx column. 2020-06-12 15:34:49 -07:00
Jason Volk
cb2b92b241 ircd:Ⓜ️:room: Improve error strings for room_id() resolve interface. 2020-06-11 17:09:56 -07:00
Jason Volk
99504180c0 ircd:Ⓜ️:event::prev: Optimize existential tools with parallel queries. 2020-06-11 02:35:59 -07:00
Jason Volk
b70877eee2 ircd:Ⓜ️:event::prev: Add optimal queries for any one reference existing. 2020-06-10 22:36:28 -07:00
Jason Volk
496567b837 ircd:Ⓜ️:event: Add parallel exists() to interface. 2020-06-09 04:38:07 -07:00
Jason Volk
b2da14b6fc ircd:Ⓜ️:event::fetch: Optimize row-assigned fetch event_id query related. 2020-06-08 21:28:07 -07:00
Jason Volk
5905a357cb ircd:Ⓜ️:fed::well_known: Add user-agent on well-known requests. 2020-06-08 16:13:00 -07:00
Jason Volk
640e81ef4d ircd:Ⓜ️:fed: Split well_known into namespace into unit. 2020-06-08 16:13:00 -07:00
Jason Volk
c32e5c92ab ircd:Ⓜ️:dbs: Bound compaction of _room_head within 24h. 2020-06-07 05:46:24 -07:00
Jason Volk
4333e510ef ircd:Ⓜ️:sync: Improve sync::item exception propagation; stop propagation. 2020-06-07 03:11:47 -07:00
Jason Volk
7af4e85631 ircd:Ⓜ️ Throw better errcode for unverifiable sig; use 403 for failed verify. 2020-06-07 02:24:49 -07:00
Jason Volk
0d30c08c9f ircd:Ⓜ️:vm: Remove redundant strings in error log msg. 2020-06-04 17:58:49 -07:00
Jason Volk
9af12a26e3 ircd:Ⓜ️ Improve error propagation through verify(). 2020-06-04 17:51:31 -07:00
Jason Volk
da43ac3d95 ircd:Ⓜ️:sync: Add flag to trigger re-request forcing focused full_state. 2020-06-03 23:26:08 -07:00
Jason Volk
9e96863922 ircd:Ⓜ️:sync: Add flags component to since token. 2020-06-03 22:36:58 -07:00
Jason Volk
d662bdaa3e ircd:Ⓜ️:sync: Add document comments for sync::data members. 2020-06-03 22:36:58 -07:00
Jason Volk
fcd488b409 ircd:Ⓜ️:sync: Centralize all since token related into library suite. 2020-06-03 22:36:58 -07:00
Jason Volk
b8c4bf85e5 ircd:Ⓜ️:sync: Split up sync.h header into directory; move sync::data definition. 2020-06-03 19:39:55 -07:00
Jason Volk
3c137215f3 ircd:Ⓜ️:dbs: Increase default cache size for type column. 2020-05-30 01:30:58 -07:00
Jason Volk
d9cf74ebd6 modules/client/publicrooms: Convey search term to any federation query. 2020-05-29 01:39:25 -07:00
Jason Volk
761ff66464 ircd:Ⓜ️:fed: Generate POST /publicRooms content by default; add console search param. 2020-05-29 01:34:19 -07:00
Jason Volk
aead45402d ircd:Ⓜ️:sync: Introduce item prefetch feature for polylog mode. 2020-05-28 21:31:28 -07:00
Jason Volk
8bfdd7884b ircd:Ⓜ️🆔 Use generate template; optimize printer. 2020-05-26 04:54:52 -07:00
Jason Volk
ef022a215f ircd:Ⓜ️🪝 Use nothrow disable_interruption; propagate by default. 2020-05-24 21:06:17 -07:00
Jason Volk
77d823e8ee ircd:Ⓜ️:dbs: Tweak compression; default bloom bits for _event_idx. 2020-05-24 19:51:57 -07:00
Jason Volk
f78e23149d ircd:Ⓜ️ Optimize various callsites for type queries. 2020-05-24 19:08:08 -07:00
Jason Volk
cb310fd75f ircd:Ⓜ️:fed: Increase default well-known timeout. 2020-05-23 10:01:24 -07:00
Jason Volk
5aa0f875d8 ircd:Ⓜ️:fed: Always move result to front of caller buffer. 2020-05-23 10:01:24 -07:00
Jason Volk
00d4a488c6 ircd:Ⓜ️:dbs: Clarify integer cast type. 2020-05-19 15:55:18 -07:00
Jason Volk
06cf2ffa52 ircd:Ⓜ️:dbs: Use byte_view<> for binary index key part; add assertions. 2020-05-19 15:55:18 -07:00
Jason Volk
215a0148b4 ircd:Ⓜ️🪝:site: Add interrupt masking feature. 2020-05-18 19:02:49 -07:00
Jason Volk
72f9fcb01f ircd:Ⓜ️:init::backfill: Fix missing acquire options. 2020-05-14 14:30:32 -07:00
Jason Volk
da761ca5aa ircd:Ⓜ️:dbs: Increase some cache defaults. 2020-05-14 12:09:41 -07:00
Jason Volk
b4df449068 ircd:Ⓜ️:vm: Improve core sequence conditions.
ircd:Ⓜ️:vm: Simplify transaction sharing with parent.
2020-05-12 22:38:26 -07:00
Jason Volk
b2b989708d ircd:Ⓜ️:vm: Improve loghead; debuglog formats. 2020-05-12 22:27:53 -07:00
Jason Volk
b91c768c57 ircd:Ⓜ️:vm::eval: Remove sequence_shared state. 2020-05-12 22:27:53 -07:00
Jason Volk
987a3eeb6b ircd:Ⓜ️:vm::eval: Add pointer to parent eval; related utils.
ircd:Ⓜ️:vm::eval: Add pointer to child evals; maintain stack.
2020-05-12 22:27:53 -07:00
Jason Volk
32c4ee29c5 ircd:Ⓜ️:vm::eval: Use delegation ctor on overloads. 2020-05-12 22:27:53 -07:00
Jason Volk
13003986bc ircd:Ⓜ️:vm::eval: Minor static interface reorg. 2020-05-12 22:27:53 -07:00
Jason Volk
69cd2608ac ircd:Ⓜ️:vm: Tweak branch expectation related. 2020-05-12 22:27:53 -07:00
Jason Volk
3bd3173db0 ircd:Ⓜ️:vm: Replace eval hook::site member with entered hook ptr; add id to console cmd. 2020-05-12 22:27:53 -07:00
Jason Volk
adde714df4 ircd:Ⓜ️🪝 Add callsite overloads which maintain pointer to current hfn. 2020-05-12 19:21:58 -07:00
Jason Volk
38a12ec0f7 ircd:Ⓜ️🪝 Add integer for easier ident; improve log msgs; console cmd. 2020-05-12 19:21:58 -07:00
Jason Volk
a247334744 ircd:Ⓜ️🪝 Minor interface reorg. 2020-05-12 19:21:58 -07:00
Jason Volk
bdcf62cbc0 ircd:Ⓜ️:vm: Use scope reset on eval.sequence_shared values. 2020-05-12 19:21:58 -07:00
Jason Volk
fd35d6fb68 ircd:Ⓜ️:typing: Manage interruptions during the timeout loop. 2020-05-12 19:21:58 -07:00
Jason Volk
b2bb4b1be6 ircd:Ⓜ️:vm: Move the write_prepare/transaction allocation earlier. 2020-05-12 19:21:56 -07:00
Jason Volk
84fea17624 ircd:Ⓜ️:vm::execute: Reduce debuglog messages. 2020-05-12 04:41:07 -07:00
Jason Volk
c83f820e7f ircd:Ⓜ️:vm: Add missing phase indication during verify. 2020-05-12 04:41:07 -07:00
Jason Volk
d46b6bb27b ircd:Ⓜ️:vm: Skip existential check for issued events. 2020-05-12 04:41:07 -07:00
Jason Volk
3af0ebe53a ircd:Ⓜ️:fetch: Tweak conditions allowing requests based on runlevel. 2020-05-12 04:41:07 -07:00
Jason Volk
ef80b1aff8 ircd:Ⓜ️:homeserver: Read-parse loop over events for bootstrap from vector. 2020-05-11 21:14:25 -07:00
Jason Volk
b764e75692 ircd:Ⓜ️:vm: Additional fetch phases; split fetch hook sites. 2020-05-11 21:14:25 -07:00
Jason Volk
0fd5570c14 ircd:Ⓜ️:vm: Add enumeration for evaluation phases. 2020-05-11 21:14:25 -07:00
Jason Volk
a1708a687e ircd:Ⓜ️:vm: Rename eval.phase to eval.phase_hook. 2020-05-11 19:25:07 -07:00
Jason Volk
91d1c8147d ircd:Ⓜ️:room::bootstrap: Rename internal namespace to avoid conflict. 2020-05-11 16:54:24 -07:00
Jason Volk
109c30a76c ircd: Apply devirtualization optimizations for clang.
matrix: Apply devirtualization optimizations for clang.
2020-05-11 01:58:25 -07:00
Jason Volk
1cc57495a4 ircd:Ⓜ️:homeserver: Fix missing error format string specifiers. 2020-05-10 18:53:45 -07:00
Jason Volk
b0776fd0f8 ircd:Ⓜ️:homeserver: Preliminary bootstrap from event vector. 2020-05-10 03:52:28 -07:00
Jason Volk
554478da49 ircd:Ⓜ️:homeserver: Consolidate/simplify ctor/dtor for now. 2020-05-10 03:02:20 -07:00
Jason Volk
0bd1d03bbc ircd:Ⓜ️:homeserver: Unload any loaded modules for ctor error. 2020-05-09 19:56:20 -07:00
Jason Volk
9a2382b444 ircd:Ⓜ️:homeserver: Prevent exception propagation for signoff(homeserver). 2020-05-09 19:41:10 -07:00
Jason Volk
befe43f45a ircd:Ⓜ️:acquire: Add options to toggle operations. 2020-05-09 19:01:25 -07:00
Jason Volk
ed931bcf6e ircd:Ⓜ️:events: Cleanup fd options for dumper. 2020-05-09 18:58:01 -07:00
Jason Volk
17f41f83d4 ircd:Ⓜ️:user::filter: Return the filter id of an existing filter rather than empty. 2020-05-07 14:14:34 -07:00
Jason Volk
59f4e3cf34 ircd:Ⓜ️:dbs: Ensure truncation of origin component of room_joined key. 2020-05-05 19:57:32 -07:00
Jason Volk
7d949427e3 ircd:Ⓜ️:fed: Fix cache content buffer overwrite causing erroneous well-known fallback results. 2020-05-05 16:13:32 -07:00
Jason Volk
970f84304e ircd:Ⓜ️:fed: Remove unused buffer. 2020-05-05 16:05:22 -07:00
Jason Volk
8029d25c2d ircd:Ⓜ️:keys: Fix response handling for feds parallel key request. 2020-05-05 14:03:48 -07:00
Jason Volk
3fe0729340 ircd:Ⓜ️:keys: Add proper feds opts for error handling; fix exception escape. 2020-05-05 13:20:05 -07:00
Jason Volk
e4cfe61551 modules/admin: Implement (undocumented) users/deactivate. 2020-05-02 23:57:53 -07:00
Jason Volk
ff96eb803d ircd:Ⓜ️:user: Move is_active() to adl'ed active(). 2020-05-02 23:57:53 -07:00
Jason Volk
1a1826bded ircd:Ⓜ️:fed: Another attempt at well-known expired-entry fallback. 2020-05-02 23:57:52 -07:00
Jason Volk
4e9664ebce ircd:Ⓜ️:room::auth: Allow an incorrect fifth event; warning remains. 2020-05-01 10:10:17 -07:00
Jason Volk
84347857c6 ircd:Ⓜ️:room::power: Use conf items to seed all default values. 2020-05-01 10:10:17 -07:00
Jason Volk
a507785f8f ircd:Ⓜ️:pretty: Show membership for applicable events in pretty multiline. 2020-05-01 10:10:17 -07:00
Jason Volk
6bc0d48a38 ircd:Ⓜ️:pretty: Move part of console event cmd into lib util. 2020-05-01 10:10:16 -07:00
Jason Volk
9cb01e7237 ircd:Ⓜ️:fed::state: Make event_id parameter optional; remove head fetch. 2020-05-01 08:59:12 -07:00
Jason Volk
78ea123004 ircd:Ⓜ️:room::power: Consistent integer level and string level conversions. 2020-04-30 18:52:43 -07:00
Jason Volk
b37df3f719 modules/admin: Implement GET (undocumented) /admin/users/@user/admin. 2020-04-30 01:12:46 -07:00
Jason Volk
cfb9362744 ircd:Ⓜ️:user: Add is_oper() to interface; minor cleanup. 2020-04-30 01:06:01 -07:00
Jason Volk
a8870908a5 ircd:Ⓜ️:fed: Remove fallback branch. 2020-04-29 03:37:35 -07:00
Jason Volk
f649a31925 ircd:Ⓜ️:fed: Add a default ttl when read from content. 2020-04-29 03:37:35 -07:00
Jason Volk
cffe801148 ircd:Ⓜ️:fed: Simplify cached result copy and test. 2020-04-29 03:37:35 -07:00
Jason Volk
86a601521d ircd:Ⓜ️:fed: Fixes for supplied well-known buffer undersizing. 2020-04-29 03:21:18 -07:00
Jason Volk
c4149eba47 ircd:Ⓜ️:sync: Inline apropos() suite. 2020-04-28 03:07:13 -07:00
Jason Volk
434916bb7e ircd:Ⓜ️:room::bootstrap: Response tuple typedef is versionless. 2020-04-27 23:35:06 -07:00
Jason Volk
4c8e306a94 ircd:Ⓜ️:fed: Improve cache characteristic for fallback on expired records. 2020-04-27 23:35:06 -07:00
Jason Volk
7f4da633f3 ircd:Ⓜ️:vm: Fix auth check type conditioning present state update. 2020-04-27 22:37:36 -07:00
Jason Volk
6818f98ae6 ircd:Ⓜ️:vm: Add missing fault::AUTH exception. 2020-04-27 22:37:36 -07:00
Jason Volk
9c61677b0b ircd:Ⓜ️:room::auth: Split out event::idx fetch tools; minor reorg. 2020-04-27 22:37:36 -07:00
Jason Volk
dfe1133cfb ircd:Ⓜ️:vm: Unconditional dbtxn building; condition opts.write for committing only. 2020-04-27 18:36:15 -07:00
Jason Volk
c027a567ce ircd:Ⓜ️:sync: Move args structure to central lib; eliminate local module header. 2020-04-27 00:16:58 -07:00
Jason Volk
447bf8e42d ircd:Ⓜ️:acquire: Prevent federation notify for any results of m::acquire. 2020-04-26 20:24:12 -07:00
Jason Volk
e87a26c142 ircd:Ⓜ️:fed: Use single codepath for request target; use canonize rewrite. 2020-04-26 16:19:37 -07:00
Jason Volk
cbb988d31c ircd:Ⓜ️:typing: Add timeout context terminator (missing f9df9bfbd). 2020-04-26 04:17:39 -07:00
Jason Volk
86a7ed52c2 ircd:Ⓜ️:init::backfill: Add a startup delay w/ conf item. 2020-04-25 23:52:59 -07:00
Jason Volk
37335a68d7 ircd:Ⓜ️ Wrap all queries into ircd::server through fed suite. 2020-04-25 21:13:57 -07:00
Jason Volk
267e978247 ircd:Ⓜ️:fed: Add indirection interface. 2020-04-25 21:13:57 -07:00
Jason Volk
f9df9bfbda ircd:Ⓜ️:typing: Move remaining assets into namespace; minor reorg. 2020-04-25 17:34:02 -07:00
Jason Volk
ea97994fe3 ircd:Ⓜ️:fed: Return origin rather than empty result. 2020-04-25 00:51:38 -07:00
Jason Volk
a1633aefbe ircd:Ⓜ️:homeserver: Restore -noautomod functionality. 2020-04-24 23:00:14 -07:00
Jason Volk
11f2eff4d9 Add -defaults program option to restore from broken configurations. 2020-04-24 21:58:57 -07:00
Jason Volk
0b2152a136 ircd:Ⓜ️ Split init::backfill into acquire interface. 2020-04-24 15:24:37 -07:00
Jason Volk
38f5b6e477 ircd:Ⓜ️:typing: Improve timeout work loop related. 2020-04-24 13:35:27 -07:00
Jason Volk
ba06958d69 ircd:Ⓜ️ Start a netburst interface; move cache_warm_origin; invoke from resource. 2020-04-23 05:16:48 -07:00
Jason Volk
87f873ad45 ircd:Ⓜ️:init::backfill: Split gossip routine into separate interface. 2020-04-23 04:19:53 -07:00
Jason Volk
2e2c85902e ircd:Ⓜ️ Add additional membership multi-test convenience tool. 2020-04-23 01:42:41 -07:00
Jason Volk
1882f7b507 ircd:Ⓜ️:node: Start preliminary mitsein interface. 2020-04-23 01:21:55 -07:00
Jason Volk
17d73eeae7 ircd:Ⓜ️:node: Cleanup/reorg node interface related. 2020-04-21 19:22:07 -07:00
Jason Volk
ebeb60a84a ircd:Ⓜ️:keys: Consistent boolean return values from interface. 2020-04-21 19:22:06 -07:00
Jason Volk
538a2dab5c ircd:Ⓜ️:room::bootstrap: Adjust interface allowing for multiple remote server arguments. 2020-04-21 19:22:06 -07:00
Jason Volk
a60b3b16dd ircd:Ⓜ️:init::backfill: Fix conf item namespace. 2020-04-21 00:12:04 -07:00
Jason Volk
b979a20457 ircd:Ⓜ️:room::bootstrap: Move util to bootstrap::required(). 2020-04-21 00:12:04 -07:00
Jason Volk
b4a16c6678 ircd:Ⓜ️:vm: Improve release sequencing. 2020-04-20 20:45:38 -07:00
Jason Volk
61942819f2 ircd:Ⓜ️:vm: Restore sequence number stackfully on completion. 2020-04-20 20:19:30 -07:00
Jason Volk
7306ef4eb0 ircd:Ⓜ️:vm: Reverse the sequence value format in loghead. 2020-04-20 20:17:30 -07:00
Jason Volk
69f4c2b224 ircd:Ⓜ️:resource: Obtain version information for request if possible. 2020-04-19 20:20:43 -07:00
Jason Volk
8fda624be2 ircd:Ⓜ️:room::power: Add grant/revoke suite. 2020-04-19 06:13:23 -07:00
Jason Volk
2bf38286ba ircd::fs: Callsite changes for fs::base reorg. 2020-04-19 06:13:23 -07:00
Jason Volk
90fd775482 ircd:Ⓜ️:room::power: Cleanup with decompositions. 2020-04-19 06:13:23 -07:00
Jason Volk
2c7af26bdc ircd:Ⓜ️:room::power: Add collection iteration. 2020-04-19 06:13:23 -07:00
Jason Volk
0b41a1e78d ircd:Ⓜ️:room::power: Simplify iteration interface. 2020-04-19 06:13:23 -07:00
Jason Volk
5ea8ac362c Enable link-time optimization for central libraries with clang. 2020-04-18 01:26:31 -07:00
Jason Volk
17e62957d9 ircd:Ⓜ️:room::state: Fix incorrect count() delegation on empty type; improve. 2020-04-17 23:40:56 -07:00
Jason Volk
541accaf7b ircd:Ⓜ️:room::state: Fix missing history query path for has(type). 2020-04-17 23:40:56 -07:00
Jason Volk
01f2564df7 ircd:Ⓜ️:room::state: Optimize has(type). 2020-04-17 23:40:56 -07:00
Jason Volk
43cabd52d5 matrix/Makefile.am: Minor cleanup. 2020-04-17 21:19:28 -07:00
Jason Volk
10a1468676 ircd:Ⓜ️:room::origins: Fix bug causing repeated last result. 2020-04-16 18:04:35 -07:00
Jason Volk
549e4df476 ircd:Ⓜ️:join: Fix condition for bootstrap of local rooms (regression 09ba5ee455). 2020-04-16 17:13:09 -07:00
Jason Volk
09ba5ee455 ircd:Ⓜ️:join: Unify condition for bootstrap; fix bootstrap on invite. 2020-04-16 15:45:07 -07:00
Jason Volk
7e44e524d2 ircd:Ⓜ️:user::devices: Ensure some stream_id value is sent with the device list update. 2020-04-16 14:34:38 -07:00
Jason Volk
6eb1724a2b ircd:Ⓜ️:user::registar: Don't send account.options,registration for puppets. 2020-04-15 17:03:01 -07:00
Jason Volk
b3c6932332 modules/client/register: Refactor bridge codepath; m.login.application_service. 2020-04-15 17:00:05 -07:00
Yan Minari
24cb228901
feat(bridge): relax register flow for AS puppet registration
Signed-off-by: Yan Minari <yangm97@gmail.com>
2020-04-15 16:07:02 -03:00
Jason Volk
6bbe8b8855 ircd:Ⓜ️:event::append: Add checkpoint enclosing event object; fix empty object. 2020-04-14 15:31:41 -07:00
Jason Volk
79a4394626 ircd::json::stack: Simplify checkpoint interface controls. 2020-04-14 15:31:41 -07:00
Jason Volk
cb41660c94 ircd: Applications of loopless copy overload for single character. 2020-04-13 23:58:33 -07:00
Jason Volk
053398c74d ircd:Ⓜ️:room::power: Add defaults m.room.encryption, m.room.server_acl, m.room.tombstone at creator level. 2020-04-13 15:09:59 -07:00
Jason Volk
f511051e56 ircd:Ⓜ️:user::rooms: Add missing default inits for query tuple. 2020-04-13 11:12:21 -07:00
Jason Volk
93e878e8ba ircd:Ⓜ️:resource: Add as_token support and puppetting user_id. 2020-04-12 17:10:20 -07:00
Jason Volk
43f0f198f5 ircd:Ⓜ️:user::registar: Simplify parse for optional string in object. 2020-04-12 17:09:14 -07:00
Jason Volk
817ceee911 ircd:Ⓜ️:resource::request: Fixed buffer for remote string. 2020-04-12 17:09:14 -07:00
Jason Volk
0ff5ac43a6 ircd:Ⓜ️:resource::request: Eliminate origin w/ node_id. 2020-04-12 17:09:14 -07:00
Jason Volk
db33bea8dc ircd:Ⓜ️:resource: Cleanup; simplify resource::request construction. 2020-04-12 15:19:17 -07:00
Jason Volk
3b985043d6 ircd:Ⓜ️:request::x_matrix: Cleanup interface; simplify extra split; structured bindings. 2020-04-12 14:47:20 -07:00
Jason Volk
3c8a8d01aa ircd:Ⓜ️:bridge: Add timeout conf item; fix queries; add console cmd. 2020-04-11 20:13:15 -07:00
Jason Volk
926c5914a8 ircd:Ⓜ️:bridge: Add config iteration w/ console cmd. 2020-04-11 18:36:33 -07:00
Jason Volk
d4418e3857 ircd:Ⓜ️:homeserver: Create the !bridge room on bootstrap for now. 2020-04-11 17:47:35 -07:00
Jason Volk
b0128a7ecd ircd:Ⓜ️:homeserver: Add missing !control room creation on bootstrap. 2020-04-10 19:29:17 -07:00
Jason Volk
433a3b3007 ircd:Ⓜ️:app: Rename everything to bridge:: add basic query; simplify config interface. 2020-04-10 19:29:17 -07:00
Jason Volk
d340ed1fdd ircd:Ⓜ️:events::rebuild: Minor fix indentation. 2020-04-09 16:38:53 -07:00
Jason Volk
eeac3c1eaa ircd::server: Add more efficient peer error boolean query. 2020-04-07 13:19:16 -07:00
Jason Volk
bd702d0314 ircd:Ⓜ️:vm::execute: Fix determination for internal room on creations. 2020-04-07 12:59:47 -07:00
Jason Volk
4108945a2c ircd:Ⓜ️:app: Reorg from old module stubs; start central unit. 2020-04-07 12:50:33 -07:00
Jason Volk
1bdc87c55e ircd:Ⓜ️:dbs: Add explicit truncations to limit specific key elements. 2020-04-07 10:52:15 -07:00
Jason Volk
dcd50f3427 ircd:Ⓜ️:user::devices: Drop updates from unknown users. 2020-04-07 10:52:15 -07:00
Jason Volk
9a0a3dfbf1 ircd:Ⓜ️:vm: Eliminate fault::INTERRUPT and handle ctx::interrupt directly in all cases. 2020-04-07 10:52:15 -07:00
Jason Volk
5fe4d8c4ad ircd:Ⓜ️:fed: Add rooms::complexity request w/ console cmd. 2020-04-05 19:00:09 -07:00
Jason Volk
c1692de5ed ircd::json: Abstract the source json::object out of m::event for all tuples by default. 2020-04-05 16:15:23 -07:00
Jason Volk
5f5b312a3e ircd:Ⓜ️:dbs: Simplify key decompositions. 2020-04-04 20:34:43 -07:00
Jason Volk
dd9157315c ircd:Ⓜ️:visible: Minor move conditional return before present room construction. 2020-04-03 17:17:29 -07:00
Jason Volk
89be45b42f ircd:Ⓜ️:dbs: Minor cleanup comparators with structured bindings. 2020-04-03 15:26:43 -07:00
Jason Volk
8474cf761c ircd:Ⓜ️:room::head: Fix signed unsigned integer comparison. 2020-04-03 15:17:58 -07:00
Jason Volk
47deac63d3 ircd:Ⓜ️🆔 Fix v3 / v4 validation false negative on construction. 2020-04-03 11:30:37 -07:00
Jason Volk
c4d0ffaec9 ircd:Ⓜ️:event::fetch: Move std::nothrow to leading argument for consistency. 2020-04-02 20:01:14 -07:00
Jason Volk
762a93fe30 ircd:Ⓜ️:vm: Allow dummy events to resolve heads. 2020-04-02 17:16:54 -07:00
Jason Volk
b31b0eb691 ircd:Ⓜ️:fed: Add convenience delegator for send. 2020-04-01 20:37:51 -07:00
Jason Volk
b2a9efc6f9 ircd:Ⓜ️:user::devices: Fix property iteration closure conditions. 2020-04-01 19:52:31 -07:00
Jason Volk
adab45fb6a ircd:Ⓜ️:user::devices: Add existential test before iteration of any properties. 2020-04-01 19:52:31 -07:00
Jason Volk
f51bcf5939 ircd:Ⓜ️:user::devices: Simplify the existential test. 2020-04-01 19:52:31 -07:00
Jason Volk
fe9635a70e ircd:Ⓜ️:device: Reclassify interface at m::user::devices. 2020-04-01 19:52:31 -07:00
Jason Volk
d052249573 ircd:Ⓜ️ Add user::tokens convenience interface; consolidate various direct room access. 2020-04-01 17:30:17 -07:00
Jason Volk
d1812f0c44 ircd:Ⓜ️ Fix m::index() interface for consistent leading std::nothrow_t. 2020-04-01 16:20:11 -07:00
Jason Volk
93665cc587 ircd:Ⓜ️ Fix event_id() interface for consistent leading std::nothrow_t. 2020-04-01 16:03:25 -07:00
Jason Volk
88987b0e85 ircd:Ⓜ️:user::pushrules: Use non-throwing query to the room state. 2020-04-01 16:03:25 -07:00
Jason Volk
8b160d218e ircd:Ⓜ️:device: Use non-throwing query for device_id event_idx. 2020-04-01 15:38:51 -07:00
Jason Volk
116b0dfcb7 ircd:Ⓜ️:device_list_update: Add preliminary broadcast; add update on deletion. 2020-04-01 14:11:35 -07:00
Jason Volk
27aea89183 ircd:Ⓜ️:device: Add set overload for device_list_update structure. 2020-04-01 13:44:38 -07:00
Jason Volk
9bca61313e ircd:Ⓜ️:device: Add unconditional direct putter; setter to check for duplicate value. 2020-04-01 13:31:13 -07:00
Jason Volk
135798c8ab ircd:Ⓜ️:device: Reduce/reuse codepath to set property to value. 2020-04-01 12:11:35 -07:00
Jason Volk
9ac34573e5 ircd:Ⓜ️:fed::keys::claim: Fix missing content (regression 55ffdddc6a). 2020-03-31 18:06:36 -07:00
Jason Volk
5db50b0b0c ircd:Ⓜ️:user: Use non-throwing query for is_active(). 2020-03-31 12:40:16 -07:00
Jason Volk
cde3c10a08 ircd:Ⓜ️:device: Simplify del method. 2020-03-31 11:02:20 -07:00
Jason Volk
a9214f796b modules/client/keys: Stub handler modules for device_signing/upload and signatures/upload. 2020-03-30 15:30:20 -07:00
Jason Volk
92ad6544b6 ircd:Ⓜ️ Add filter properties for matrix-org/matrix-doc#2326. 2020-03-30 14:03:53 -07:00
Jason Volk
988cc896e1 modules/client/room_keys: Start room_keys/versions room_keys/keys handler stubs. 2020-03-28 17:10:32 -07:00
Jason Volk
c6a4ab17c7 ircd:Ⓜ️:dbs: Select room head resolve indexer during event horizon resolve. 2020-03-28 12:17:12 -07:00
Jason Volk
7e99a86512 ircd:Ⓜ️:dbs: Increase some cache defaults. 2020-03-27 13:44:20 -07:00
Jason Volk
3a73336b2d ircd:Ⓜ️:push: Add spec-omitted highlight tweak to .m.rule.contains_user_name. 2020-03-26 17:20:06 -07:00
Jason Volk
5665ae56cf ircd:Ⓜ️:user::notifications: Add sorting for any-room queries here. 2020-03-26 17:20:06 -07:00
Jason Volk
9a49104d28 ircd:Ⓜ️:push: Add undocumented '.m.rule.reaction' server-default rule. 2020-03-26 17:20:06 -07:00
Jason Volk
2ec80d025f ircd:Ⓜ️:vm: Ensure error handling semantics throughout eval stack. 2020-03-26 10:24:35 -07:00
Jason Volk
8efeb1a76a ircd:Ⓜ️:typing: Create non-existing here before sending to user room for now. 2020-03-25 18:31:10 -07:00
Jason Volk
592eb375f6 ircd:Ⓜ️:room::head: Throw error on failure to generate any prev_events. 2020-03-25 18:27:40 -07:00
Jason Volk
1b49d001b2 ircd:Ⓜ️:typing: Log exceptions coming through the vm.eval edu handler. 2020-03-25 18:27:40 -07:00
Jason Volk
1e96e34b54 ircd:Ⓜ️:vm: Set eval event/event_id members in outer frame. 2020-03-25 18:27:40 -07:00
Jason Volk
b8239d45cd ircd:Ⓜ️:dbs: Split dbs unit per column; naming simplifications; major reorg. 2020-03-25 16:08:17 -07:00
Jason Volk
ddbabedf84 ircd:Ⓜ️:event::conforms: Add type and state_key length limitation conditions. 2020-03-25 14:41:16 -07:00
Jason Volk
629617deb9 ircd:Ⓜ️:event::conforms: Add missing origin conditions. 2020-03-25 14:41:16 -07:00
Jason Volk
35a18366b4 ircd:Ⓜ️:user::pushrules: Ensure user-set rules have priority over server-default. 2020-03-24 21:38:58 -07:00
Jason Volk
3472f551eb ircd:Ⓜ️:user::notifications: Optimize with non-querying metadata closure overload. 2020-03-24 16:41:16 -07:00
Jason Volk
8f251dc266 ircd:Ⓜ️:user::notifications: Add unmake_type() inverting tool. 2020-03-24 16:16:16 -07:00
Jason Volk
4c70d8ce08 ircd:Ⓜ️:user::notifications: Add room_id to opts; prefix keying strategy.
modules/m_push: Add room_id to type generation.
2020-03-24 14:56:30 -07:00
Jason Volk
36b1fa6bde ircd:Ⓜ️:room::type: Add prefix matching option. 2020-03-24 14:50:41 -07:00
Jason Volk
d1f9b11b4c ircd:Ⓜ️:user::notifications: Improve iteration with room::type. 2020-03-24 14:14:39 -07:00
Jason Volk
7a6ba49c34 ircd:Ⓜ️:room: Add type iteration interface. 2020-03-24 14:14:39 -07:00
Jason Volk
256e5ed960 ircd:Ⓜ️:dbs: Add room_type column to schema. 2020-03-24 11:49:15 -07:00
Jason Volk
8d6dfa7cd5 ircd:Ⓜ️ Add room_id(event_idx) to convenience suite. 2020-03-23 20:31:21 -07:00
Jason Volk
7861f77015 ircd:Ⓜ️:push: Add branch to handle other pattern key for content rules. 2020-03-23 19:32:01 -07:00
Jason Volk
93cd2ededc ircd:Ⓜ️:user::notifications: Add unit; develop interface; add type generation. 2020-03-23 18:28:39 -07:00
Jason Volk
ab4b31bc13 ircd:Ⓜ️:user::pushrules: Add event_idx of rule as argument to closures.
ircd:Ⓜ️:user::pushers: Add event_idx of rule as argument to closures.
2020-03-23 13:01:24 -07:00
Jason Volk
98562fe488 ircd:Ⓜ️:push: Add tool to determine if rule has highlight tweak set. 2020-03-22 20:04:16 -07:00
Jason Volk
c4c1c47351 ircd:Ⓜ️:push: Add tool to query if an action is notifying or not. 2020-03-22 20:00:14 -07:00
Jason Volk
2a301d6b2a ircd:Ⓜ️:push: Search formatted_body for contains_user_mxid. 2020-03-22 18:34:42 -07:00
Jason Volk
edecb8b9ae ircd:Ⓜ️:push: Use zero-copy closure to fetch displayname. 2020-03-22 18:34:42 -07:00
Jason Volk
7ca990e1ee ircd:Ⓜ️:push: Fix stale assertion. 2020-03-22 18:18:51 -07:00
Jason Volk
fc63e102fa ircd:Ⓜ️:push: Add non-spec condition kind 'state_key_user_mxid'. 2020-03-22 18:18:51 -07:00
Jason Volk
f58cfed6e9 ircd:Ⓜ️:push: Add non-spec condition kind 'contains_user_mxid'. 2020-03-22 18:18:51 -07:00
Jason Volk
aeefb8a155 ircd:Ⓜ️:push: Fixes for the event_match condition functor. 2020-03-22 18:18:51 -07:00
Jason Volk
822b422dfe modules: Add preliminary event pushrule evaluation module. 2020-03-22 18:18:50 -07:00
Jason Volk
643efbfad7 ircd:Ⓜ️:push: Log a debug error for unknown condition kinds. 2020-03-22 18:18:50 -07:00
Jason Volk
6774ac742a ircd:Ⓜ️:push: Optimize condition order for some default spec rules. 2020-03-22 18:18:50 -07:00
Jason Volk
a7a67b0689 ircd:Ⓜ️:user::pushrules: Fix throwing query in nothrow getter. 2020-03-22 18:18:50 -07:00
Jason Volk
55396a9a76 ircd:Ⓜ️:vm: Move the internal(room) query and indicator to outer scope. 2020-03-22 14:03:28 -07:00
Jason Volk
329982f3f1 ircd:Ⓜ️:push: Add iteration for all rules of all users. 2020-03-22 14:03:28 -07:00
Jason Volk
8445cbf83a ircd:Ⓜ️:push: Add log facility for this namespace. 2020-03-21 20:49:54 -07:00
Jason Volk
27556f2d9c ircd:Ⓜ️:vm::eval: Add member which caches the m::internal(room) result. 2020-03-21 20:49:54 -07:00
Jason Volk
592d8a90c2 ircd:Ⓜ️:vm: Additional sequence barrier for shutdown. 2020-03-21 19:37:23 -07:00
Jason Volk
63be2183f9 ircd:Ⓜ️:user: Add pushers interface. 2020-03-21 11:35:40 -07:00
Jason Volk
245195488c ircd:Ⓜ️:push: Add event type prefix string for pusher. 2020-03-21 11:35:40 -07:00
Jason Volk
435721c971 ircd:Ⓜ️:push: Add match interface; condition table; exception propagation. 2020-03-20 22:25:14 -07:00
Jason Volk
d1ff1aec74 ircd:Ⓜ️:push: Implement r0.6.0-13.13.1.5.3 condition kind subroutine logics. 2020-03-20 22:25:14 -07:00
Jason Volk
1d30da7bf3 ircd:Ⓜ️:vm::eval: Skip any mfetch of keys if verify option deselected. 2020-03-20 14:45:12 -07:00
Jason Volk
8db2bf629e ircd:Ⓜ️:vm: Move vm::eval inner-loop logic into vm::execute; fix room_version/event_id. 2020-03-20 14:26:55 -07:00
Jason Volk
3dc679fbb7 ircd:Ⓜ️:room::bootstrap: Cleanup/Unify a base vm::opts for all evals. 2020-03-20 12:15:40 -07:00
Jason Volk
8ca580362f ircd:Ⓜ️:room::bootstrap: Fix loss of room version information during bootstrap. 2020-03-20 12:04:19 -07:00
Jason Volk
fa4160e9a6 ircd::db::dbs: Eliminate strict room::id from event_state tuple; simplify comparator. 2020-03-19 21:54:07 -07:00
Jason Volk
de9f054d97 ircd:Ⓜ️:push: Add remaining content server-default rule w/o pattern. 2020-03-19 16:25:45 -07:00
Jason Volk
28626f17c1 ircd:Ⓜ️:user::pushrules: Integrate the default pushrules for the user. 2020-03-19 16:25:45 -07:00
Jason Volk
f8b99ad26e ircd:Ⓜ️:user: Remove pre-pushrules highlight counter. 2020-03-19 16:01:32 -07:00
Jason Volk
014b6e9a9b ircd:Ⓜ️:typing: Add interruption point before wait in loop. 2020-03-19 16:01:32 -07:00
Jason Volk
abfb106125 ircd: Rename globular classes to indicate case insensitivity. 2020-03-19 16:01:32 -07:00
Jason Volk
bab3f959ac ircd:Ⓜ️:push: Move default rules string under rules class; minor reorg. 2020-03-19 16:01:32 -07:00
Jason Volk
4cd625f2e0 ircd:Ⓜ️:fed: I robbed other churches by receiving support from them so as to serve you. -2 Cor. 11:8 (NIV). 2020-03-18 23:02:35 -07:00
Jason Volk
a3037b7cd4 ircd:Ⓜ️:user: Add interface definitions for push rule events to user room. 2020-03-18 14:34:29 -07:00
Jason Volk
2aec995edd ircd:Ⓜ️:push: Move path tuple; add type string suite. 2020-03-18 14:34:29 -07:00
Jason Volk
5391ba7b76 ircd:Ⓜ️:push: Add spec-default ruleset object. 2020-03-18 12:27:14 -07:00
Jason Volk
6c807f7e96 ircd:Ⓜ️:push: Add push ruleset, rule, condition, and pushers structures. 2020-03-18 10:42:48 -07:00
Jason Volk
0bb52f57a3 ircd:Ⓜ️:user: Add unit and preliminary interface stubs for pushrules. 2020-03-18 10:42:48 -07:00
Jason Volk
0b8b3ee988 ircd:Ⓜ️:vm: Add an opts.unique bypass option for condition. 2020-03-17 11:48:22 -07:00
Jason Volk
b8c31fe4d3 ircd:Ⓜ️:vm::eval: Apply missing opts.replays in condition. 2020-03-17 11:42:27 -07:00
Jason Volk
0ad8ccc905 ircd:Ⓜ️:fed: Take no thought how or what to speak: for it shall be given you in that hour. -Mat. 10:19 (DRB) 2020-03-17 08:57:37 -07:00
Jason Volk
ec5fd98f59 ircd:Ⓜ️:homeserver: Use central imports map; reorder constructions. 2020-03-16 18:17:52 -07:00
Jason Volk
c1672b280f ircd:Ⓜ️:typing: Report error from timeout worker context; minor cleanup. 2020-03-16 16:56:07 -07:00
Jason Volk
990d2346c4 ircd:Ⓜ️:fetch: Fix context and object destructions; minor cleanup. 2020-03-16 16:56:07 -07:00
Jason Volk
daea5cddef ircd:Ⓜ️ Replace various runlevel conditions with barrier template. 2020-03-16 16:56:07 -07:00
Jason Volk
c815de3621 ircd::run: Rename level IDLE to LOAD; minor reorg. 2020-03-16 16:56:07 -07:00
Jason Volk
a725ff3521 ircd:Ⓜ️ Remove remaining export macros on central library definitions. 2020-03-16 16:56:06 -07:00
Jason Volk
82bc4be5e1 ircd:Ⓜ️:fed: Improve conditions to bail before redirect. 2020-03-16 07:53:30 -07:00
Jason Volk
83b7e0b9b1 ircd:Ⓜ️:homeserver: Add missing alias room to the hs bootstrap for now; related 33f1ce6e09. 2020-03-14 18:07:45 -07:00
Jason Volk
829516afde ircd::db: Add compaction priority option to descriptor.
ircd:Ⓜ️:dbs: Tune compaction priority algorithm.
2020-03-13 15:12:22 -07:00
Jason Volk
05131c1bbe ircd:Ⓜ️:vm::eval: Wait for duplicate evals instead or before any fault::EXISTS. 2020-03-13 11:57:00 -07:00
Jason Volk
33f1ce6e09 ircd:Ⓜ️:homeserver: Fix removed !public creation hook w/ create on bootstrap for now. 2020-03-12 21:31:42 -07:00
Jason Volk
f1dca3ee42 ircd:Ⓜ️:keys: Switch to exclusive use of v2/query endpoint; minor cleanup. 2020-03-12 21:09:56 -07:00
Jason Volk
89db4cfe21 ircd:Ⓜ️:fed: Support HTTP redirects when fetching well-known. 2020-03-11 20:45:22 -07:00
Jason Volk
dcfa6c9d48 ircd:Ⓜ️:fed: Add conf item for well-known fetch timeout. 2020-03-11 18:47:17 -07:00
Jason Volk
34a7954b67 ircd:Ⓜ️:room::bootstrap: Use non-reference for explicit operator cast (GCC 9.2.1). 2020-03-11 15:11:53 -07:00
Jason Volk
59ad4731ae modules/m_relation: Add hook to discover and fetch events from m_relates_to. 2020-03-10 23:03:14 -07:00
Jason Volk
de4792f539 ircd:Ⓜ️:room::origins: Optimize origins iteration w/ conditional key regeneration. 2020-03-09 14:41:36 -07:00
Jason Volk
3b2342e001 ircd:Ⓜ️:room::origins: Simplify callstack; remove unused iteration. 2020-03-09 14:41:36 -07:00
Jason Volk
dad4750971 ircd:Ⓜ️:fetch: Propagate interrupt through handlers. 2020-03-09 09:48:37 -07:00
Jason Volk
08d9c95401 ircd:Ⓜ️:fetch: Reduce error log level/verbosity for fetch start failures. 2020-03-09 09:48:36 -07:00
Jason Volk
c4ef486ebd ircd:Ⓜ️:fed: Simplify cache record composition; use json::members iov. 2020-03-09 09:10:45 -07:00
Jason Volk
dc1778bce7 ircd:Ⓜ️:room::bootstrap: Use indirect for fed::opts initialization. 2020-03-08 18:54:47 -07:00
Jason Volk
dcc0aae886 ircd:Ⓜ️:homeserver: Run conf item update callbacks at construction for now. 2020-03-08 14:29:22 -07:00
Jason Volk
56a8f6494d ircd:Ⓜ️:fetch: Fix conf item type. 2020-03-08 14:09:59 -07:00
Jason Volk
1ee5cbdeee ircd:Ⓜ️:room::server_acl: Propagate interrupt without critical log. 2020-03-08 13:03:14 -07:00
Jason Volk
97747219a4 ircd:Ⓜ️:fed: Rename property in well-known cache record. 2020-03-07 23:59:22 -08:00
Jason Volk
44f587714e ircd:Ⓜ️ Tweak various federation request buffer options; related e3e83a6423fd. 2020-03-07 22:02:14 -08:00
Jason Volk
63aa71ce58 ircd:Ⓜ️:fed: Implement federation 3.1 well-known for server name resolution. 2020-03-07 21:33:44 -08:00
Jason Volk
55ffdddc6a ircd:Ⓜ️:fed: Refactor all interfaces using abstract request. 2020-03-07 21:33:44 -08:00
Jason Volk
c0a5a7a89e ircd:Ⓜ️ Simplify various interfaces using string rather than net::hostport remotes. 2020-03-07 17:17:46 -08:00
Jason Volk
dddb8e4254 ircd:Ⓜ️:fed: Mitigate some remaining event_id.host() to derive a remote. 2020-03-07 14:55:50 -08:00
Jason Volk
a068981452 ircd:Ⓜ️:fed: Simplify and rename well known fetch function. 2020-03-07 14:55:50 -08:00
Jason Volk
bfeceea645 ircd:Ⓜ️:rooms::summary: Minor cleanup. 2020-03-07 12:16:33 -08:00
Jason Volk
6ab71b8fdc ircd:Ⓜ️:fed: Add well-known request for server name resolution w/ console cmd. 2020-03-06 18:28:41 -08:00
Jason Volk
0a90b4d4cc ircd:Ⓜ️:fed: Apply the canon service to all remotes without a service string. 2020-03-06 10:37:28 -08:00
Jason Volk
c44d732443 ircd:Ⓜ️ Rename v1/v2 namespace to fed. 2020-03-05 20:06:14 -08:00
Jason Volk
a46bf7dcbe ircd::net: Eliminate the legacy canon_port/canon_service defaults.
ircd:Ⓜ️ Move canon_port/canon_service into matrix lib.
2020-03-05 14:18:55 -08:00
Jason Volk
f3fbcc6ab6 ircd:Ⓜ️:vm: Eliminate head resolves for type; related c3f50d5bab. 2020-03-04 12:57:27 -08:00
Jason Volk
9789772307 ircd:Ⓜ️:feds: Minor simplify. 2020-03-04 11:15:28 -08:00
Jason Volk
c3f50d5bab ircd:Ⓜ️:vm: Add special condition disabling room head update based on type. 2020-03-03 21:38:46 -08:00
Jason Volk
0907f5d6f2 ircd:Ⓜ️:vm: Elaborate eval error handlers; add room_id to error msgs. 2020-03-03 21:38:46 -08:00
Jason Volk
e664ba22d8 ircd:Ⓜ️:vm: Simplify hook name call for log msgs. 2020-03-03 19:15:02 -08:00
Jason Volk
2896b721ff ircd:Ⓜ️:typing: Handle and log exceptions in timeout worker stack. 2020-03-03 14:47:47 -08:00
Jason Volk
c14bef8cd9 ircd:Ⓜ️:typing: Fix iteration condition in timeout worker loop. 2020-03-03 14:47:07 -08:00
Jason Volk
14b962a695 ircd:Ⓜ️:vm: Track evaluation hook phase. 2020-03-02 20:55:08 -08:00
Jason Volk
d08a4f6f24 ircd:Ⓜ️:vm: Simplify call for hook name in debuglog. 2020-03-02 19:51:24 -08:00
Jason Volk
694b90b04e ircd:Ⓜ️:room::power: Replace unquote() w/ json::string type. 2020-03-02 16:46:00 -08:00
Jason Volk
61fa79acb8 ircd:Ⓜ️:room::bootstrap: Log completion with notice level. 2020-03-02 16:46:00 -08:00
Jason Volk
6123040239 ircd:Ⓜ️:init::backfill: Add conf item for local_joined_only option; default true. 2020-03-02 16:45:50 -08:00
Jason Volk
f471093d3e ircd:Ⓜ️:user::rooms: Use _event_state to eliminate the ircd.member type. 2020-03-01 17:13:15 -08:00
Jason Volk
2ee8d7a1fb ircd:Ⓜ️:keys: Use dynamic buffer for query. 2020-03-01 16:16:13 -08:00
Jason Volk
257e335dad ircd:Ⓜ️:pretty: Relax definedness requirement of fields. 2020-03-01 14:20:05 -08:00
Jason Volk
84a4262a9d ircd:Ⓜ️:homeserver: Tweak shutdown order; interrupts first. 2020-03-01 11:26:52 -08:00
Jason Volk
cb0363f13c ircd:Ⓜ️:rooms: Add dump to file util w/ console cmd. 2020-02-28 20:19:42 -08:00
Jason Volk
8d9a9eccfb ircd:Ⓜ️:rooms: Add prefetch context on iteration. 2020-02-28 20:19:42 -08:00
Jason Volk
d402eddb98 ircd::run: Place out-of-line default ctor/dtor definitions.
ircd::http::error: Place out-of-line dtor definition.

ircd:Ⓜ️:error: Place out-of-line dtor definition.

ircd::exception: Place out-of-line dtor definition.

ircd:Ⓜ️:vm: Place out-of-line ctor definitions for copts/opts.
2020-02-28 12:36:45 -08:00
Jason Volk
89d8f7cf27 ircd:Ⓜ️:homeserver: Terminate backfill first on shutdown for now. 2020-02-28 10:56:17 -08:00
Jason Volk
a8a3166936 ircd:Ⓜ️:typing: Simplify typing context termination. 2020-02-28 10:12:38 -08:00
Jason Volk
e27dd573ad ircd:Ⓜ️:homeserver: Consolidate legacy shutdown procedure on primary dtor for now. 2020-02-27 16:25:47 -08:00
Jason Volk
db6b809a2b ircd:Ⓜ️:node: Fallback to old_verify_keys after verify_keys. 2020-02-27 13:39:31 -08:00
Jason Volk
1bdf52b7bb ircd:Ⓜ️:events: Add preliminary interface to _event_state w/ console cmd. 2020-02-26 18:24:17 -08:00
Jason Volk
df05533c2c ircd:Ⓜ️:dbs: Fix partial event_state key constructions.
ircd:Ⓜ️:dbs: Add checks for key part size before integer conversion.
2020-02-26 17:55:23 -08:00
Jason Volk
0c896d7c58 ircd:Ⓜ️:typing: Ensure termination of timeout worker on unload. 2020-02-26 15:32:06 -08:00
Jason Volk
a48e481a44 ircd:Ⓜ️:dbs: Fix incorrect constant used. 2020-02-26 14:17:43 -08:00
Jason Volk
b07f8d633e ircd:Ⓜ️:homeserver: Move module unload to same unit as load. 2020-02-25 13:31:11 -08:00
Jason Volk
8baaf366c4 ircd:Ⓜ️:event: Fix signature interface regression; optimize call path. 2020-02-24 11:01:52 -08:00
Jason Volk
b0c0970d69 ircd:Ⓜ️:fetch: Prevent fetch requests from starting based on global conditions. 2020-02-22 14:00:31 -08:00
Jason Volk
fca41d5e22 ircd:Ⓜ️:typing: Fix clamp on configured timeout max for typists. 2020-02-21 12:50:58 -08:00
Jason Volk
1765ba8921 ircd:Ⓜ️:typing: Add conf item for timeout worker interval. 2020-02-21 12:24:17 -08:00
Jason Volk
d7748fb1b3 ircd:Ⓜ️:typing: Increase stack size for timeout worker; attribute; minor cleanup. 2020-02-21 12:24:06 -08:00
Jason Volk
055fa1ee74 ircd:Ⓜ️:typing: Remove duplicate. 2020-02-21 12:24:06 -08:00
Jason Volk
e9cc354f01 ircd:Ⓜ️ Fix empty iteration condition. 2020-02-20 19:46:56 -08:00
Jason Volk
50535e89bb ircd:Ⓜ️ Minor rename. 2020-02-20 18:43:47 -08:00
Jason Volk
a4f48eaab8 ircd:Ⓜ️:vm::eval: Conduct parallel fetch of new keys for vector eval. 2020-02-20 18:43:47 -08:00
Jason Volk
20bc23abde ircd:Ⓜ️:dbs: Replace pairs with tuples for reference lifetime issue w/ clang. 2020-02-20 16:25:51 -08:00
Jason Volk
a13d9282ac ircd:Ⓜ️:vm::eval: Add vector_view construction and eval to interface/stack. 2020-02-20 14:49:33 -08:00
Jason Volk
70dd2d7ba6 ircd:Ⓜ️:init::backfill: Add infolog during iteration; improve warning as per similar msgs. 2020-02-20 12:37:45 -08:00
Jason Volk
4f924bd280 ircd:Ⓜ️:room::head: Add condition to fix duplicate append. 2020-02-19 13:27:27 -08:00
Jason Volk
ec78085e45 ircd:Ⓜ️:room::head: Tolerate erroneous/inconsistent entries in head. 2020-02-19 13:27:22 -08:00
Jason Volk
860087b6ce ircd:Ⓜ️ Rethrow ircd::error to prevent shlib RTTI/personality dependency for m::error. 2020-02-19 13:27:06 -08:00
Jason Volk
c3f0803e49 modules: X-value copy elision hints for clang. 2020-02-12 14:34:26 -08:00
Jason Volk
37eaff3b67 Tweak tls-models. 2020-02-11 15:37:14 -08:00
Jason Volk
b8c26b37b6 ircd:Ⓜ️ Remove unnecessary module attributes. 2020-02-01 22:18:49 -08:00
Jason Volk
5ecffa8481 ircd:Ⓜ️:init::backfill: Fix structured binding access from closure clang mishap. 2020-02-01 22:18:49 -08:00
Jason Volk
42e3570c9f ircd:Ⓜ️ Fix alignment specifiers for clang. 2020-02-01 22:18:49 -08:00
Jason Volk
6b8730d94f ircd:Ⓜ️:request: Increase buffer size configured default. 2020-01-26 17:00:08 -08:00
Jason Volk
5d47caee1e ircd:Ⓜ️ Output missing event_id for v3+ events in multi-line pretty. 2020-01-23 19:12:49 -08:00
Jason Volk
61c2fd77e6 ircd:Ⓜ️:event: Skip erroneous append inputs. 2020-01-17 17:27:34 -08:00
Jason Volk
da81130db9 ircd:Ⓜ️:keys: Use single supplied buffer for request. 2020-01-11 23:31:53 -08:00
Jason Volk
c4c9bb2762 ircd:Ⓜ️:events: Optimize db get options in dumper. 2020-01-11 23:31:53 -08:00
Jason Volk
be955faf2d ircd:Ⓜ️:events: Log errors and attempt to continue dump loop. 2020-01-08 18:25:31 -08:00
Jason Volk
7a5bb70f16 ircd:Ⓜ️:events: Use event_json column for dump. 2020-01-08 18:25:31 -08:00
Jason Volk
47df2bc4e2 ircd:Ⓜ️:events: FADV_DONTNEED on events dump fd. 2020-01-08 18:25:31 -08:00
Jason Volk
048cfe7019 ircd:Ⓜ️:events: Reduce default dump buffer size. 2020-01-08 18:25:31 -08:00
Jason Volk
3500ec86dc ircd:Ⓜ️:events: Improve dump loop and infolog. 2020-01-08 18:25:31 -08:00
Jason Volk
33b06a27fb ircd:Ⓜ️:init::backfill: Set nice values for worker pool. 2020-01-06 15:25:44 -08:00
Jason Volk
d9c7985376 ircd:Ⓜ️:sync: Add next_batch central convenience; add branding to token. 2020-01-06 13:24:21 -08:00
Jason Volk
a90297b843 ircd:Ⓜ️:room::aliases::cache: Improve response room_id condition. 2020-01-02 14:00:49 -08:00
Jason Volk
8ff493916a ircd:Ⓜ️:keys: Send old keys to cache first. 2019-12-25 00:12:06 -08:00
Jason Volk
1adccbecac ircd:Ⓜ️:createroom: Add empty arrays on create event for spinapps. 2019-12-22 02:24:40 -08:00
Jason Volk
06373848bc ircd:Ⓜ️:keys: Send old_verify_keys contents to cache.
ircd:Ⓜ️:keys: Minor cleanup.
2019-12-21 14:34:27 -08:00
Jason Volk
ff1912ea5f modules/vm_execute: Reduce debuglog on phase hook for now. 2019-12-11 20:53:52 -08:00