* Don't let the system encoding screw with things,
specify opens as happening with utf-8 encoding
* And also deal with encoding issues because windows is a special snowflake
(see: #1366)
* let's just use the encoding param in str() rather than encode/decode...
* Fix repeat
Also remove restriction on if the player is playing.
* Auto-delete existing Now Playing message
* Auto-delete existing notify message
* Wrap line on Now Playing message
* Add connected duration to audiostats
_dynamic_time based on a function written by Redjumpman
* Return negative seek past song start as 00:00:00
* Version number
* [V3 Warning] initial work on a warning system for v3
* [V3 Warning] rename some stuff and add a case type
* [V3 Warnings] rename package from warning
* [V3 Warnings] restructuring commands
* [V3 Warnings] remove expiry stuff + other refactoring
* [V3 Warnings] refactoring action logic
* [V3 Warnings] rewrites to action logic
* [V3 Warnings] add regen_messages.py
* Add get_raw/set_raw
* Add default to get_raw
* Add custom group method to the config object
* Add more methods for custom groups
* Add some docstrings
* Deepcopy the result of get_raw, throw TypeError if no value is passed to set_raw
* Do it right..
* Better way to require kwarg
* Fix#1326
Checks to see if `author` is a `valid_user` (of `Member` class) before checking to see if the bot `is_mod_or_superior` to the `author`.
* Fix#1202
Raises `TypeError` when `User` objects are passed into `is_mod_or_superior` or `is_admin_or_superior`, as only `Member` objects have a `guild` attribute.
* Fixes#1202
Checks to see if `author` is a `valid_user` (of `Member` class) before checking to see if the bot `is_mod_or_superior` to the `author`.
* Fix#1321
Modifies the game-checking lines so that they don't assume `user.game` is not a NoneType object.
* Fix#1321
Modifies the game-checking lines so that they don't assume user.game is not a NoneType object. Also alerts the user to go bother @tekulvw if somehow the invariants of `user` having a `game` attribute and the `game` attribute either being `None` of having a `type` attribute in `[0, 1, 2, 3]` are broken.
* Update general.py
The use of `popitem` makes the right side of line 642 return a tuple of the form `(repo, (old, new))` instead of a dictionary of the form `{repo: (old, new)}`, as expected by the left hand side of the same line.
* Remove get_driver
* Rename self.driver to self._driver
* Do not unnecessarily pass the cog identifier
* Remove unused import
* Fix type annotation
* Missed a keyword rename
* Modify signature of get/set methods in drivers
* pin all dependencies except youtube-dl, and Red-Trivia.
The ranges on these might be expandable, but I can personally confirm these versions
to work
* this is what I get for copy/pasting version and not double checking
* and this is what I get for manually typing it
* Add prompt if message deletion > 100
As per issue #1295.
Add's the prompt "Are you sure you want to delete {number} messages? (y/n)"
* added checks and deletes "Continuing" message
phew
* removed unneeded delete()
Removed the unneeded code