Jason Volk
9028f63d35
modules: Add preliminary prometheus metrics endpoint.
2019-03-08 12:31:08 -08:00
Jason Volk
4724110736
modules/client/sync/rooms/ephemeral: Add m.typing sync handler.
2019-02-27 18:19:11 -08:00
Jason Volk
2854ea9a0f
Makefiles: Remove --gdb-index here because no -gsplit-dwarf used.
2019-02-25 18:20:48 -08:00
Jason Volk
7f9b06e2c3
modules/federation: Split up user_keys module.
2019-02-21 13:42:43 -08:00
Jason Volk
8f4795e387
modules/client/keys: Move existing into directory; stub remaining endpoints.
2019-02-20 19:12:32 -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
d05f58d352
modules/client: Add preliminary delete_devices endpoint.
2019-02-20 13:10:56 -08:00
Jason Volk
18a41f81f1
modules: Move m::device definitions from m_user to m_device.
2019-02-20 09:46:27 -08:00
Jason Volk
3ff31ec8ef
modules: Start an m_direct_to_device edu handler.
2019-02-18 13:42:38 -08:00
Jason Volk
d445f98d93
modules/client: Stub a send_to_device endpoint.
2019-02-18 13:42:38 -08:00
Jason Volk
7e8f3048d3
modules: Start and identity service stub area.
2019-02-18 10:28:09 -08:00
Jason Volk
952f173204
modules/client/rooms: Add /event/ endpoint.
2019-02-18 09:59:14 -08:00
Jason Volk
2f088591f7
modules/client: Add capabilities endpoint.
2019-02-12 12:04:02 -08:00
Jason Volk
3151931ee4
Linker options package.
2019-02-08 18:24:20 -08:00
Jason Volk
d39d50e18a
modules/federation: Fix missing user_keys / user_devices recipe; fix errors.
2019-02-08 18:05:39 -08:00
Jason Volk
8fd1b57e86
modules/client/sync: Stub device related sync modules.
2019-02-08 09:18:39 -08:00
Jason Volk
1b2c8bf83c
modules/federation: Stub user_devices / user_keys.
2019-02-07 23:09:31 -08:00
Jason Volk
b430661bba
modules/federation: Stub query_auth (for metrics).
2019-02-07 23:09:30 -08:00
Jason Volk
89cd08ac22
modules: Preliminary webhook module.
2019-01-19 16:17:38 -08:00
Jason Volk
3a3dfe40d1
modules/client: Implement the register/available endpoint.
2019-01-12 11:51:57 -08:00
Jason Volk
56b1e760cf
modules/client/sync/rooms: Create a directory for ephemeral.
2019-01-11 13:58:23 -08:00
Jason Volk
86ae182f64
modules/client/sync: Fix rooms.ephemeral item.
2019-01-10 16:58:44 -08:00
Jason Volk
5ed81532ba
modules/Makefile: Minor cleanup.
2019-01-05 18:36:37 -08:00
Jason Volk
61e88e75bc
modules/client/sync: Additional sync items reorganization.
2019-01-04 14:47:01 -08:00
Jason Volk
86911226ed
ircd: Ⓜ️ Preliminary modular client sync system.
2019-01-03 17:21:02 -08:00
Jason Volk
1f3dbe3948
modules: Use the global-dynamic tls-model for modules.
2018-12-29 19:43:17 -08:00
Jason Volk
956a8e239c
Use more aggressive tls-model options.
2018-12-23 17:36:35 -08:00
Jason Volk
cb2b3e7c16
ircd: Minor link options package.
2018-12-21 14:38:14 -08:00
Jason Volk
b088ebf228
ircd: Ⓜ️ :app: Add initial application service registration structure; start app handler directory.
2018-12-02 16:50:26 -08:00
Jason Volk
d35dad46c2
configure: Add EXTRA_LIBS rather than modifying LIBS here.
2018-11-29 13:46:45 -08:00
Jason Volk
be96cf3ca4
modules: Stub an m_state module; fix description in m_room.
2018-11-14 00:16:19 -08:00
Jason Volk
6c0a8b2c34
modules/federation: Implement publicrooms endpoint.
2018-10-24 18:08:46 -07:00
Jason Volk
62177dca20
modules: Start an m_rooms unit; move publicrooms summary chunk generation.
2018-10-24 17:31:21 -07:00
Jason Volk
96338208aa
modules: Start an m.room.power_levels protocol module.
2018-10-24 12:01:56 -07:00
Jason Volk
002dea97ec
modules/client/user: Move user create to m_user.
2018-10-23 13:22:08 -07:00
Jason Volk
c83d17396b
modules: Rename vm_fetch to s_fetch.
2018-10-23 09:13:48 -07:00
Jason Volk
1b72722386
modules: Start an m_room_message protocol handler stub.
2018-10-16 11:55:30 -07:00
Jason Volk
450ec3523e
modules/s_dns: Consolidate DNS related into units of a single module.
2018-10-01 13:56:00 -07:00
Jason Volk
05cc6ddf83
ircd::net: Move resolver service out to modules/s_resolver.
2018-09-30 20:18:32 -07:00
Jason Volk
5a627efaad
ircd::net::dns: Move cache related out to modules/s_dns.
2018-09-30 20:18:32 -07:00
Jason Volk
6a646f1ba4
modules: Start an m_user module; add preliminary message highlight test.
2018-09-14 05:17:16 -07:00
Jason Volk
a806b2d60b
modules/m_event: Add modules; move pretty() suite out of ircd: Ⓜ️ :.
2018-09-04 20:27:30 -07:00
Jason Volk
61fade178e
ircd::m/modules/key: Various reorg / modularization.
2018-08-17 12:51:49 -07:00
Jason Volk
4793545dc2
modules/s_listen: Improve various.
2018-08-17 12:51:48 -07:00
Jason Volk
15e44463c3
modules/client: Stub joined_groups to shutup Riot.
2018-06-17 21:34:03 -06:00
Jason Volk
9601dac9cc
ircd: Consolidate stdinc.h and ircd.h and fix precompiled headers.
2018-06-15 16:13:18 -06:00
Jason Volk
b4e7bb062c
modules: Rename root to webroot.
2018-06-12 01:00:14 -07:00
Jason Volk
eb603c22c1
modules: Add preliminary m_room_aliases protocol suite.
2018-06-12 01:00:14 -07:00
Jason Volk
cc0072df0e
modules: Add preliminary m_room_canonical_alias protocol suite.
2018-06-12 01:00:14 -07:00
Jason Volk
8bd6cf05b0
modules/vm: Add preliminary vm fetch unit.
2018-06-03 10:02:19 -07:00
Jason Volk
b79494adb9
modules/federation: Implement event_auth endpoint.
2018-06-02 19:46:58 -07:00
Jason Volk
f41c50af5b
Makefile: ld.gold arguments package.
2018-05-31 16:32:55 -07:00
Jason Volk
52767c836f
modules/client: Stub search endpoint.
2018-05-29 04:01:36 -07:00
Jason Volk
b65ff7ea53
modules/m_room_history_visibility: Add preliminary stub.
2018-05-19 18:49:08 -07:00
Jason Volk
0839d929c8
modules: Rename s_state to m_room.
2018-05-19 18:49:07 -07:00
Jason Volk
902d48d702
modules/Makefile.am: Add missing s_state related.
2018-05-19 18:49:07 -07:00
Jason Volk
e2e8172bfd
modules: Add join rules hook stub; remove remaining tmp_effects from vm.
2018-05-19 18:49:03 -07:00
Jason Volk
456f8e7ac1
ircd: Ⓜ️ Move vm eval definitions into module.
2018-05-06 22:28:17 -07:00
Jason Volk
49a2cddc45
modules: federation/federation library; move feds commands (prelim).
2018-04-27 18:02:42 -07:00
Jason Volk
db21df0c31
ircd: Move mapi.h into mods/.
2018-04-24 01:21:16 -07:00
Jason Volk
bfba0ada0c
modules/media: Add preview_url stub-plus.
2018-04-23 00:47:03 -07:00
Jason Volk
f808a28664
ircd: Add m/m.h to stdinc.h
2018-04-22 16:22:02 -07:00
Jason Volk
a8b143d6c2
modules/media: Consolidate media modules for easier linkages.
2018-04-12 23:07:45 -07:00
Jason Volk
d4e35476a3
modules/client: Preliminary 6.2.3 /initialSync composite.
2018-04-10 13:15:19 -07:00
Jason Volk
257276d082
modules/federation: Add backfill_ids endpoint handler.
2018-04-04 22:54:59 -07:00
Jason Volk
ca75899407
modules/federation: Backfill.
2018-04-04 22:54:58 -07:00
Jason Volk
d2d6ba0f18
modules/federation: Add send_leave endpoint handler.
2018-04-03 23:34:10 -07:00
Jason Volk
4720431d72
modules/federation: Add make_leave endpoint handler.
2018-04-03 23:34:09 -07:00
Jason Volk
50911da57f
modules/federation: Add state endpoint handler.
2018-04-03 23:34:09 -07:00
Jason Volk
dffef130db
modules/federation: Add state_ids endpoint handler.
2018-04-03 23:34:09 -07:00
Jason Volk
b767aab018
modules/federation: Add send_join endpoint handler.
2018-04-03 23:34:09 -07:00
Jason Volk
60f983b953
modules/federation: Add make_join endpoint handler.
2018-04-03 23:34:09 -07:00
Jason Volk
66871bd598
modules/federation: Add invite endpoint; functional response w/o eval.
2018-04-02 23:20:50 -07:00
Jason Volk
bf127104f1
modules/federation: Add query endpoint; add profile handler.
2018-04-02 23:20:50 -07:00
Jason Volk
738eb0782e
modules/m_room_member: Add preliminary type stub from hooks out of client/rooms/join.
2018-03-28 22:17:09 -07:00
Jason Volk
53d7e79c41
modules/m_room_create: Add preliminary type stub from the hooks out of client/createroom.
2018-03-28 22:17:09 -07:00
Jason Volk
28c7494acb
modules/federation: Add get_groups_publicised stub to shut it up.
2018-03-28 01:29:58 -07:00
Jason Volk
065370c38a
configure.ac: parameter package.
2018-03-24 03:19:16 -07:00
Jason Volk
f11c98db34
modules: Add m.receipt; edu handler stack frames.
2018-03-14 21:30:10 -07:00
Jason Volk
5a933ee713
modules/federation: Checkpoint preliminary sender.
2018-03-14 16:26:16 -07:00
Jason Volk
f0b5656fda
ircd: Ⓜ️ Push user creation out to module.
2018-03-11 13:40:24 -07:00
Jason Volk
51fe770d74
modules: Add m_typing eval stub.
2018-03-08 10:08:38 -08:00
Jason Volk
143c867ad8
modules: Rename s_console back to console so it's not mapped by ircd: Ⓜ️ :modules.
2018-03-06 07:50:14 -08:00
Jason Volk
c864a6b446
ircd: Ⓜ️ Move keys related into modules/key; keys into node's room; remaining keys.cc into m.cc.
2018-03-06 00:10:36 -08:00
Jason Volk
63614107f8
ircd: Ⓜ️ Introduce the node and the node::room.
2018-03-05 23:47:23 -08:00
Jason Volk
2dc94d7adc
modules: Move js modules into js/
2018-03-05 05:24:45 -08:00
Jason Volk
5c1cb57e9c
modules: Reorg conf/console related; add s_control.
2018-03-05 05:24:45 -08:00
Jason Volk
e8fd7eebe0
modules/conf: Introduce the !conf room and the !control interface.
2018-03-02 08:02:21 -08:00
Jason Volk
10eb0b3216
modules/media: 11.7.1.4 Thumbnail; remote fetch.
2018-02-26 04:16:51 -08:00
Jason Volk
3d016b9e04
modules/client/rooms: Stub initialSync handler for room previews in Riot.
2018-02-25 04:19:37 -08:00
Jason Volk
bc7efd8bff
modules/client: Stub publicised_groups endpoint.
2018-02-24 01:14:26 -08:00
Jason Volk
34d1ea4afc
modules/client/user: Stub handler for 11.18.2.2 PUT rooms/account_data; fix parv check.
2018-02-21 16:57:41 -08:00
Jason Volk
d90f369c6d
modules/client: Stub unstable thirdparty/protocols to quash Riot error.
2018-02-21 15:41:09 -08:00
Jason Volk
083397c03d
modules/client/rooms: Stub the remaining room operation endpoints.
2018-02-21 15:22:04 -08:00
Jason Volk
754a9366fb
modules/client/user: Stub openid/ openid/request_token.
2018-02-20 15:40:40 -08:00
Jason Volk
091efbdabe
modules/client/directory: Stub user search endpoint.
2018-02-19 19:45:44 -08:00
Jason Volk
af47471830
modules/federation: Add version endpoint.
2018-02-19 16:51:28 -08:00
Jason Volk
74f1a835b9
modules: Minor Makefile cleanup.
2018-02-19 12:43:13 -08:00
Jason Volk
149db42d4e
modules/client/rooms: 6.5.2.1 PUT redact.
2018-02-15 16:50:08 -08:00
Jason Volk
bfcfacfc50
modules/client: 11.9 Device Management (incomplete).
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
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
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
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
fffea204b9
modules: Add preliminary federation/get_missing_events handler.
2018-01-23 16:35:28 -08:00
Jason Volk
ba3d1e7af4
modules: Add stub media/upload.
2017-12-24 21:54:59 -07:00
Jason Volk
80931e4e86
ircd: Ⓜ️ Split m.cc; distribute inits; modules: Checkpoint matrix.
2017-12-12 14:59:40 -07:00
Jason Volk
1a1a50f5f3
Checkpoint reorganization.
2017-11-30 12:30:19 -08:00
Jason Volk
4793e4906c
ircd: Ⓜ️ Checkpoint matrix top-half / modules.
2017-11-30 11:23:44 -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
20869309a2
Checkpoint matrix with preliminary federation client and keyserver related.
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
babde26165
make: Minor cleanup.
2017-10-03 04:17:10 -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
caa6ed58e5
ircd: Makefile improvements.
2017-08-23 15:39:41 -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
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
998724937c
[temp] Checkpoint test.
2016-10-13 21:55:53 -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
2742547826
Introduce modular configuration system.
2016-09-21 16:28:51 -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
06b84579e3
modules/extensions: LDFLAGS += --no-allow-shlib-undefined
2016-08-23 05:22:38 -07:00
Jason Volk
61b517ca3c
Precompile and remove most include directives. Notes:
...
* To benefit from the precompiled-header (PCH) it MUST provide "the first C token."
Advantages:
Never worry about the include stack again. Remember, this means one less thing
for random module developers, community people learning C++, and new developers
to deal with. It should reduce the learning curve and barrier for participation.
Disadvantages:
Makes overall compilation a bit slower, especially without any additional
work to improve it again. There are several opportunities, places where the
PCH is probably being ignored, etc that can be addressed.
2016-08-20 19:30:33 -07:00
Jason Volk
4796bec441
Activate PCH for position independent code.
...
Cuts compilation time by 30%+
2016-07-25 00:54:38 -07:00