Commit Graph

475 Commits (97a37eba61e7420df570bf503137099f8753f7d5)

Author SHA1 Message Date
Dragory 97a37eba61
Small clarification in CHANGELOG 2020-08-14 00:50:09 +03:00
Dragory 296d1304a7
Reproducible formatters, add full log formatter
Format-specific parts of replies, including the role name and
attachments, are now stored in separate columns. This allows us to
store only one version of the actual message body and, by keeping
format-specific data separate, reproduce formatter results regardless
of when they are called. This cleans up code around message formats
significantly and was required to support !edit/!delete properly.
2020-08-14 00:42:32 +03:00
Dragory 98532be55a
Add create-migration script
Usage:
npm run create-migration -- my_migration_name_here
2020-08-13 23:55:50 +03:00
Dragory 77cb19e70c
Fix inconsistency between knexfile and runtime knex config 2020-08-13 23:55:29 +03:00
Dragory 8ba25d9504
Update Node.js version ranges in package.json and index.js 2020-08-13 03:40:34 +03:00
Dragory 9df221aa02
Apply code style from .eslintrc to migrations 2020-08-13 03:38:24 +03:00
Dragory d89b27d9b1
Also lint ./db/migrations in lint scripts 2020-08-13 03:37:57 +03:00
Dragory 555a75929b
Fix migrations so they don't show Knex warnings 2020-08-13 03:37:09 +03:00
Dragory 9973f75940
Initial CHANGELOG pass for v2.31.0-beta.1 2020-08-13 03:32:31 +03:00
Dragory 98b8a05d5c
Remove several deprecated config options 2020-08-13 03:32:04 +03:00
Dragory ab6b84e6de
Add official MySQL support. Simplify database options. 2020-08-13 03:31:48 +03:00
Dragory 1c5b08b4c6
Update docs on the attachmentStorage option 2020-08-13 02:46:30 +03:00
Dragory 1f5faaab5b
Fix unnecessary warning about migrations from knex 2020-08-13 02:44:42 +03:00
Dragory 37c523cd04
Band-aid fix for import in move.js 2020-08-13 02:36:52 +03:00
Dragory 6d16daea0d
Add new attachment storage option: "original" 2020-08-13 02:36:15 +03:00
Dragory ff89ab557c
Remove debug process.exit() 2020-08-13 00:26:54 +03:00
Dragory b30e615200
Use gateway intents, add extraIntents config option 2020-08-13 00:23:59 +03:00
Dragory 2beadbe924
Disable getAllUsers from the client
We can lazy-load members instead.
2020-08-13 00:18:11 +03:00
Dragory 565032da1e
Update to eris v0.13.3 2020-08-13 00:16:28 +03:00
Dragory 6630d46f48
Resolve vulnerabilities from npm audit + dedupe package-lock.json 2020-08-13 00:15:44 +03:00
Dragory b74463f6c4
Update json5 to v2.1.3 2020-08-13 00:14:56 +03:00
Dragory ba364ae03b
Update transliteration to v2.1.11 2020-08-13 00:13:58 +03:00
Dragory 3eef025143
Update knex to v0.21.4 2020-08-13 00:12:58 +03:00
Dragory 38d5d193aa
Update eslint to v7.6.0 2020-08-13 00:12:07 +03:00
Dragory 4fb5152d27
Switch from nodemon to node-supervisor
node-supervisor is smaller with fewer dependencies and does
everything we used nodemon for
2020-08-13 00:10:35 +03:00
Dragory 86a060410f
Apply code style from .eslintrc 2020-08-13 00:08:37 +03:00
Dragory b628ac1bfa
Run eslint --fix in a pre-commit hook 2020-08-13 00:08:04 +03:00
Dragory 782efd217f
Enforce double quotes in .eslintrc 2020-08-13 00:04:48 +03:00
Dragory bd8dcc6129
Fixes and tweaks to new config validation 2020-08-13 00:03:01 +03:00
Dragory f7b8a312f9
Coerce arrays of strings to arrays automatically 2020-08-12 23:24:17 +03:00
Dragory d03903ce80
Move beforeNewThread hook after validations, fix a couple bugs 2020-08-12 23:19:11 +03:00
Dragory 468d1fc037
Use JSON Schema via AJV for config schema + validation 2020-08-12 23:18:42 +03:00
Dragory ce8ebbfc2f
Propagate staff reply edits/deletions to the DB 2020-07-19 14:28:32 +03:00
Dragory e74363a55c
Show staff reply numbers in threads/logs 2020-07-19 14:24:24 +03:00
Dragory 3002473905
Add !edit and !delete with options (disabled by default) 2020-07-19 14:20:45 +03:00
Dragory 4e9e347b04
Add internal support for editing/deleting staff replies 2020-07-19 14:11:38 +03:00
Dragory 6b8c7e1bdf
Rename config.js to cfg.js
So people don't accidentally edit the config source file rather than
their own config file.
2020-07-19 13:36:07 +03:00
Dragory 3723bf788b
Add 'source' to beforeNewThread hooks, call hooks in threads.createNewThreadForUser() 2020-07-15 23:50:30 +03:00
Dragory 75b2920777
Use explicit parameters for Thread#postSystemMessage, Thread#sendSystemMessageToUser, Thread#postNonLogMessage 2020-07-14 01:38:35 +03:00
Dragory ec3a2455e0
Add more safeguards when using Thread#_postToThreadChannel() 2020-07-14 01:35:26 +03:00
Dragory 662c6b0c21
Allow message formatters to return full message content objects as well as strings 2020-07-14 01:31:50 +03:00
Dragory 8a975d7da4
Add message formatters. Expose message formatters to plugins. 2020-07-14 01:11:48 +03:00
Dragory 0c25afaec2
Add support for async plugin load functions 2020-07-14 00:17:31 +03:00
Dragory 815825de94
Add hooks to plugin API 2020-07-14 00:14:31 +03:00
Dragory 3c0352ff09
Add support for hooks. Add beforeNewThread hook. Allow overriding new thread category id in createNewThreadForUser(). 2020-07-14 00:13:32 +03:00
Dragory 3fc3905628
Update node-sqlite3 to v5. Update Node.js version requirements accordingly. 2020-07-09 04:05:28 +03:00
Dragory 716675e11f
Fix error in plugin example 2020-06-05 17:06:26 +03:00
Dragory 1538b25ee5
Fix error when receiving a reply to a thread that has had its channel deleted 2020-06-05 17:06:15 +03:00
Dragory 1382c639a9
Fix error when attempting to unsuspend outside a thread channel 2020-05-26 00:24:35 +03:00
Dragory d1f939cbc8
ModMail -> Modmail 2020-05-25 23:56:48 +03:00