* Revert "[V3 Core] Encoding issue fix (#1365)"
This reverts commit f6903cf5820ec93833aced058622cb2f235ac22b.
* Don't let the system encoding screw with things,
specify opens as happening with utf-8 encoding
(cherry picked from commit c10e4dddca32a7a74978f2938359be8a65e7e40f)
* 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
* 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.
* 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
* [V3 Alias] Allow wider range of aliases
Possible fix for #1118
Makes it so that the only non-valid names are the ones that can't be printed by something.
* [V3 Alias] Edit Check & Error Message
Reflects the wider range of aliases that can be created.
* [V3 Alias] Fix wrong slash in regex
* [V3 Alias] Fix Wrong Closing Parenthesis Position
Can't believe I'm messing it up
* Command response improvements for streams
Fix#1182Fix#1183
Various other command response improvements
* Rename main to streams, streams to streamtypes
* Raise errors for communities
* [V3 Mod] remove unnecessary decos from ignore/unignore
* [V3 Core] fix is_mod and is_admin so they don't return True if the mod/admin roles aren't set
* Fix for #1132
Fixes `self.streams` being a `Task` object instead of a list.
Also replicated for `self.communities`, since the issue is the same
(although untested, it can be inferred).
* Implement sub-method to avoid init errors
The new method waits for `streams` and `communities` to be initialized
before running the `_stream_alerts` method, avoiding possible errors
due to lists being uninitialized
* Fix streams and communities loading
* Delete IDE config file