Commit graph

374 commits

Author SHA1 Message Date
Tulir Asokan
74979aee1a Fix plugin webapp URL cloning 2019-03-08 01:54:28 +02:00
Tulir Asokan
d2b145d0bc Change things 2019-03-07 21:35:35 +02:00
Tulir Asokan
b3e1f1d4bc Try another approach for plugin web apps 2019-03-07 19:57:10 +02:00
Tulir Asokan
3c2d0a9fde Switch to a hacky custom router for plugin web apps 2019-03-06 23:16:22 +02:00
Tulir Asokan
a4cfb97b67 Use less freezing way of adding plugin subapps 2019-03-06 22:57:16 +02:00
Tulir Asokan
19a20721e8 Pass public URL of webapp to plugins 2019-03-06 22:35:51 +02:00
Tulir Asokan
c6287e6626 Fix typo 2019-03-06 22:27:23 +02:00
Tulir Asokan
f303bd66ab Let plugins add their endpoints to the main webserver 2019-03-06 22:22:34 +02:00
Tulir Asokan
79c61d6889 Fix uploading plugins with different versions 2019-03-06 15:35:03 +02:00
Tulir Asokan
2bf1c41b53 Fix __mb_is_command_match__ 2019-02-17 15:57:55 +02:00
Tulir Asokan
c01cf127be Fix blank module handling in mbc build and bump alpine base in dockerfile 2019-02-13 19:40:21 +02:00
Tulir Asokan
56a11fdceb Fix mbc init python template 2019-02-13 18:55:34 +02:00
Tulir Asokan
3068245b1f Fix license in mbc iit 2019-02-13 18:27:46 +02:00
Tulir Asokan
f548e17c80 Fix regex flag args 2019-02-05 12:27:19 +02:00
Tulir Asokan
a57df919f5 Fix passive command matching and add regex flag args 2019-02-05 12:08:21 +02:00
Tulir Asokan
360743f1c9 Add spec for Matrix auth endpoints 2019-02-04 11:38:23 +02:00
Tulir Asokan
8b5c637f76 Fix CommandHandler descriptor 2019-01-18 22:58:43 +02:00
Tulir Asokan
4ea980cb93 Fix typo 2019-01-18 21:31:39 +02:00
Tulir Asokan
b926f1e59d Fix active command handlers for multi-instance plugins 2019-01-18 21:26:04 +02:00
Tulir Asokan
9d38c43576 Fix mistake in __mb_subcommands_list__ 2019-01-15 15:47:30 +02:00
Tulir Asokan
80a35f3081 Update version 2019-01-10 12:14:27 +02:00
Tulir Asokan
c4c7bdc76b Add event type filter to command handling system 2019-01-08 21:17:41 +02:00
Tulir Asokan
1965489f51 Fix message when building plugin 2019-01-07 09:50:59 +02:00
Tulir Asokan
16045d9c63 Fix handling of auth token errors at page load 2019-01-07 09:26:43 +02:00
Tulir Asokan
448cbfc92d Fix frontend log viewer not being enabled correctly 2019-01-07 09:06:46 +02:00
Tulir Asokan
401643afba Add html_in_markdown option to reply() and respond() 2019-01-07 09:06:11 +02:00
Tulir Asokan
400c9aaebc Allow access to /features endpoint without login 2019-01-07 08:13:27 +02:00
Tulir Asokan
a46f756be7 Fix preference table input field shifting when focusing 2018-12-31 22:52:43 +02:00
Tulir Asokan
75b5ac8ebd Add config option to disable parts of management API 2018-12-30 19:50:50 +02:00
Tulir Asokan
147081c0db Add contextmenu in database explorer and implement deleting rows 2018-12-29 15:22:12 +02:00
Tulir Asokan
46186452dc Add option to write SQL queries in database explorer 2018-12-28 22:33:27 +02:00
Tulir Asokan
88107daa6f Fix exploring datetime columns 2018-12-28 19:31:43 +02:00
Tulir Asokan
4cc605df76 Finish basic database viewing 2018-12-28 19:19:58 +02:00
Tulir Asokan
dc22f35d08 Add beginning of database explorer 2018-12-27 21:31:32 +02:00
Tulir Asokan
88c2f9d463 Add support for command aliases and dynamic command names 2018-12-26 18:38:56 +02:00
Tulir Asokan
2b54aee413 Merge branch 'master' into rewrite-command-handling 2018-12-25 00:47:49 +02:00
Tulir Asokan
0cf06f9f6b Make new command handling system fully work 2018-12-25 00:37:02 +02:00
Tulir Asokan
5ff5eae3c6 Make new command handling actually somewhat work 2018-12-24 00:31:01 +02:00
Tulir Asokan
682eab348d Some sort of command handling system 2018-12-18 00:53:39 +02:00
Tulir Asokan
bddb881945 Allow choosing server to upload built plugin to 2018-12-17 21:09:08 +02:00
Tulir Asokan
7cd5b04dbc Fix building plugins to file 2018-12-17 20:55:29 +02:00
Tulir Asokan
f104595217 Changes related to rewriting the command handling system 2018-12-16 00:52:54 +02:00
Tulir Asokan
69de2c9d85 Bump dev version number 2018-12-14 00:50:05 +02:00
Tulir Asokan
160dd6c534 Print exception stack traces in cli log viewer 2018-12-14 00:40:35 +02:00
Tulir Asokan
6f06eec3cc Add log viewer to mbc 2018-12-14 00:33:33 +02:00
Tulir Asokan
ecc1843119 Remove unused imports 2018-12-13 23:36:04 +02:00
Tulir Asokan
ee04cc59a2 Create license file when initializing project 2018-12-13 23:21:56 +02:00
Tulir Asokan
adc762b9dd Show any errors when logging in 2018-12-13 22:36:47 +02:00
Tulir Asokan
66aef1978c Fix accidentally changed variable name 2018-12-13 22:14:06 +02:00
Tulir Asokan
cb3993d79f Implement uploading plugins 2018-12-13 20:48:52 +02:00
Tulir Asokan
c334afd38b Implement building plugins 2018-12-13 19:47:41 +02:00
Tulir Asokan
54e117c9e7 Rename clickquiry to cliq and remove util package 2018-12-13 19:14:33 +02:00
Tulir Asokan
1bc51d2de5 Fix inquiring flags 2018-12-13 19:09:02 +02:00
Tulir Asokan
7816212190 Add more stuff 2018-12-13 18:15:24 +02:00
Tulir Asokan
8e2f2908a6 Add stuff 2018-12-13 01:28:23 +02:00
Tulir Asokan
4b3d47176d Merge branch 'master' into cli 2018-12-12 16:07:45 +02:00
Tulir Asokan
03cd8663b8 Fix logo path 2018-12-12 15:22:07 +02:00
Tulir Asokan
1552964d3f Try reloading failed instance dependencies when starting instance 2018-12-12 15:21:17 +02:00
Tulir Asokan
07fe46e7f9 Switch to yaml for plugin metadata. Fixes #33 2018-12-09 15:49:57 +02:00
Tulir Asokan
5704b3e53b Don't reset editor state if props didn't change. Fixes #34 2018-12-09 14:59:00 +02:00
Tulir Asokan
f5b996d2a2 Move view logs button to sidebar 2018-12-08 20:43:44 +02:00
Tulir Asokan
8824c21788 Add spec for Matrix API proxy 2018-12-08 20:41:11 +02:00
Tulir Asokan
5775560933 Actually fix login 2018-12-08 14:12:33 +02:00
Tulir Asokan
67a4e85406 Fix logging in 2018-12-08 13:57:04 +02:00
Tulir Asokan
d09dd8ddc6 Highlight edited fields 2018-12-08 13:29:53 +02:00
Tulir Asokan
4f7eef6029 Fix uploading and downloading avatars 2018-12-08 13:07:12 +02:00
Tulir Asokan
4f723b24da Update version 2018-12-08 01:37:32 +02:00
Tulir Asokan
332ad5ea52 Add Matrix register/login API and full Matrix API proxy
(ref #19, #15)
2018-12-08 01:14:10 +02:00
Tulir Asokan
5337d4d98e Link to debug file open in log line timestamp 2018-12-05 17:37:31 +02:00
Tulir Asokan
2d66ec2534 Add missing __init__.py's 2018-12-05 16:43:12 +02:00
Tulir Asokan
c2065a4af7 Fix mautrix dep version 2018-12-05 16:38:13 +02:00
Tulir Asokan
3362e8e118 Remove unnecessary padding in log view 2018-11-29 13:12:24 +02:00
Tulir Asokan
9f593ed04e Show date when hovering over time in log 2018-11-29 12:32:36 +02:00
Tulir Asokan
30a6dd62ef Don't try to remove websocket from log listeners if it had not been added 2018-11-29 12:28:23 +02:00
Tulir Asokan
2b8a5353be Fix log live updating and add autoscrolling 2018-11-29 12:27:31 +02:00
Tulir Asokan
b858b5a056 Add spec for /logs and /debug/open endpoints 2018-11-29 11:43:57 +02:00
Tulir Asokan
8fc5350644 Remove unused import 2018-11-29 11:43:41 +02:00
Tulir Asokan
c3dbf9685d Fix clearing log focus 2018-11-29 01:06:58 +02:00
Tulir Asokan
32b60fa0ff Overhaul log viewer
* Move viewer to separate modal to allow using more horizontal space
* Load log history (up to 2048 lines)
* Add colors and use table styling for log viewer
* Add links to log entries that open mentioned instance/client or line in code
2018-11-29 00:58:20 +02:00
Tulir Asokan
aac99b7ee4 Update version 2018-11-28 15:34:21 +02:00
Tulir Asokan
c39cacbab4 Switch to Python-Markdown
Commonmark doesn't have any built-in HTML sanitization
2018-11-28 15:28:35 +02:00
Tulir Asokan
6a6e8a818e Simplify Event.reply and add MaubotMatrixClient.send_markdown 2018-11-28 02:33:59 +02:00
Tulir Asokan
8cfe2e8884 "Fix" file upload accept list 2018-11-28 02:33:37 +02:00
Tulir Asokan
73e86ebb17 Hide config in new instances and add exceptions to log 2018-11-27 02:35:51 +02:00
Tulir Asokan
034eead840 Reload plugin metadata when reloading plugin 2018-11-17 01:11:12 +02:00
Tulir Asokan
52811681f4 Fix new plugin/instance/client pages 2018-11-14 00:06:17 +02:00
Tulir Asokan
a3dea42b1a Show log level in filtered logs 2018-11-12 00:17:31 +02:00
Tulir Asokan
08eacce0a9 Fix log map entry for instances and plugins 2018-11-12 00:14:45 +02:00
Tulir Asokan
d5cb73898f Update version 2018-11-12 00:04:11 +02:00
Tulir Asokan
c2a5451401 Finish basic log viewer 2018-11-12 00:00:37 +02:00
Tulir Asokan
6f2162d5f3 Add some backup checks when stopping maubot 2018-11-11 21:20:50 +02:00
Tulir Asokan
20a9ca6aa6 Make both instance dropdowns behave the same way 2018-11-11 20:24:59 +02:00
Tulir Asokan
5c5b3568cd Add animations to sidebar toggling 2018-11-11 20:21:51 +02:00
Tulir Asokan
91cdfc9378 Fix websockets in dev server proxy 2018-11-11 20:10:48 +02:00
Tulir Asokan
303a9827a1 Add log websocket 2018-11-11 19:27:09 +02:00
Tulir Asokan
b52766ab1e Fix minor things in management API 2018-11-11 16:06:06 +02:00
Tulir Asokan
640caa2f2e Fix double slash in API paths 2018-11-11 00:59:13 +02:00
Tulir Asokan
e0306d29b5 Make maubot http server serve frontend for production 2018-11-11 00:43:58 +02:00
Tulir Asokan
0264f7b794 Hide unnecessary scrollbars 2018-11-10 23:46:37 +02:00
Tulir Asokan
3a36b862df Add mobile compatibility to management UI 2018-11-10 23:29:31 +02:00
Tulir Asokan
9603f59b96 Fix bugs and improve minor UI things 2018-11-10 22:16:34 +02:00
Tulir Asokan
bc97df7de8 Remove code duplication and add better 404 handler 2018-11-10 20:50:09 +02:00
Tulir Asokan
f97b39f4e3 Add plugin view 2018-11-10 19:58:28 +02:00
Tulir Asokan
5220d2e5c9 Improve design of management UI 2018-11-10 19:22:04 +02:00
Tulir Asokan
15db7b95c3 Add config editor to instance view 2018-11-10 16:47:18 +02:00
Tulir Asokan
b0d782906b Implement instance view 2018-11-10 16:33:12 +02:00
Tulir Asokan
0a406ac071 Change more things 2018-11-10 13:49:54 +02:00
Tulir Asokan
53d2264351 Proxy avatar requests through server and improve css 2018-11-10 12:57:06 +02:00
Tulir Asokan
2aac4fbee1 Change things 2018-11-10 01:43:37 +02:00
Tulir Asokan
641ae49376 Add client delete button and fix minor things 2018-11-10 00:03:36 +02:00
Tulir Asokan
29adf50ae0 Finish initial client main view 2018-11-09 20:03:26 +02:00
Tulir Asokan
ef3f4a20f2 Add endpoint to upload avatars 2018-11-09 20:03:08 +02:00
Tulir Asokan
ed16ee8860 Add initial parts of client view 2018-11-09 00:54:42 +02:00
Tulir Asokan
3e661aa887 New <thing> buttons in sidebar 2018-11-08 17:25:22 +02:00
Tulir Asokan
9a21c6ade8 Add endpoint to replace specific plugin 2018-11-08 17:25:00 +02:00
Tulir Asokan
2ba1f46149 Reorganize things, add sidebar and topbar 2018-11-08 01:02:46 +02:00
Tulir Asokan
f3a0b7bc4f Implement login 2018-11-06 23:27:17 +02:00
Tulir Asokan
8cd8f52566 Base frontend stuff and login view 2018-11-04 22:55:58 +02:00
Tulir Asokan
2736a1f47f Fix reusing management API responses and some other things 2018-11-02 18:45:07 +02:00
Tulir Asokan
ec22e5eba7 Add /auth/ping and prepare for frontend dev 2018-11-02 15:16:30 +02:00
Tulir Asokan
a584cba794 Return config with instances in management API 2018-11-02 12:27:49 +02:00
Tulir Asokan
982623b677 Fix patching instances 2018-11-02 00:53:43 +02:00
Tulir Asokan
f5886ed34b Fix creating clients 2018-11-02 00:45:01 +02:00
Tulir Asokan
1e37a56096 Update version 2018-11-02 00:09:42 +02:00
Tulir Asokan
8b97134efd Update spec and fix minor problems in implementation 2018-11-01 23:57:24 +02:00
Tulir Asokan
383c9ce5ec Implement client API 2018-11-01 23:31:30 +02:00
Tulir Asokan
bc87b2a02b Refactor things and implement instance API 2018-11-01 18:11:54 +02:00
Tulir Asokan
cbeff0c0cb Add created at timestamp to tokens for future-proofing 2018-11-01 12:59:22 +02:00
Tulir Asokan
e48cd26cb0 Fix docker-run and login endpoint 2018-11-01 12:56:24 +02:00
Tulir Asokan
28d7731e70 Fix bugs in init and plugin upload filenames 2018-11-01 12:28:56 +02:00
Tulir Asokan
767885cec7 Pass asyncio event loop and http session to plugin instances 2018-11-01 11:58:58 +02:00
Tulir Asokan
9e066478a9 Refactor how plugins are started and update spec 2018-11-01 01:51:54 +02:00
Tulir Asokan
b96d6e6a94 Remove command_spec table 2018-10-31 22:55:43 +02:00
Tulir Asokan
4b7c38ca2a Add clients and instances API stubs 2018-10-31 22:41:00 +02:00
Tulir Asokan
057ccc1914 Refactor management API impl 2018-10-31 22:28:13 +02:00
Tulir Asokan
c7d16a5d46 Update management spec 2018-10-31 22:27:59 +02:00
Tulir Asokan
14fd0d6ac9 Finish plugin API and add basic login system 2018-10-31 02:03:38 +02:00
Tulir Asokan
d7f072aeff Even more plugin API stuff 2018-10-31 00:27:50 +02:00
Tulir Asokan
0148f74d90 Merge branch 'master' into management 2018-10-30 21:44:53 +02:00
Tulir Asokan
26c4fae464 Update version 2018-10-30 21:42:21 +02:00
Tulir Asokan
a2ba9b245e Update mautrix.util imports 2018-10-30 21:40:41 +02:00
Tulir Asokan
91f804d4cf Allow commands for all non-notice message types 2018-10-30 21:29:58 +02:00
Tulir Asokan
d5353430a8 More plugin API stuff 2018-10-30 00:50:45 +02:00
Tulir Asokan
44aba396b7 Random changes slightly related to a maubot plugin packager cli program 2018-10-29 17:47:49 +02:00
Tulir Asokan
f2449e2eba Start working on management API implementation 2018-10-28 01:31:03 +03:00
Tulir Asokan
aefdcd9447 Fix minor things in management API spec 2018-10-27 19:58:35 +03:00
Tulir Asokan
6001b66044 Add initial management API spec 2018-10-27 14:21:07 +03:00
Tulir Asokan
283863c390 Add frontend stub 2018-10-26 00:21:00 +03:00
Tulir Asokan
038fbc43f1 Add automatic sqlalchemy commit 2018-10-22 02:01:06 +03:00
Tulir Asokan
894c5df07b Fix config updating and make plugin dbs somewhat configurable 2018-10-22 01:57:37 +03:00
Tulir Asokan
485040e687 Add temporary request_db_engine() implementation 2018-10-22 01:13:50 +03:00
Tulir Asokan
fd14a38546 Make command arguments map optional and fix optional command arguments 2018-10-21 21:57:34 +03:00
Tulir Asokan
a4fb18038c Update version 2018-10-21 01:01:51 +03:00
Tulir Asokan
1ffc536f0c Add SIGINT/SIGTERM handler 2018-10-20 21:16:13 +03:00
Tulir Asokan
d7bbe1498a Remove unused import 2018-10-20 19:38:55 +03:00
Tulir Asokan
b29a7d186e Add configuration for plugins 2018-10-20 18:39:16 +03:00
Tulir Asokan
3337ac52ea Update readme and version to .dev2 2018-10-18 00:02:15 +03:00
Tulir Asokan
a13fa556a9 Add sync filter for bots 2018-10-17 23:43:56 +03:00
Tulir Asokan
cc053d0cfc Move bot helper checks to command event handler 2018-10-17 22:45:59 +03:00
Tulir Asokan
06eef9d6f2 Use join_room instead of join_room_by_id 2018-10-17 22:09:25 +03:00
Tulir Asokan
2844865e3a Fix potential await bug 2018-10-17 22:09:25 +03:00
Tulir Asokan
c342dc225f Move bot-oriented stuff from mautrix-python and add more logs 2018-10-17 20:17:14 +03:00
Tulir Asokan
4d2f2cd173 Set bot profile info at startup and add example maubot.ini 2018-10-17 15:00:51 +03:00
Tulir Asokan
2d95b54758 Remove event proxy class 2018-10-17 01:31:12 +03:00
Tulir Asokan
1d8de8b5f2 Make it work 2018-10-17 01:30:08 +03:00
Tulir Asokan
dce2771588 Make it run 2018-10-16 22:15:35 +03:00
Tulir Asokan
eef052b1e9 More changes 2018-10-16 16:41:02 +03:00
Tulir Asokan
0b246e44a8 Add command matching stuff 2018-10-16 00:25:23 +03:00
Tulir Asokan
c79ed97a47 Separate plugin loader 2018-10-14 22:57:11 +03:00
Tulir Asokan
7924b70549 Add a bunch of stuff 2018-10-14 22:08:11 +03:00
Tulir Asokan
91dc5646c7 Add autojoin event handler 2018-10-13 00:30:05 +03:00
Tulir Asokan
6969b2e273 Add db and client stuff 2018-10-10 22:51:34 +03:00
Tulir Asokan
c161fd71e7 top 2018-10-08 01:21:18 +03:00
Tulir Asokan
4550fa25f7 Start Python rewrite 2018-09-23 17:56:21 +03:00