Commit graph

118 commits

Author SHA1 Message Date
116ed94ca3 Attempt to fix a crash with pagination reaction removal 2021-01-16 23:46:07 -06:00
adroitwhiz
3de4858b5a
Clean up image API code paths (#49)
* Document image.js a bit

* Close image.js sockets in all code paths

I'm not sure whether sockets get GC'd when the function returns

* Remove getFormat

It was only called from one place, and the object property names were
quite confusing

* Clean up image.js conditional a bit

I had to write out an entire truth table for this and work it all out
Thinking hard

* Move actual ImageMagick calling into separate file

This gets rid of the weird, brain-melting ouroboros of code that
recurses across threads and processes.

* Reduce amount of getType wrangling

This amounted to an awful lot of dead conditionals after the image
commands were all modified to pass in image types anyway. This has also
led to two different implementations diverging, which causes bugs like
GIF commands applied to non-GIFs erroring instead of providing a
user-friendly message.

* Unify image-runner return type, clarify image type

This allows us to remove the fromAPI parameter from image-runner, and
helps greatly clarify the behavior around image types.

* Deduplicate GIF code, fix "not a GIF" handling

The special "nogif" value is now stored as the image type instead of its
value, as the value must always be a Buffer now--no loosely-typed
shenanigans.
2021-01-09 19:50:29 -06:00
c2bd68263b Made image API node chooser sort by job amount instead of CPU usage, added soundreload 2021-01-08 12:08:10 -06:00
55da0db479 The image API no longer uses a unique thread for each job (due to image processing using its own thread anyway), added dummy DB driver 2021-01-06 16:10:31 -06:00
9f2bd1fecb Make the bot itself get the image file type again 2021-01-04 20:53:34 -06:00
87e2e56ef0 Fixed help page generator still attempting to register moderation commands 2021-01-04 14:35:24 -06:00
2a3f84f628 Properly request only the first 1024 bytes when getting image type 2021-01-04 11:10:57 -06:00
dd114e27b5 Added more activity messages, updated packages, allow any public Lavalink instance to be used via the "local" parameter, added clearer error message for API timeouts 2021-01-04 10:29:18 -06:00
3730691ba2 Final fixes 2020-12-29 20:33:51 -06:00
8a2d4e6669 Fixed image API request closing prematurely, disabled music commands in production, various fixes regarding direct messages, fixed reply image checking, and removed yoda 2020-12-26 12:17:10 -06:00
7a254a5139 Added load-based api node selection 2020-12-25 20:27:45 -06:00
Tzlil
9ada79d1e5
add parseCommand so it shows me on the esmbot github (#34) 2020-12-25 18:14:10 -06:00
9b4861ae4a Fixed database stop crash, made playing status use the current bot username 2020-12-18 18:57:41 -06:00
5fa5f21289 Moved database driver-specific code to their own files 2020-12-18 18:50:25 -06:00
d47c7cacbb Changed DB config settings 2020-12-18 16:05:43 -06:00
3594c4d353 Added proper config options for PostgreSQL 2020-12-18 15:42:34 -06:00
873b3f59bc More caching stuff, changed info command a bit 2020-12-18 14:46:59 -06:00
ef945adf09 Added support for using both MongoDB and PostgreSQL, changed image api timeouts, removed all moderation commands 2020-12-17 20:32:19 -06:00
69d8100f23 Actually made screenshot owner-only, made image API interaction more secure 2020-12-14 12:39:18 -06:00
78ae47dbbb Handle API errors more gracefully, fixed sharpen, restrict screenshot to the bot owner 2020-12-14 10:58:31 -06:00
a1c24ea30d Allow sound player to start even if some nodes are down, docker maintenance 2020-12-11 16:46:05 -06:00
0566dca06d Some tweaks to music player commands, added loop, renamed existing loop command to unfreeze 2020-12-11 13:52:02 -06:00
59dec7f857 Made image functions run on a worker thread when the API is disabled 2020-11-26 11:48:19 -06:00
94b0bc19a4 Added reply support to image detection, added stealth plugin to screenshot, made credits static, more fixes 2020-11-26 09:31:24 -06:00
ca6cffa67c Some security fixes 2020-11-20 15:16:52 -06:00
ad149156ad Switched to an image API implementation by Terradice 2020-11-17 08:52:12 -06:00
6761e39d70 A little bit of cleanup 2020-11-09 22:09:57 -06:00
Samuel Hernandez
66cf9dc518
utils/image.js: fix getType on local files 2020-11-07 20:50:32 -05:00
0600cf230f Caption now supports more unicode characters, more api work, fixed multiple bugs 2020-11-05 15:40:18 -06:00
a03d3a5e79 Fixed GIF commands for real (lol) 2020-10-19 20:24:53 -05:00
5e34e45ac4 Fixed GIF-only commands 2020-10-19 18:48:43 -05:00
cf5c649384 Heavy work on the image detection code, fixed mention prefixes not being properly registered 2020-10-18 16:53:35 -05:00
ac4e1f5dd8 Simplified and fixed image API, updated packages 2020-10-06 14:48:22 -05:00
f1404a8393 Fixed compatibility with Eris 0.13, get patron list dynamically 2020-10-06 10:18:33 -05:00
6e8473d784 Only delete messages if they exist, removes errors in console 2020-09-23 14:12:39 -05:00
7047081f98 Fixed some music player stuff 2020-09-22 15:33:07 -05:00
925eb387dd Fixed issue with skip vote counts, added headless chrome IP to config, other fixes 2020-09-18 19:54:52 -05:00
4caec5aefa Fixed characters not being properly encoded, fixed images not being properly appended, more fixes 2020-09-09 21:36:20 -05:00
91b8735203 Attempt to fix clean replacing empty text 2020-09-05 16:33:21 -05:00
1c686016bb Allow changing default prefix in config 2020-09-03 17:48:28 -05:00
e0d7ea7a57 Added ability to disable tags for a server, added way to remove warnings 2020-09-03 14:26:39 -05:00
a6137436d2 The bot can now actually interact with the API, fixed issues relating to leaving voice channels 2020-09-01 21:52:12 -05:00
c471bd8af8 Preliminary DM support, update URLs to point to new repo link 2020-09-01 17:10:19 -05:00
f415b3bb09 Changed image function syntax, improved dice, switched to fs.promises, might have also done other stuff but idk 2020-08-27 21:34:12 -05:00
95846d32d4 Fixed some issues with the sound player, search images in original message first, add max limit to dice 2020-08-16 11:48:37 -05:00
ba664fd19a Reject feedback messages if they contain links, increased image request timeout, some other fixes 2020-08-13 08:47:41 -05:00
b8527067d9 Fixed issue with lengthen, added new activity messages 2020-08-06 14:21:48 -05:00
6eee7c6058 Moved back to MongoDB, added some extra flags to flag 2020-07-26 19:52:13 -05:00
9555406229 Final Magick++ ports, removed gm module 2020-07-23 15:49:34 -05:00
78dbeabd39 Ported even more commands to Magick++ 2020-07-22 13:12:38 -05:00