0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-28 00:14:07 +01:00
Commit graph

604 commits

Author SHA1 Message Date
Jason Volk
3ee9186173 ircd:Ⓜ️ Improve safe init exception propagation. 2018-08-30 21:55:20 -07:00
Jason Volk
140c4a5143 ircd:Ⓜ️ Only set ircd offline presence on clean ~init. 2018-08-30 21:55:20 -07:00
Jason Volk
a4e4424ede ircd: Improve main control flow for termination condition during init. 2018-08-28 15:04:23 -07:00
Jason Volk
48a436fcc1 ircd:Ⓜ️:event: Addl prev utils; simplify before(). 2018-08-26 07:13:47 -07:00
Jason Volk
02d1cd1115 ircd:Ⓜ️ Add central linkage for m::feds::state. 2018-08-26 07:13:47 -07:00
Jason Volk
170475f374 ircd:Ⓜ️ Add user::events iterator w/ console cmd. 2018-08-24 14:01:32 -07:00
Jason Volk
bf234c77a4 ircd:Ⓜ️:user: Ensure bools are returned from iteration closures here. 2018-08-24 13:55:33 -07:00
Jason Volk
0f79ad7b08 ircd:Ⓜ️:room: Officiate random_origin w/ central linkage; use view closure. 2018-08-24 04:19:55 -07:00
Jason Volk
cbd149b650 ircd:Ⓜ️:room::origins: Add a bool for_each() to eventually replace test(). 2018-08-22 17:42:35 -07:00
Jason Volk
a4e1162ae2 ircd:Ⓜ️:room: Pass db get options to the iterations. 2018-08-21 08:48:42 -07:00
Jason Volk
3a4817354e ircd:Ⓜ️ Add room state types iteration. 2018-08-21 08:37:44 -07:00
Jason Volk
99ed82f52d ircd:Ⓜ️ Remove the listeners first on deinit. 2018-08-19 20:19:43 -07:00
Jason Volk
61fade178e ircd::m/modules/key: Various reorg / modularization. 2018-08-17 12:51:49 -07:00
Jason Volk
4199d5026c ircd: Factor out the ircd::BUFSIZE; remove stale ircd::config extern. 2018-08-17 12:51:48 -07:00
Jason Volk
9a08305bc4 ircd:Ⓜ️ Partial listen init / init related. 2018-08-14 20:09:20 -07:00
Jason Volk
c442954e12 ircd:Ⓜ️ Various init reorg related. 2018-08-14 16:47:42 -07:00
Jason Volk
19b4e58944 ircd:Ⓜ️ Rename modules map to imports. 2018-08-14 15:51:57 -07:00
Jason Volk
f51fde206a ircd:Ⓜ️ Remove unused event_id to optimize query. 2018-08-11 00:42:09 -07:00
Jason Volk
6dddf9135d ircd:Ⓜ️:dbs: Minor simplify. 2018-07-22 12:05:24 -07:00
Jason Volk
dd037988f3 ircd::m/modules: Update various client listeners w/ callback. 2018-07-06 18:40:15 -07:00
Jason Volk
c26255290b ircd:Ⓜ️:room::members: Allow empty membership string to count() all members. 2018-07-01 14:49:24 -07:00
Jason Volk
08d45dc838 ircd:Ⓜ️ Generalize room::lonly into more efficient room::origins::only(origin). 2018-06-30 21:57:09 -07:00
Jason Volk
8038faf8e0 ircd:Ⓜ️ Add conditionals to bootstrap() operations. 2018-06-30 18:49:38 -07:00
Jason Volk
85d1c924a5 ircd:Ⓜ️ Add function to query if room only has our origin joined. 2018-06-30 18:49:03 -07:00
Jason Volk
7d4eb46a1a ircd:Ⓜ️ Interface/linkage to generate room account_data type string. 2018-06-19 21:47:26 -06:00
Jason Volk
f8763af509 ircd:Ⓜ️ Add user interface w/ linkage for room account data. 2018-06-19 21:33:03 -06:00
Jason Volk
c136e82a57 ircd:Ⓜ️ Temporary fixes for stale static initializations. 2018-06-16 23:00:47 -06:00
Jason Volk
c5d11b7b07 ircd:Ⓜ️ Defaults for some initial config related. 2018-06-16 20:45:28 -06:00
Jason Volk
fefe965149 ircd:Ⓜ️:init: Improve some conf related defaults; ctor error log cleanup. 2018-06-15 15:22:27 -06:00
Jason Volk
4c39840352 ircd:Ⓜ️:state: Checkpoint relaxed assumptions about creating new tree roots. 2018-06-12 01:00:15 -07:00
Jason Volk
e889c54bc3 ircd:Ⓜ️:dbs: Checkpoint changes to default cache sizes (un-conf'ed) for now. 2018-06-12 01:00:15 -07:00
Jason Volk
d912400f32 ircd:Ⓜ️:vm: Move vm submodules ctor/dtor into libircd for recursive issues for now. 2018-06-12 01:00:15 -07:00
Jason Volk
b4e7bb062c modules: Rename root to webroot. 2018-06-12 01:00:14 -07:00
Jason Volk
912562f469 ircd:Ⓜ️:vm: Checkpoint phase-as-class skeleton. 2018-06-12 01:00:14 -07:00
Jason Volk
0da4dec13c ircd:Ⓜ️:event: Add topological before; improve prev iteration closure; reorg some util. 2018-06-09 14:37:31 -07:00
Jason Volk
de07d32afd ircd/modules: Update various conditional json::iov nodes. 2018-06-05 11:19:40 -07:00
Jason Volk
f2acc304c5 ircd:Ⓜ️:room: Add power levels convenience interface (query side). 2018-06-04 14:23:39 -07:00
Jason Volk
2d7b011bba ircd:Ⓜ️:v1: Add frontfill request. 2018-06-03 19:17:03 -07:00
Jason Volk
50835ce7bd ircd:Ⓜ️:room::messages: Adhere to room.event_id in ctor if given. 2018-06-03 14:50:42 -07:00
Jason Volk
c58e60c122 modules/vm: Move vm::log out of module back to libircd. 2018-06-03 09:58:45 -07:00
Jason Volk
a24d0e387e ircd:Ⓜ️:room::messages: Ret false rather than throw for seek(event_id) not_found. 2018-06-03 07:44:37 -07:00
Jason Volk
7743198601 ircd:Ⓜ️:room: Optimize the room::membership query fix. 2018-06-02 22:18:45 -07:00
Jason Volk
49ef5af3e5 ircd:Ⓜ️:room: Fix the membership query for missing memberships. 2018-06-02 18:24:39 -07:00
Jason Volk
467441e83c ircd:Ⓜ️:room: Optimize the membership convenience query. 2018-05-31 06:39:36 -07:00
Jason Volk
6671122997 ircd:Ⓜ️ Rework visibility interface for empty mxid's as part of a public test. 2018-05-31 04:25:04 -07:00
Jason Volk
de8e7b5908 ircd:Ⓜ️:vm: Move eval entry related into modules/vm; convert phase to struct. 2018-05-29 04:05:50 -07:00
Jason Volk
2ba495eb8b modules/m_presence: Move some externs from client/presence; update linkages. 2018-05-28 01:31:45 -07:00
Jason Volk
9714d1ee15 ircd:Ⓜ️ Reorg event visibility interface; update linkages. 2018-05-28 00:33:21 -07:00
Jason Volk
377276432b ircd:Ⓜ️ Add back non-essential fields after essential stripping here. 2018-05-27 08:39:49 -07:00
Jason Volk
3ec0a1c7c8 ircd:Ⓜ️ Further overload the event::hashes stack; use proper return types. 2018-05-27 08:39:49 -07:00
Jason Volk
0d833cda4f ircd:Ⓜ️ Add templated payload for hook. 2018-05-26 22:12:11 -07:00
Jason Volk
37f8868afc ircd:Ⓜ️:init: Run a conf update after all modules have loaded [disabled] 2018-05-25 23:48:07 -07:00
Jason Volk
e11973fb40 ircd:Ⓜ️:init: Provide some partial load ordering based on module prefix. 2018-05-25 21:07:29 -07:00
Jason Volk
1309565506 ircd:Ⓜ️ Add essential key pruning for m.room.redaction sign and verify. 2018-05-25 18:35:40 -07:00
Jason Volk
ee0ff2b1ad ircd:Ⓜ️ Basic internal db::gopts for events iteration. 2018-05-24 21:31:33 -07:00
Jason Volk
184684264b ircd:Ⓜ️🪝 Additional internal distillation of class components. 2018-05-24 18:31:47 -07:00
Jason Volk
9da798145b ircd:Ⓜ️ Allow room opts passed through user::room ctor. 2018-05-23 16:44:16 -07:00
Jason Volk
f641076072 ircd::json: Antipodal undefined number; add assert that it's not zero. 2018-05-23 00:32:37 -07:00
Jason Volk
fd13e71684 ircd:Ⓜ️:dbs: Add equality comparator to optimize events__room_events. 2018-05-21 19:52:47 -07:00
Jason Volk
6be37c7aa6 ircd:Ⓜ️ Add event::fetch::opts overrider to room::messages; simplify overrider on room::state. 2018-05-21 17:36:16 -07:00
Jason Volk
bc26a8f9b3 ircd:Ⓜ️ Optimize user::rooms iteration event query. 2018-05-21 00:19:27 -07:00
Jason Volk
2755d779c9 ircd:Ⓜ️ Simplify user::rooms iteration callstack. 2018-05-21 00:19:08 -07:00
Jason Volk
559c2f008c ircd:Ⓜ️ Optimize room::members::count w/ event::fetch::opts keys select. 2018-05-20 20:30:25 -07:00
Jason Volk
65b516e4c0 ircd:Ⓜ️ Use proper m::membership(event) test and deoptimize accordingly. 2018-05-20 20:26:12 -07:00
Jason Volk
db026147b7 ircd:Ⓜ️ Optimize query for room::members::for_each w/ user_id closure. 2018-05-20 20:17:45 -07:00
Jason Volk
67b7a58f42 ircd:Ⓜ️ Additional event/room visibility linkage and preliminary hook. 2018-05-20 20:15:50 -07:00
Jason Volk
a66928572b ircd:Ⓜ️ Elaborate room::state ctor for easier custom fopts. 2018-05-20 20:14:44 -07:00
Jason Volk
6e7d5aec3b ircd:Ⓜ️ Rename room opts to copts for consistency. 2018-05-20 20:14:12 -07:00
Jason Volk
c88ce8168b Revert "ircd:Ⓜ️ Convert hook to template."
This reverts commit 915076296f.
2018-05-20 18:39:32 -07:00
Jason Volk
67744cf73e ircd:Ⓜ️ Remove the room::state::opts. 2018-05-20 05:11:30 -07:00
Jason Volk
7e5b9b69ed ircd:Ⓜ️ Integrate fetch::opts with room queries. 2018-05-20 04:35:17 -07:00
Jason Volk
79371780f3 ircd:Ⓜ️ Add fetch::opts with keys and db::gopts. 2018-05-20 04:34:31 -07:00
Jason Volk
163106bb72 ircd:Ⓜ️ Simplify the event::fetch ctor stack w/ default selection. 2018-05-20 01:48:47 -07:00
Jason Volk
2f48b69102 ircd:Ⓜ️ Add event::fetch seekless ctor w/ selection. 2018-05-19 22:55:03 -07:00
Jason Volk
6150637537 ircd:Ⓜ️ event::fetch keys selection. 2018-05-19 22:55:03 -07:00
Jason Volk
e395e4d85e ircd:Ⓜ️ Fix hook deletion while iterating set. 2018-05-19 18:49:08 -07:00
Jason Volk
ba4b3fa145 ircd: Minor comments / minor cleanup. 2018-05-19 18:49:07 -07:00
Jason Volk
eb5f2475a3 ircd:Ⓜ️ Add preliminary skeleton linkage for room/event visibilty related. 2018-05-19 18:49:07 -07:00
Jason Volk
986f591caa ircd:Ⓜ️ Ignore my_host's signature when adding signatures. 2018-05-19 18:49:07 -07:00
Jason Volk
aada1c9f17 ircd:Ⓜ️ Slightly improve state tuple pretty(). 2018-05-19 18:49:07 -07:00
Jason Volk
997da91477 ircd:Ⓜ️ Complete the room state tuple buffer constructor. 2018-05-19 18:49:07 -07:00
Jason Volk
31d0f9daed ircd:Ⓜ️:dbs: Rename opts.idx to opts.event_idx; split internal related. 2018-05-19 18:49:07 -07:00
Jason Volk
2626e14543 ircd:Ⓜ️:dbs: Copy root_in to root_out buffer for intuitive behavior. 2018-05-19 18:49:06 -07:00
Jason Volk
a62f453e58 ircd:Ⓜ️ Add signature appending routine. 2018-05-19 18:49:05 -07:00
Jason Volk
7e512eecdc ircd:Ⓜ️ Move signatures field nulling to essential keys function. 2018-05-19 18:49:05 -07:00
Jason Volk
82fbbad8e3 ircd:Ⓜ️ Simplify b64 buffer sizing. 2018-05-19 18:49:05 -07:00
Jason Volk
8fefae157a ircd:Ⓜ️ Fix event::idx argument typing in events:: iterations. 2018-05-19 18:49:05 -07:00
Jason Volk
1d582f65d6 ircd:Ⓜ️:dbs: Add a descriptor for the default column with no cache alloc. 2018-05-19 18:49:05 -07:00
Jason Volk
48f4c22cce ircd:Ⓜ️ Expose an init::close() for ircd::main() to stop listening. 2018-05-19 18:49:04 -07:00
Jason Volk
915076296f ircd:Ⓜ️ Convert hook to template. 2018-05-19 18:49:04 -07:00
Jason Volk
c5c5f9643e ircd:Ⓜ️🪝 Cleanup constructor: move feature string creation out. 2018-05-19 18:49:04 -07:00
Jason Volk
77d2c06ded ircd:Ⓜ️🪝 Add the always matching vector. 2018-05-19 18:49:03 -07:00
Jason Volk
1cea146098 ircd:Ⓜ️🪝 Add hook matcher count; use mapping closure. 2018-05-19 18:49:03 -07:00
Jason Volk
24797bfa22 ircd:Ⓜ️🪝 Add call counter. 2018-05-19 18:49:03 -07:00
Jason Volk
0478ead6d9 ircd:Ⓜ️:filter: Condition on contains_url in match definition. 2018-05-19 18:49:02 -07:00
Jason Volk
1d7fce8368 ircd:Ⓜ️ Reorg filter interface and linkage related. 2018-05-19 18:49:02 -07:00
Jason Volk
39edf575ba ircd:Ⓜ️ Simplify init / fini presence semantics. 2018-05-19 18:49:02 -07:00
Jason Volk
a1c3788c38 ircd:Ⓜ️ Add single-property getter interface for event. 2018-05-19 18:49:02 -07:00
Jason Volk
dc38da5566 ircd:Ⓜ️ Add missing ADL-converted index(event) calls. 2018-05-19 18:49:01 -07:00
Jason Volk
d9b5a7d26a ircd:Ⓜ️ Improve various keys interfaces. 2018-05-19 18:49:01 -07:00
Jason Volk
42b8d41e58 ircd:Ⓜ️:v1:🔑 Add overload for key_id in uri. 2018-05-11 02:02:46 -07:00
Jason Volk
c14f268559 ircd:Ⓜ️ ADL the event::fetch::index() suite. 2018-05-09 16:38:11 -07:00
Jason Volk
39b49599e5 ircd:Ⓜ️:user: Add mitsein::count() interface. 2018-05-08 00:44:23 -07:00
Jason Volk
9792cb1435 ircd:Ⓜ️:vm: Add preliminary phase state; minor movements. 2018-05-07 16:34:59 -07:00
Jason Volk
fd80a13b15 modules/key/keys: Refactoring of key queries to use m::v1 requests and interface. 2018-05-07 16:34:59 -07:00
Jason Volk
7e66e79715 ircd:Ⓜ️:v1: Split key request into server/query requests. 2018-05-07 16:34:59 -07:00
Jason Volk
9821d7f333 ircd:Ⓜ️:v1: Add key query request. 2018-05-07 14:58:29 -07:00
Jason Volk
4c71ab8fd0 ircd:Ⓜ️🪝 Simplify collections with instance_lists. 2018-05-06 22:28:17 -07:00
Jason Volk
456f8e7ac1 ircd:Ⓜ️ Move vm eval definitions into module. 2018-05-06 22:28:17 -07:00
Jason Volk
a04a3e840e ircd:Ⓜ️:vm: Add pointers to access the evaluation data at issue. 2018-05-06 18:10:01 -07:00
Jason Volk
989441677f ircd:Ⓜ️:vm: Add additional identifications to eval instance. 2018-05-06 18:02:34 -07:00
Jason Volk
820284f2d0 ircd:Ⓜ️:vm: Give eval the instance_list. 2018-05-06 18:02:33 -07:00
Jason Volk
68c863e7f9 ircd:Ⓜ️:vm: Reorg commit stack; move room commit thing to m::vm. 2018-05-06 18:02:33 -07:00
Jason Volk
e90603b762 ircd:Ⓜ️🪝 Support arbitrary creation and deletion of hook::site instances. 2018-05-06 14:53:39 -07:00
Jason Volk
003ecf6357 ircd: Remove / update various ctx::interrupted catch blocks for ctx::terminated. 2018-05-06 02:06:08 -07:00
Jason Volk
e80c8e6f65 ircd:Ⓜ️ Consistent usage of object::size() rather than object::count(). 2018-05-05 23:14:11 -07:00
Jason Volk
dd04a50743 ircd:Ⓜ️:dbs: Expose the internal indexer interface. 2018-05-05 18:54:02 -07:00
Jason Volk
f08b1053b4 ircd:Ⓜ️:room: Add condition for present state optimization even w/ supplied event_id. 2018-05-05 03:39:33 -07:00
Jason Volk
ad2f823056 ircd:Ⓜ️:room: Add head::has() existential test. 2018-05-05 03:36:47 -07:00
Jason Volk
ab2490ce73 ircd:Ⓜ️:vm: Add vmopts for room_head related. 2018-05-04 20:57:28 -07:00
Jason Volk
35fee056f9 ircd:Ⓜ️:room: Add preliminary head interface. 2018-05-04 20:57:28 -07:00
Jason Volk
36b43b8607 ircd:Ⓜ️:dbs: Add indexing sequence for _room_head. 2018-05-04 20:57:28 -07:00
Jason Volk
e12863d091 ircd:Ⓜ️:dbs: Add room_head column. 2018-05-04 20:43:05 -07:00
Jason Volk
ca45e84908 ircd:Ⓜ️ Add bad(event_id) query interface. 2018-05-04 20:43:05 -07:00
Jason Volk
7ca2e8797d ircd:Ⓜ️:dbs: Add interface to manipulate the blacklist column. 2018-05-04 20:43:04 -07:00
Jason Volk
546e57915b ircd:Ⓜ️:dbs: Checkpoint cache size default tweaks. 2018-05-04 16:38:45 -07:00
Jason Volk
66a4d52a93 ircd:Ⓜ️:dbs: Add event_bad column for blacklisting. 2018-05-04 16:38:45 -07:00
Jason Volk
09a0b345c8 ircd:Ⓜ️:dbs: No need to unref columns anymore. 2018-05-04 14:32:18 -07:00
Jason Volk
f77b3aae7e ircd:Ⓜ️ Reorg event util related; break up pretty(event) around ostream argument. 2018-05-04 14:30:51 -07:00
Jason Volk
e80e34eddc ircd:Ⓜ️ Fix fmt argument type. 2018-04-28 22:16:34 -07:00
Jason Volk
2b7358aa60 ircd:Ⓜ️:dbs: Conditional indexer; pass db::op from opts for indexer. 2018-04-28 19:05:17 -07:00
Jason Volk
d3b1b0ff77 ircd:Ⓜ️🆔 Cleanup / fix error. 2018-04-27 21:48:14 -07:00
Jason Volk
46cf2ca559 ircd:Ⓜ️ Fix closure parameter rot. 2018-04-27 21:48:14 -07:00
Jason Volk
d8b14ade58 ircd:Ⓜ️ Fix narrowing conversion. 2018-04-27 21:48:14 -07:00
Jason Volk
70f962de4e ircd:Ⓜ️ Elaborate presence interface to fetch full event from user's room. 2018-04-27 15:26:17 -07:00
Jason Volk
75b67e11fc ircd:Ⓜ️ Add state_root() to room messages iterator. 2018-04-26 21:35:55 -07:00
Jason Volk
94b03cfe71 ircd:Ⓜ️ Fix my_node id generation. 2018-04-26 15:45:06 -07:00
Jason Volk
523bf19f30 ircd:Ⓜ️🪝 Add a set to track all hooks for a site. 2018-04-26 15:17:28 -07:00
Jason Volk
78a5442230 ircd:Ⓜ️ Increase stream buffer sizes for pretty(event). 2018-04-25 23:34:39 -07:00
Jason Volk
55632dee5e ircd:Ⓜ️:dbs: Fix default value for event::idx to respect domain order. 2018-04-25 01:42:41 -07:00
Jason Volk
ba61369027 ircd:Ⓜ️:dbs: Use buffer size constants for query key generations. 2018-04-24 19:32:32 -07:00
Jason Volk
12592cd22c ircd:Ⓜ️🆔 Improve size constants and range enforcements. 2018-04-24 19:22:07 -07:00
Jason Volk
90348f4265 ircd:Ⓜ️ Add interface to get origin names of user's rooms. 2018-04-23 19:39:50 -07:00
Jason Volk
aa5681dab9 ircd:Ⓜ️:dbs: Throw exception for a null index here. 2018-04-23 18:14:30 -07:00
Jason Volk
523ef5f1db ircd:Ⓜ️ Show the hostname in the vm init/halt log message. 2018-04-22 16:26:54 -07:00
Jason Volk
f808a28664 ircd: Add m/m.h to stdinc.h 2018-04-22 16:22:02 -07:00
Jason Volk
87bd9bc429 ircd:Ⓜ️ Add conf init sequence for m::self related. 2018-04-22 15:18:05 -07:00
Jason Volk
2325208ecd ircd:Ⓜ️ Add more detailed content information in pretty(event). 2018-04-22 14:24:48 -07:00
Jason Volk
2557834a96 ircd:Ⓜ️:dbs: Factor in the event_idx for a more stable messages sort. 2018-04-22 13:49:02 -07:00
Jason Volk
799f450b47 ircd:Ⓜ️ Fix content size sampling in pretty(event). 2018-04-20 23:48:39 -07:00