Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The pi release. The library used to make secure HTTPS queries was changed from `arsd-official:http` to `requests`. Regrettably, the latter does not have the ability to fetch cryptographic certificates from the Windows registry, so Windows users now require a certificate bundle file for some plugins to function well (or at all). One can be downloaded with the `--get-cacert` command-line flag. (This flag has been in place for ages, but now it's relevant again.) For a one-time Windows setup, call the program with `--get-openssl --get-cacert`. This release also merges the self-test suite, which previously lived in a separate branch. Compiling the `selftest` dub configuration now adds a method `selftest` to the `IRCPlugin` class, which proxies calls to plugin modules' top-level `.selftest`, where available. The point is to have plugins test themselves, by sending messages to a second bot and verifying the responses. A `selftest` command to start the process was added to the Admin plugin. * Improved the `--setup-twitch` experience * (Windows) `--get-openssl` now downloads OpenSSL 3.2 instead of OpenSSL 1.1 * Fixed Twitch 7tv custom emotes failing to import due to API endpoint changes * Added import of global FrankerFaceZ emotes * Custom emote imports are now staggered so as to hopefully not trigger rate-limiting measures * Largely rewrote the Webtitle plugin to work more like the Twitch plugin with regards to threading HTTP queries * Added support for specifying a time precision to use when reporting quotes * Rewrote the Bash plugin to use the `bashforever.com` clone site, instead of the seemingly dead `bash.org` original * Refactored some `disable this(this)` structs into classes * Raised Twitch-related API retry delay to 4 seconds, up from 1. Additionally, some queries now retry endlessly instead of giving up after 10 failures. * Twitch custom emotes are now highlighted in messages replied to. Normal emotes are not, for technical reasons. * Added the ability to explicitly include and/or exclude entire event types from being printed to the terminal, by use of comma-separated type names passed with `--set printer.{include,exclude}=...`. Gated behind debug (and/or version Debug). * Added Twitch command `!subs`; reports how many subscribers the current channel has * Fixed Twitch `!vanish` and `!nuke` not working due to the removal of the `.timeout` and `.delete` chat commands -- API calls must now be made instead * Fixed the ability to send Twitch whispers, similarly broken by the removal of the `.w` chat command * The Twitch plugin now uses a configurable number of concurrent worker threads, default 3 * The Webtitle plugin now uses a configurable number of concurrent worker threads, default 3 * What channels the bot is currently in now carries across reconnects * Disconnecting no longer suspends polls' durations; they now end at the end time, regardless of how much of the duration was spent offline * Fixed blacklisted users being incorrectly filtered despite a `Permissions` of `.ignore` * Channel-rejoining behaviour on reconnects/reexecs is now configurable as `connect.rejoinBehaviour` * Added ability to modify already existing timers by use of `!timer modify` * Added ability to modify already existing oneliners by use of `!oneliner modify` * Added ability to make aliases of oneliners by use of `!oneliner alias`, which creates a oneliner that transparently resolves to a different one * Updated `dialect` dependency to v2.2.0 * Updated `lu` dependency to v2.2.0 * Updated `requests` dependency to v2.1.3 * ...
- Loading branch information