Jason Volk
38454022cd
ircd::m/modules: Add M_NEED_MORE_PARAMS.
2018-02-14 22:07:01 -08:00
Jason Volk
24aac22e33
modules/client/account: Stub an account/3pid response.
2018-02-14 22:07:01 -08:00
Jason Volk
5c171d6789
modules/client/profile: 8.2 Profiles :with the user's user room.
2018-02-14 22:06:35 -08:00
Jason Volk
3dd792033b
modules/client/account: 3.6.1 GET whoami
2018-02-14 22:06:20 -08:00
Jason Volk
575820d993
modules: Split client/account.
2018-02-14 21:49:46 -08:00
Jason Volk
d4e6e23804
modules: Split client/user.
2018-02-14 21:49:46 -08:00
Jason Volk
c45461d5f6
modules: Split modules/client/rooms; reorg Makefile.
2018-02-14 21:49:46 -08:00
Jason Volk
173d19ee6a
modules/client/sync: Give client more async() after /sync 408.
2018-02-13 18:36:30 -08:00
Jason Volk
5a73e631a6
modules/console: Add command to iterate messages forward and backward with seek to depth.
2018-02-13 15:08:52 -08:00
Jason Volk
b06412da76
modules/client/sync: Fix interpretation of the sync timeout query param.
2018-02-12 19:30:44 -08:00
Jason Volk
9c832482ef
modules/root: Add additional mime types.
2018-02-12 19:30:44 -08:00
Jason Volk
5f24883c1c
modules: Add minimum viable stubs for errorless Riot load.
...
modules/client/pushrules: Stub arrays for errorless Riot load.
2018-02-12 19:30:44 -08:00
Jason Volk
75dabda9c7
modules/client/sync: Checkpoint sync stubs.
2018-02-12 19:30:44 -08:00
Jason Volk
2be10ef206
ircd: Fix/Address client current request flow for longpolls.
2018-02-12 19:30:44 -08:00
Jason Volk
67fba3cd7b
ircd: Ⓜ️ Move filters into the user's user room.
2018-02-11 19:46:31 -08:00
Jason Volk
9c145394f9
modules/client/user: Add base handlers to switch the path params.
2018-02-11 15:47:25 -08:00
Jason Volk
5c641d63ef
modules/client/createroom: Update the createRoom endpoint handler.
2018-02-11 15:47:25 -08:00
Jason Volk
bbbb88fe46
modules/client/user: Reactivate the get filter endpoint.
2018-02-11 15:47:25 -08:00
Jason Volk
b86560c5f5
modules/client/sync: Reactivate sync with a trial using user's room.
2018-02-11 15:47:25 -08:00
Jason Volk
830a4b92a1
ircd: Ⓜ️ Add preliminary !@user:host "user's room" to database all things user.
2018-02-11 15:47:24 -08:00
Jason Volk
e3c419d25d
modules/federation/send: Increase the PUT payload_max.
2018-02-10 21:28:49 -08:00
Jason Volk
ca0e488ea5
modules/client/rooms: Reactivate the /messages endpoint (with zero param respect).
2018-02-10 19:56:01 -08:00
Jason Volk
535232603c
modules/console: Add room_id argument to exec command.
2018-02-10 13:12:23 -08:00
Jason Volk
b238818522
ircd: Ⓜ️ Convert room::members/origins iters to test proto; console update; various.
2018-02-10 13:05:01 -08:00
Jason Volk
23387155df
ircd: Ⓜ️ Candidate split room::state interface (const part).
2018-02-10 00:41:10 -08:00
Jason Volk
bc4072c4d1
modules/client/rooms: Reinstate the state related endpoints.
2018-02-09 21:34:44 -08:00
Jason Volk
0bf053197c
ircd::json: Massage away json::value template ctor.
2018-02-09 21:33:06 -08:00
Jason Volk
7f25e368bc
modules/console: Add a room command suite.
2018-02-08 21:00:50 -08:00
Jason Volk
7bff223748
modules/console: Adjust the state commands to use a root node ID arg for now.
2018-02-08 13:27:49 -08:00
Jason Volk
0cc37daf9d
modules/console: Improve the exec command.
2018-02-08 13:27:48 -08:00
Jason Volk
f5adae46d1
modules/console: Move the preliminary exec command over to conmod.
2018-02-08 10:45:37 -08:00
Jason Volk
a517acea60
modules/console: Add db command with list default sub-command.
2018-02-07 23:15:17 -08:00
Jason Volk
f925c9e5df
modules/console: Add command to backup the events database as json::vector to file.
...
This same vector can be replayed into a new database with an "exec" command.
2018-02-07 00:24:54 -08:00
Jason Volk
da38c9164f
modules/console: Partially move/add over key/event command trees.
2018-02-07 00:24:54 -08:00
Jason Volk
02edc327a3
modules/console: Add net command; move net host subcommand into module.
2018-02-06 13:20:24 -08:00
Jason Volk
ee0d6423f3
ircd: Move params back into ircd::util... (w/ manual inclusion).
2018-02-06 13:20:24 -08:00
Jason Volk
44f8868598
modules: Add reloadable console module with library of command handlers.
2018-02-06 12:50:25 -08:00
Jason Volk
025e1d7c78
ircd: Ⓜ️ Move events database description and instance to libircd.
2018-02-05 21:24:36 -08:00
Jason Volk
7b48bc9f40
ircd: Ⓜ️ :dbs: Checkpoint the meta-index "state_head for event_id in room_id"
2018-02-05 21:24:35 -08:00
Jason Volk
be624ca7f6
Update Copyrastafaris.
2018-02-05 21:24:34 -08:00
Jason Volk
d53eef4ab6
ircd: Eliminate the raw_buffer concept.
2018-02-05 18:54:55 -08:00
Jason Volk
63d28a77cc
ircd: Ⓜ️ :state: Make it right.
2018-02-02 15:06:12 -08:00
Jason Volk
8296adb6c3
ircd: Ⓜ️ :state: Try using a separate child array to store values at any level (partial).
2018-02-02 14:58:55 -08:00
Jason Volk
622086a12a
modules/client/register: Don't require auth object for r0.3.0.
2018-01-29 12:00:00 -08:00
Jason Volk
f12786959e
modules/client/register: Fix defaulting empty ?kind= to user.
2018-01-29 12:00:00 -08:00
Jason Volk
9c91f8d772
client: Fix cosmic ray.
2018-01-26 19:27:12 -08:00
Jason Volk
a9cada32db
ircd: Ⓜ️ Add dbs namespace; remove old interfaces; checkpoint various.
2018-01-26 18:12:46 -08:00
Jason Volk
e8a7f0aeef
modules/federation: Fix the /event/ response.
2018-01-24 18:40:19 -08:00
Jason Volk
5ab7dc6421
modules/client: filter_id is the event_id of the filter saved to the filter room...
2018-01-23 18:41:34 -08:00
Jason Volk
fffea204b9
modules: Add preliminary federation/get_missing_events handler.
2018-01-23 16:35:28 -08:00
Jason Volk
dc4b17f84a
ircd/modules: Fix init prio removal related.
2018-01-11 03:24:22 -08:00
Jason Volk
b801993309
client: Retro style; Minor cleanup.
2018-01-10 01:19:35 -08:00
Jason Volk
8bfd2b9dfe
modules: Minor cleanup versions handler.
2018-01-08 03:08:59 -08:00
Jason Volk
a549070f05
modules: Remove this manual include of <iterator> here.
2017-12-28 13:48:37 -07:00
Jason Volk
ba3d1e7af4
modules: Add stub media/upload.
2017-12-24 21:54:59 -07:00
Jason Volk
eafaae7846
client: Rename js directory.
2017-12-24 19:26:05 -07:00
Jason Volk
80931e4e86
ircd: Ⓜ️ Split m.cc; distribute inits; modules: Checkpoint matrix.
2017-12-12 14:59:40 -07:00
Jason Volk
d8bddbbff0
client: Preliminary refactor removal of rooms into rooms room; various.
2017-12-12 14:59:40 -07:00
Jason Volk
0d753cf52f
client: Alias Object.debug and mc.debug.object.
2017-12-12 14:59:40 -07:00
Jason Volk
f931308850
ircd/modules: Update resource / opts construction arguments.
2017-12-12 14:59:40 -07:00
Jason Volk
5b2facd8e3
client: Add a toggle() functional util.
2017-12-12 14:59:40 -07:00
Jason Volk
0565301560
ircd: Ⓜ️ Remove the is_state mistake.
2017-12-12 14:59:40 -07:00
Jason Volk
03dea97bb2
ircd: Add preliminary RFC3986 grammar; move urlencoding there.
2017-12-12 14:59:40 -07:00
Jason Volk
1a1a50f5f3
Checkpoint reorganization.
2017-11-30 12:30:19 -08:00
Jason Volk
5d53cdab5e
ircd: Ⓜ️ Checkpoint matrix.
2017-11-30 11:23:47 -08:00
Jason Volk
528b7047e9
modules: Checkpoint matrix various.
2017-11-30 11:23:47 -08:00
Jason Volk
1cbd0ab8ba
client: Update room summary related; may break synapse compat; possibly issue with IRCd /state/ response.
2017-11-30 11:23:47 -08:00
Jason Volk
7c4659e089
client: Updates; support ircd.key state event; various.
2017-11-30 11:23:47 -08:00
Jason Volk
31b778ee0b
ircd: Ⓜ️ Improve server keys related functions.
2017-11-30 11:23:46 -08:00
Jason Volk
f7224dc801
client: Checkpoint client.
2017-11-30 11:23:45 -08:00
Jason Volk
4793e4906c
ircd: Ⓜ️ Checkpoint matrix top-half / modules.
2017-11-30 11:23:44 -08:00
Jason Volk
94aac875f1
client: Fixes/improvements to client.
2017-11-30 11:23:44 -08:00
Jason Volk
688ff545d6
client: Update; Add m.room.name timeline display handler; Various.
2017-11-30 11:23:43 -08:00
Jason Volk
62133d09b7
client: Various fixes.
2017-11-30 11:23:42 -08:00
Jason Volk
1517d784c7
client: Fix room join bitrot.
2017-11-30 11:23:41 -08:00
Jason Volk
ef2aa0d249
client: Fix error scope related bitrot.
2017-11-30 11:23:41 -08:00
Jason Volk
f10662fe7d
ircd: Ⓜ️ Checkpoint matrix.
2017-11-30 11:23:40 -08:00
Jason Volk
f89d6f651c
modules: Add preliminary federation and media directories.
2017-11-30 11:23:40 -08:00
Jason Volk
43e35786ce
ircd: Move subsystem 'index header' into subsystem directories.
2017-10-19 01:38:03 -07:00
Jason Volk
678ff574b5
ircd::client: Fix some scroll and event creation related; Various style;
2017-10-15 21:31:06 -07:00
Jason Volk
115940e803
ircd::http: Preserve leading slash from user's URL so we can use it for X-Matrix auth.
2017-10-15 21:26:05 -07:00
Jason Volk
a3f7a41650
ircd::json: Rename json::string to json::strung and maintain json::string as intuitive type.
2017-10-15 21:18:42 -07:00
Jason Volk
18bbf758f3
ircd/modules: Improve path param parsing related; various m:: related.
2017-10-11 20:54:03 -07:00
Jason Volk
51672cdf2d
client: Fixes to style; fix bugs.
2017-10-11 20:54:01 -07:00
Jason Volk
b9f13ed2c2
ircd: Remove cruft.
2017-10-11 20:54:01 -07:00
Jason Volk
edcd95cd8f
modules/ircd: Ⓜ️ Upgrade various json tuple templates with string literals.
2017-10-11 18:18:19 -07:00
Jason Volk
20869309a2
Checkpoint matrix with preliminary federation client and keyserver related.
2017-10-03 04:27:15 -07:00
Jason Volk
3a9696fb6c
ircd: Ⓜ️ Add all spec'ed event fields to event tuple.
2017-10-03 04:27:15 -07:00
Jason Volk
4f50cba4a7
client: minor fix style; minor fix exception handling.
2017-10-03 04:27:15 -07:00
Jason Volk
01d7ec1560
modules: Various fixes; cleanup.
2017-10-03 04:27:13 -07:00
Jason Volk
189de14f1e
modules: Replace hardcoded hosts with my_host().
2017-10-03 04:27:13 -07:00
Jason Volk
b18413e0ed
client: Fixes to client.
2017-10-03 04:17:11 -07:00
Jason Volk
babde26165
make: Minor cleanup.
2017-10-03 04:17:10 -07:00
Jason Volk
6dfe034f6f
client: Fixes.
2017-10-03 04:17:09 -07:00
Jason Volk
5d7eee1937
ircd: Ⓜ️ Simplify the event query interface by making more internal decisions from query data.
2017-10-03 04:17:08 -07:00
Jason Volk
92a8d8e2bf
ircd: Ⓜ️ Improve interfaces; Add prelim sync loop; Add send resource handler.
2017-10-03 04:17:07 -07:00
Jason Volk
d4508e157f
ircd: Ⓜ️ Deduplicate user related in m::user. Update various resource related.
2017-09-24 20:48:53 -07:00
Jason Volk
c032c686f6
Checkpoint matrix application basis.
2017-09-24 18:16:45 -07:00
Jason Volk
54d6793f59
Update various documentation and comments.
2017-09-24 18:16:33 -07:00
Jason Volk
db748cae81
ircd::resource: Accept json::member for response for now.
2017-09-24 18:16:32 -07:00
Jason Volk
ace878b887
ircd::json: Rename tuple member to property.
2017-09-08 03:47:53 -07:00
Jason Volk
85b699c286
Various makefile cleanup.
2017-09-08 03:47:53 -07:00
Jason Volk
1cea631f60
ircd::m modules: Matrix reinterface checkpoint.
2017-09-08 03:47:53 -07:00
Jason Volk
fa41c1db5f
ircd: Ⓜ️ Reorg location of database descriptions.
2017-08-23 15:52:14 -06:00
Jason Volk
0149610bb2
ircd: Various matrix library / modules / database development.
2017-08-23 15:51:34 -06:00
Jason Volk
caa6ed58e5
ircd: Makefile improvements.
2017-08-23 15:39:41 -06:00
Jason Volk
4fd787d9d5
ircd::json/modules: Rename various types.
2017-08-23 15:32:28 -06:00
Jason Volk
36eb3a778d
client: Various fixes to the client.
2017-08-23 15:28:25 -06:00
Jason Volk
c9e947e66f
ircd: Remove aborted cruft.
2017-08-23 15:27:41 -06:00
Jason Volk
4d4a56fe9c
ircd::js: Upgrade SpiderMonkey to esr52 from esr45.
2017-08-23 15:25:22 -06:00
Jason Volk
59e05b44be
modules: Add initial UI for IRCd served over HTTP running Matrix.
...
Client Alpha (Chlamydia Client)
2017-08-23 15:15:01 -06:00
Jason Volk
a3117391b5
ircd/modules: Preliminary matrix scaffold.
2017-08-23 15:10:28 -06:00
Jason Volk
a25143b035
charybdis/modules: Fix Makefile argument related.
2017-08-23 14:55:58 -06:00
Jason Volk
7ff04618c0
ircd;modules: Minor Makefile tweaks.
2017-04-04 16:10:29 -07:00
Jason Volk
b07169dd69
Update Makefile flags for libraries to show more linkage issues.
2017-03-30 16:04:20 -07:00
Jason Volk
8ef53f2640
ircd: Move and improve socket listener device.
2017-03-30 16:04:19 -07:00
Jason Volk
f1c5257201
modules: Add initial: versions, register, login.
2017-03-30 16:03:41 -07:00
Jason Volk
c9ddf4f6ab
ircd: Add lex_cast wrapper interface; various cleanup.
2017-03-14 15:03:15 -07:00
Jason Volk
472ee2c648
ircd: HTTP interface function-objects et al.
2017-03-13 18:44:00 -07:00
Jason Volk
49c2a5361c
ircd: Various fixes.
2017-03-13 14:43:27 -07:00
Jason Volk
b592b69b86
What is the Matrix? Control.
2017-03-10 17:51:18 -08:00
Jason Volk
8b0fe0318f
gold linker.
2016-11-25 19:23:50 -08:00
Jason Volk
0d3ddb9bd7
[prelim] modules: Add js kernel.
2016-11-25 19:23:50 -08:00
Jason Volk
edbc19790e
modules: Stub crypto module.
2016-11-25 19:23:50 -08:00
Jason Volk
eef5b78112
modules: Add stream interface object.
2016-11-25 19:23:50 -08:00
Jason Volk
63a6a82ea2
modules: Add assert object for Node.js style tests.
2016-11-25 19:23:50 -08:00
Jason Volk
848337a76b
modules: Add net with Node.js compatible net.Socket / net.Server.
2016-11-25 19:23:50 -08:00
Jason Volk
7b4c06575f
modules: Add DNS module with Node.js compatible lookup().
2016-11-25 19:23:50 -08:00
Jason Volk
4fa9985399
modules: Add Events prototype.
2016-11-25 19:23:50 -08:00
Jason Volk
53f355e41d
modules: Add preliminary console to support js-style console.log() et al.
2016-11-25 19:23:49 -08:00
Jason Volk
4127367a46
modules: Add preliminary "require" to load additional modules into js.
2016-11-25 19:23:49 -08:00
Jason Volk
67af461540
modules: Update future object to support async contracts.
2016-11-25 19:23:49 -08:00
Jason Volk
a4f55b4627
ircd::mods: Reorganize and distill interface.
2016-11-25 19:23:49 -08:00
Jason Volk
b8f5366f52
ircd::js: Improve trap callback arguments; add this
value.
2016-11-13 16:34:00 -08:00
Jason Volk
edd77d2265
ircd::js: Add asynchronous state and completion target mechanism.
2016-11-13 16:33:22 -08:00
Jason Volk
2f645941a8
ircd::ctx: Move ctx headers into directory.
2016-11-13 16:29:45 -08:00
Jason Volk
998724937c
[temp] Checkpoint test.
2016-10-13 21:55:53 -07:00
Jason Volk
757d7e10a8
[temp] checkpoint some crap which isn't going to stick.
2016-09-27 17:29:06 -07:00
Jason Volk
d8d2fe1564
ircd: Add scope 'life_guard' util for references in reentrant contexts.
2016-09-22 16:18:31 -07:00
Jason Volk
fcd410d656
ircd::client: Add timer logic to client socket/io.
...
Note: Not sure if I like two reference counters for each client,
ideally, but we'll see where it goes after abstractions.
2016-09-21 16:29:30 -07:00
Jason Volk
26a3cd8441
Preliminary new client. Reorg/renames for ircd::client struct symbol.
2016-09-21 16:29:29 -07:00
Jason Volk
4ac4244876
Add m_host "HOST" command for DNS resolution.
2016-09-21 16:29:28 -07:00
Jason Volk
556ceba8a0
ircd: new client; start over.
2016-09-21 16:29:28 -07:00
Jason Volk
5b55e60015
Add P-Line listener module.
2016-09-21 16:29:28 -07:00
Jason Volk
2742547826
Introduce modular configuration system.
2016-09-21 16:28:51 -07:00
Jason Volk
9275429ee1
Replace command system.
2016-09-09 16:17:36 -07:00
Jason Volk
12c836dc6e
Rip out libltdl.
2016-09-09 16:17:02 -07:00
Jason Volk
9d0a959bb5
MAPI IV. This iteration leverages the C++11 standardized RTTI.
...
* Simplifies the export declarations for module developers. While
MAPI III utilized a flexible key-value vector to eliminate positional
arguments in a header initializer, now the developer simply makes
a list of pointers to what they want to export for injection into
IRCd. Example:
mapi::header IRCD_MODULE
{
"mymod",
"My module adds a command, a hook, and a CLICAP",
&my_cmdtab,
&some_hook,
&clicaptab
};
* Distributes the handlers for items passed to the above vector.
Anyone can add a type-handler to the module system from anywhere in IRCd
(and other modules?) When your type is encountered a handler is called
providing the symbol name to read out of the module. Example in parser.cc:
mods::add_loader<Message>([]
(mod &loading, const std::string &symbol)
{
auto &msg(get<Message>(loading, symbol));
add_command(msg.name, msg);
});
2016-09-09 16:17:01 -07:00
Jason Volk
3ebde4ab50
Convert umodes to mode_lease mechanism.
2016-09-09 16:17:01 -07:00
Jason Volk
127378b57c
Refactor logger.
2016-09-09 16:17:00 -07:00