Redbot 3.3.12 (2020-08-18)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Core Bot

  • Red now logs clearer error if it can’t find package to load in any cog path during bot startup (#4079)

Mod

  • [p]mute voice and [p]unmute voice now take action instantly if bot has Move Members permission (#4064)

  • Added typing to [p](un)mute guild to indicate that mute is being processed (#4066, #4172)

Streams

  • Improve error messages for invalid channel names/IDs (#4147, #4148)

Trivia Lists

  • Added whosthatpokemon2 trivia containing Pokémons from 2nd generation (#4102)

  • Added whosthatpokemon3 trivia containing Pokémons from 3rd generation (#4141)

Miscellaneous

  • Updated features list in [p]serverinfo with the latest changes from Discord (#4116)

  • Simple version of [p]serverinfo now shows info about more detailed [p]serverinfo 1 (#4121)

Redbot 3.3.11 (2020-08-10)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Audio

  • Audio should now work again on all voice regions (#4162, #4168)

  • Removed an edge case where an unfriendly error message was sent in Audio cog (#3879)

Cleanup

  • Fixed a bug causing [p]cleanup commands to clear all messages within last 2 weeks when 0 is passed as the amount of messages to delete (#4114, #4115)

CustomCommands

  • [p]cc show now sends an error message when command with the provided name couldn’t be found (#4108)

Downloader

  • [p]findcog no longer fails for 3rd-party cogs without any author (#4032, #4042)

  • Update commands no longer crash when a different repo is added under a repo name that was once used (#4086)

Permissions

  • [p]permissions removeserverrule and [p]permissions removeglobalrule no longer error when trying to remove a rule that doesn’t exist (#4028, #4036)

Warnings

  • [p]warn now sends an error message (instead of no feedback) when an unregistered reason is used by someone who doesn’t have Administrator permission (#3839, #3840)

Redbot 3.3.10 (2020-07-09)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Audio

  • Added information about internally managed jar to [p]audioset info (#3915)

  • Updated to Lavaplayer 1.3.50

  • Twitch playback and YouTube searching should be functioning again.

Core Bot

  • Fixed delayed help when [p]set deletedelay is enabled (#3884, #3883)

  • Bumped the Discord.py requirement from 1.3.3 to 1.3.4 (#4053)

  • Added settings view commands for nearly all cogs. (#4041)

  • Added more strings to be fully translatable by i18n. (#4044)

Downloader

  • Added [p]cog listpinned subcommand to see currently pinned cogs (#3974)

  • Fixed unnecessary typing when running downloader commands (#3964, #3948)

  • Added embed version of [p]findcog (#3965, #3944)

  • Fixed [p]findcog not differentiating between core cogs and local cogs(#3969, #3966)

Filter

  • Added [p]filter list to show filtered words, and removed DMs when no subcommand was passed (#3973)

Image

  • Updated instructions for obtaining and setting the GIPHY API key (#3994)

Mod

  • Added option to delete messages within the passed amount of days with [p]tempban (#3958)

  • Added the ability to permanently ban a temporary banned user with [p]hackban (#4025)

  • Fixed the passed reason not being used when using [p]tempban (#3958)

  • Fixed invite being sent with [p]tempban even when no invite was set (#3991)

  • Prevented an issue whereby the author may lock him self out of using the bot via whitelists (#3903)

  • Reduced the number of API calls made to the storage APIs (#3910)

Permissions

  • Uploaded YAML files now accept integer commands without quotes (#3987, #3185)

  • Uploaded YAML files now accept command rules with empty dictionaries (#3987, #3961)

Streams

  • Fixed streams cog sending multiple owner notifications about twitch secret not set (#3901, #3587)

  • Fixed old bearer tokens not being invalidated when the API key is updated (#3990, #3917)

Trivia Lists

  • Fixed URLs in whosthatpokemon (#3975, #3023)

  • Fixed trivia files leagueults and sports (#4026)

  • Updated greekmyth to include more answer variations (#3970)

  • Added new lotr trivia list (#3980)

  • Added new r6seige trivia list (#4026)

Developer changelog

  • Added the utility functions map, find, and next to AsyncIter (#3921, #3887)

  • Updated deprecation times for APIToken, and loops being passed to various functions to the first minor release (represented by X in 3.X.0) after 2020-08-05 (#3608)

  • Updated deprecation warnings for shared libs to reflect that they have been moved for an undefined time (#3608)

  • Added new discord.com domain to INVITE_URL_RE common filter (#4012)

  • Fixed incorrect role mention regex in MessagePredicate (#4030)

  • Vendor the discord.ext.menus module (#4039)

Miscellaneous

  • Improved error responses for when Modlog and Autoban on mention spam were already disabled (#3951, #3949)

  • Clarified that [p]embedset user only affects commands executed in DMs (#3972, #3953)

  • Added link to Getting Started guide if the bot was not in any guilds (#3906)

  • Fixed exceptions being ignored or not sent to log files in special cases (#3895)

  • Added the option of using dots in the instance name when creating your instances (#3920)

  • Added a confirmation when using hyphens in instance names to discourage the use of them (#3920)

  • Fixed migration owner notifications being sent even when migration was not necessary (#3911. #3909)

  • Fixed commands being translated where they should not be (#3938, #3919)

  • Fixed grammar errors and added full stopts in core_commands.py (#4023)

Redbot 3.3.9 (2020-06-12)

Thanks to all these amazing people that contributed to this release:

Read before updating:
1. Bot owners can no longer restrict access to some commands in Permissions cog using global permissions rules. Look at Permissions changelog for full details.
2. There’s been a change in behavior of warning messages. Look at Warnings changelog for full details.

End-user changelog

Security

NOTE: If you can’t update immediately, we recommend disabling the affected command until you can.

  • Mod - [p]tempban now properly respects Discord’s hierarchy rules (#3957)

Core Bot

  • [p]info command can now be used when bot doesn’t have Embed Links permission (#3907, #3102)

  • Fixed ungraceful error that happened in [p]set custominfo when provided text was too long (#3923)

  • Red’s start up message now shows storage type (#3935)

Audio

  • Audio now properly ignores streams when max length is enabled (#3878, #3877)

  • Commands that should work in DMs no longer error (#3880)

Filter

  • Fixed behavior of detecting quotes in commands for adding/removing filtered words (#3925)

Permissions

  • Both global and server rules can no longer prevent guild owners from accessing commands for changing server rules. Bot owners can still use [p]command disable if they wish to completely disable any command in Permissions cog (#3955, #3107)

    Full list of affected commands:

    • [p]permissions acl getserver

    • [p]permissions acl setserver

    • [p]permissions acl updateserver

    • [p]permissions addserverrule

    • [p]permissions removeserverrule

    • [p]permissions setdefaultserverrule

    • [p]permissions clearserverrules

    • [p]permissions canrun

    • [p]permissions explain

Warnings

  • Warnings sent to users don’t show the moderator who warned the user by default now. Newly added [p]warningset showmoderators command can be used to switch this behaviour (#3781)

  • Warn channel functionality has been fixed (#3781)

Developer changelog

Core Bot

Documentation changes

Miscellaneous

  • Added missing help message for Downloader, Reports and Streams cogs (#3892)

  • Core Bot - cooldown in [p]contact no longer applies when it’s used without any arguments (#3942)

  • Core Bot - improved instructions on obtaining user ID in help of [p]dm command (#3946)

  • Alias - [p]alias global group, [p]alias help, and [p]alias show commands can now be used in DMs (#3941, #3940)

  • Audio - Typo fix (#3889, #3900)

  • Audio - Fixed [p]audioset autoplay being available in DMs (#3899)

  • Bank - [p]bankset now displays bank’s scope (#3954)

  • Mod - Preemptive fix for d.py 1.4 (#3891)

Redbot 3.3.8 (2020-05-29)

End-user changelog

Core Bot

  • Important fixes to how PostgreSQL data backend saves data in bulks (#3829)

  • Fixed [p]localwhitelist and [p]localblacklist commands (#3857)

  • Red now includes information on how to update when sending information about being out of date (#3744)

  • Using backslashes in bot’s username/nickname no longer causes issues (#3826, #3825)

Admin

Alias

  • Added pagination to [p]alias list and [p]alias global list to avoid errors for users with a lot of aliases (#3844, #3834)

  • [p]alias help should now work more reliably (#3864)

Audio

  • Twitch playback is functional once again (#3873)

  • Recent errors with YouTube playback should be resolved (#3873)

  • Added new option (settable with [p]audioset lyrics) that makes Audio cog prefer (prioritize) tracks with lyrics (#3519)

  • Added global daily (historical) queues (#3518)

  • Added [p]audioset countrycode that allows to set the country code for spotify searches (#3528)

  • Fixed [p]local search (#3528, #3501)

  • Local folders with special characters should work properly now (#3528, #3467)

  • Audio no longer fails to take the last spot in the voice channel with user limit (#3528)

  • [p]local play no longer enqueues tracks from nested folders (#3528)

  • Fixed [p]playlist dedupe not removing tracks (#3518)

  • [p]disconnect now allows to disconnect if both DJ mode and voteskip aren’t enabled (#3502, #3485)

  • Many UX improvements and fixes, including, among other things:

    • Creating playlists without explicitly passing -scope no longer causes errors (#3500)

    • [p]playlist list now shows all accessible playlists if --scope flag isn’t used (#3518)

    • [p]remove now also accepts a track URL in addition to queue index (#3201)

    • [p]playlist upload now accepts a playlist file uploaded in the message with a command (#3251)

    • Commands now send friendly error messages for common errors like lost Lavalink connection or bot not connected to voice channel (#3503, #3528, #3353, #3712)

CustomCommands

  • [p]customcom create no longer allows spaces in custom command names (#3816)

Mod

  • [p]userinfo now shows default avatar when no avatar is set (#3819)

Modlog

  • Fixed (again) AttributeError for cases whose moderator doesn’t share the server with the bot (#3805, #3784, #3778)

Permissions

  • Commands for settings ACL using yaml files now properly works on PostgreSQL data backend (#3829, #3796)

Warnings

  • Warnings cog no longer allows to warn bot users (#3855, #3854)

Developer changelog

Important:
If you’re using RPC, please see the full annoucement about current state of RPC in main Red server by clicking here.

Core Bot

  • Red now inherits from discord.ext.commands.AutoShardedBot for better compatibility with code expecting d.py bot (#3822)

  • Libraries using pkg_resources (like humanize or google-api-python-client) that were installed through Downloader should now work properly (#3843)

  • All bot owner IDs can now be found under bot.owner_ids attribute (#3793)

    • Note: If you want to use this on bot startup (e.g. in cog’s initialisation), you need to await bot.wait_until_red_ready() first

Documentation changes

Miscellaneous

  • Few clarifications and typo fixes in few command help docstrings (#3817, #3823, #3837, #3851, #3861)

  • Downloader - Downloader no longer removes the repo when it fails to load it (#3867)

Redbot 3.3.7 (2020-04-28)

This is a hotfix release fixing issue with generating messages for new cases in Modlog.

Redbot 3.3.6 (2020-04-27)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Core Bot

  • Converting from and to Postgres driver with redbot-setup convert have been fixed (#3714, #3115)

  • Fixed big delays in commands that happened when the bot was owner-less (or if it only used co-owners feature) and command caller wasn’t the owner (#3782)

  • Various optimizations

    • Reduced calls to data backend when loading bot’s commands (#3764)

    • Reduced calls to data backend when showing help for cogs/commands (#3766)

    • Improved performance for bots with big amount of guilds (#3767)

    • Mod cog no longer fetches guild’s bans every 60 seconds when handling unbanning for tempbans (#3783)

    • Reduced the bot load for messages starting with a prefix when fuzzy search is disabled (#3718)

    • Aliases in Alias cog are now cached for better performance (#3788)

Core Commands

  • [p]set avatar now supports setting avatar using attachment (#3747)

  • Added [p]set avatar remove subcommand for removing bot’s avatar (#3757)

  • Fixed list of ignored channels that is shown in [p]ignore/[p]unignore (#3746)

Audio

  • Age-restricted tracks, live streams, and mix playlists from YouTube should work in Audio again (#3791)

  • Soundcloud’s sets and playlists with more than 50 tracks should work in Audio again (#3791)

CustomCommands

  • Added [p]cc raw command that gives you the raw response of a custom command for ease of copy pasting (#3795)

Modlog

  • Fixed AttributeError for cases whose moderator doesn’t share the server with the bot (#3784, #3778)

Streams

  • Fixed incorrect stream URLs for Twitch channels that have localised display name (#3773, #3772)

Trivia

  • Fixed the error in [p]trivia stop that happened when there was no ongoing trivia session in the channel (#3774)

Trivia Lists

  • Updated leagueoflegends list with new changes to League of Legends (b8ac70e)

Developer changelog

Utility Functions

Documentation changes

Miscellaneous

  • Config - JSON driver will now properly have only one lock per cog name (#3780)

  • Core Commands - [p]debuginfo now shows used storage type (#3794)

  • Trivia - Corrected spelling of Compact Disc in games list (#3759, #3758)

Redbot 3.3.5 (2020-04-09)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Core Bot

  • “Outdated” field no longer shows in [p]info when Red is up-to-date (#3730)

Alias

  • Fixed regression in [p]alias add that caused it to reject commands containing arguments (#3734)

Redbot 3.3.4 (2020-04-05)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Core Bot

  • Fixed checks related to bank’s global state that were used in commands in Bank, Economy and Trivia cogs (#3707)

Alias

  • [p]alias add now sends an error when command user tries to alias doesn’t exist (#3710, #3545)

Developer changelog

Core Bot

  • Bump dependencies, including update to discord.py 1.3.3 (#3723)

Utility Functions

Documentation changes

  • Versions of pre-requirements are now included in Windows install guide (#3708)

Redbot 3.3.3 (2020-03-28)

Thanks to all these amazing people that contributed to this release:

End-user changelog

Core Bot

  • Delete delay for command messages has been moved from Mod cog to Core (#3638, #3636)

  • Fixed various bugs with blacklist and whitelist (#3643, #3642)

  • Added [p]set regionalformat command that allows users to set regional formatting that is different from bot’s locale (#3677, #3588)

  • [p]set locale allows any valid locale now, not just locales for which Red has translations (#3676, #3596)

  • Permissions for commands in Bank, Economy and Trivia cogs can now be overriden by Permissions cog (#3672, #3233)

  • Outages of pypi.org no longer prevent the bot from starting (#3663)

  • Fixed formatting of help strings in fuzzy search results (#3673, #3507)

  • Fixed few deprecation warnings related to menus and uvloop (#3644, #3700)

Core Commands

  • [p]set game no longer errors when trying to clear the status (#3630, #3628)

  • All owner notifcations in Core now use proper prefixes in messages (#3632)

  • Added [p]set playing and [p]set streaming aliases for respectively [p]set game and [p]set stream (#3646, #3590)

ModLog

  • Modlog’s cases now keep last known username to prevent losing that information from case’s message on edit (#3674, #3443)

CustomCom

  • Added [p]cc search command that allows users to search through created custom commands (#2573)

Cleanup

  • Added [p]cleanup spam command that deletes duplicate messages from the last X messages and keeps only one copy (#3688)

  • Removed regex support in [p]cleanup self (#3704)

Downloader

  • [p]cog checkforupdates now includes information about cogs that can’t be installed due to Red/Python version requirements (#3678, #3448)

General

  • Added more detailed mode to [p]serverinfo command that can be accessed with [p]serverinfo 1 (#2382, #3659)

Image

  • Users can now specify how many images should be returned in [p]imgur search and [p]imgur subreddit using [count] argument (#3667, #3044)

  • [p]imgur search and [p]imgur subreddit now return one image by default (#3667, #3044)

Mod

  • [p]userinfo now shows user’s activities (#3669)

  • [p]userinfo now shows status icon near the username (#3669)

  • Muting no longer fails if user leaves while applying overwrite (#3627)

  • Fixed error that happened when Mod cog was loaded for the first time during bot startup (#3632, #3626)

Permissions

  • Commands for setting default rules now error when user tries to deny access to command designated as being always available (#3504, #3465)

Streams

  • Fixed an error that happened when no game was set on Twitch stream (#3631)

  • Preview picture for YouTube stream alerts is now bigger (#3689, #3685)

  • YouTube channels with a livestream that doesn’t have any current viewer are now properly showing as streaming (#3690)

  • Failures in Twitch API authentication are now logged (#3657)

Trivia

  • Added [p]triviaset custom upload/delete/list commands for managing custom trivia lists from Discord (#3420, #3307)

  • Trivia sessions no longer error on payout when winner’s balance would exceed max balance (#3666, #3584)

Warnings

  • Sending warnings to warned user can now be disabled with [p]warnset toggledm command (#2929, #2800)

  • Added [p]warnset warnchannel command that allows to set a channel where warnings should be sent to instead of the channel command was called in (#2929, #2800)

  • Added [p]warnset togglechannel command that allows to disable sending warn message in guild channel (#2929, #2800)

  • [p]warn now tells the moderator when bot wasn’t able to send the warning to the user (#3653, #3633)

Developer changelog

Core Bot

  • Deprecation warnings issued by Red now use correct stack level so that the cog developers can find the cause of them (#3644)

Dev Cog

  • Add __name__ to environment’s globals (#3649, #3648)

Documentation changes

Miscellaneous

  • Core Bot - Command errors (i.e. command on cooldown, dm-only and guild-only commands, etc) can now be translated (#3665, #2988)

  • Core Bot - redbot-setup now prints link to Getting started guide at the end of the setup (#3027)

  • Core Bot - Whitelist and blacklist commands now properly require passing at least one user (or role in case of local whitelist/blacklist) (#3652, #3645)

  • Downloader - Fix misleading error appearing when repo name is already taken in [p]repo add (#3695)

  • Downloader - Improved error messages for unexpected errors in [p]repo add (#3656)

  • Downloader - Prevent encoding errors from crashing [p]cog update (#3639, #3637)

  • Trivia - Non-finite numbers can no longer be passed to [p]triviaset timelimit, [p]triviaset stopafter and [p]triviaset payout (#3668, #3583)

  • Utility Functions - redbot.core.utils.menus.menu() now checks permissions before trying to clear reactions (#3589, #3145)

Redbot 3.3.2 (2020-02-28)

End-user changelog

Core Bot

  • Ignored guilds/channels and whitelist/blacklist are now cached for performance (#3472)

  • Ignored guilds/channels have been moved from Mod cog to Core (#3472)

  • [p]ignore channel command can now also ignore channel categories (#3472)

Core Commands

  • Core cogs will now send bot mention prefix properly in places where discord doesn’t render mentions (#3579, #3591, #3499)

  • Fix a bug with [p]blacklist add that made it impossible to blacklist users that bot doesn’t share a server with (#3472, #3220)

  • Improve user experience of [p]set game/listening/watching/ commands (#3562)

  • Add [p]licenceinfo alias for [p]licenseinfo command to conform with non-American English (#3460)

Admin

  • [p]announce will now only send error message if an actual errors occurs (#3514, #3513)

Alias

  • [p]alias help will now properly work in non-English locales (#3546)

Audio

  • Users should be able to play age-restricted tracks from YouTube again (#3620)

Economy

  • Next payday time will now be adjusted for users when payday time is changed (#3496, #3438)

Downloader

  • Downloader will no longer fail because of invalid info.json files (#3533, #3456)

  • Add better logging of errors when Downloader fails to add a repo (#3558)

Image

  • Fix load error for users that updated Red from version lower than 3.1 to version 3.2 or newer (#3617)

Mod

  • [p]hackban and [p]unban commands support user mentions now (#3524)

  • Ignored guilds/channels have been moved from Mod cog to Core (#3472)

Streams

  • Fix stream alerts for Twitch (#3487)

  • Significantly reduce the quota usage for YouTube stream alerts (#3237)

  • Add [p]streamset timer command which can be used to control how often the cog checks for live streams (#3237)

Trivia

  • Add better handling for errors in trivia session (#3606)

Trivia Lists

  • Remove empty answers in trivia lists (#3581)

Warnings

  • Users can now pass a reason to [p]unwarn command (#3490, #3093)

Developer changelog

Core Bot

  • Updated all our dependencies - we’re using discord.py 1.3.2 now (#3609)

  • Add traceback logging to task exception handling (#3517)

  • Developers can now create a command from an async function wrapped in functools.partial (#3542)

  • Bot will now show deprecation warnings in logs (#3527, #3615)

  • Subcommands of command group with invoke_without_command=True will again inherit this group’s checks (#3614)

Config

Utility Functions

Dev Cog

Downloader

  • Downloader will now replace [p] with clean prefix same as it does in help command (#3592)

  • Add schema validation to info.json file processing - it should now be easier to notice any issues with those files (#3533, #3442)

Documentation changes

  • Add guidelines for Cog Creators in Creating cogs for Red V3 document (#3568)

  • Restructure virtual environment instructions to improve user experience (#3495, #3411, #3412)

  • Getting started guide now explain use of quotes for arguments with spaces (#3555, #3111)

  • latest version of docs now displays a warning about possible differences from current stable release (#3570)

  • Make systemd guide clearer on obtaining username and python path (#3537, #3462)

  • Indicate instructions for different venv types in systemd guide better (#3538)

  • Service file in Setting up auto-restart using systemd on Linux now also waits for network connection to be ready (#3549)

  • Hide alias of randomize_colour in docs (#3491)

  • Add separate headers for each event predicate class for better navigation (#3595, #3164)

  • Improve wording of explanation for required_cogs key in Publishing cogs for Red V3 (#3520)

Miscellaneous

  • Use more reliant way of checking if command is bot owner only in [p]warnaction (Warnings cog) (#3516, #3515)

  • Update PyPI domain in [p]info and update checker (#3607)

  • Stop using deprecated code in core (#3610)

Redbot 3.3.1 (2020-02-05)

Core Bot

  • Add a cli flag for setting a max size of message cache

  • Allow to edit prefix from command line using redbot --edit.

  • Some functions have been changed to no longer use deprecated asyncio functions

Core Commands

  • The short help text for dm has been made more useful

  • dm no longer allows owners to have the bot attempt to DM itself

Utils

  • Passing the event loop explicitly in utils is deprecated (Removal in 3.4)

Mod Cog

  • Hackban now works properly without being provided a number of days

Documentation Changes

  • Add -e flag to journalctl command in systemd guide so that it takes the user to the end of logs automatically.

  • Added section to install docs for CentOS 8

  • Improve usage of apt update in docs

Redbot 3.3.0 (2020-01-26)

Core Bot

  • The bot’s description is now configurable.

  • We now use discord.py 1.3.1, this comes with added teams support.

  • The commands module has been slightly restructured to provide more useful data to developers.

  • Help is now self consistent in the extra formatting used.

Core Commands

  • Slowmode should no longer error on nonsensical time quantities.

  • Embed use can be configured per channel as well.

Documentation

  • We’ve made some small fixes to inaccurate instructions about installing with pyenv.

  • Notes about deprecating in 3.3 have been altered to 3.4 to match the intended timeframe.

Admin

  • Gives feedback when adding or removing a role doesn’t make sense.

Audio

  • Playlist finding is more intuitive.

  • disconnect and repeat commands no longer interfere with eachother.

CustomCom

  • No longer errors when exiting an interactive menu.

Cleanup

  • A rare edge case involving messages which are deleted during cleanup and are the only message was fixed.

Downloader

  • Some user facing messages were improved.

  • Downloader’s initialization can no longer time out at startup.

General

  • Roll command will no longer attempt to roll obscenely large amounts.

Mod

  • You can set a default amount of days to clean up when banning.

  • Ban and hackban now use that default.

  • Users can now optionally be DMed their ban reason.

Permissions

  • Now has stronger enforcement of prioritizing botwide settings.