2489 Commits

Author SHA1 Message Date
Kreusada Tanfala
ae80e62a13
Prevent / being used in bot or server prefixes (#5693)
* Update `[p]set prefix`/`[p]set serverprefix`

* Update cli

* style

* update __main__

* style

* improve checks

* Raise in Red.set_prefixes, update responses

* uniform responses

* Fixes

* Keep generator variable names consistent across files
2022-06-28 19:19:20 -04:00
Flame442
febc503df1
Update workflow versions (#5789)
* Update auto_labeler_issues.yml

* Update auto_labeler_pr.yml

* Update codeql-analysis.yml

* Update crowdin_upload_strings.yml

* Update lint_python.yaml

* Update prepare_release.yml

* Update publish_release.yml

* Update tests.yml

* Update for breaking change in actions/github-script@v5

Co-authored-by: jack1142 <6032823+jack1142@users.noreply.github.com>
2022-06-27 17:16:11 +02:00
Kreusada Tanfala
ccec53eef3
Exclude get_embed_color member from Bot framework (#5782) 2022-06-24 18:33:39 +02:00
Lemon Rose
9455ccabfa
New Music Trivia List (#5687)
* new trivia category - music

* fix

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* ty aika

* fixed

"Mr. Custer" would be more appropriate than "please mister custer" in respect of the original title of the song.

* Out of context for a trivia list

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/music.yaml

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>

* Made changes as per Aika's change requests

* duplicate removed

* add alternative answers/remove duplicates

Co-authored-by: aikaterna <20862007+aikaterna@users.noreply.github.com>
2022-06-23 09:19:13 -07:00
Jakub Kuczys
0cc964b87c
Drop openSUSE Leap 15.2, add openSUSE Leap 15.4 (#5777)
* Add openSUSE Leap 15.4 to list in version guarantees

* Drop openSUSE Leap 15.2
2022-06-16 18:41:07 +02:00
Honkertonken
cc4ccd8414
Update Clash Royale Info in trivia. (#5771)
typo + changes
2022-06-13 16:55:30 -04:00
Jack Reusayda
68557336da
Geography Trivia: Update most populous city in Africa (Kinshasa) (#5743)
Kinshasa -> Lagos
2022-06-11 23:50:02 -04:00
Lemon Rose
7a41becbde
fixed outdated flags (#5684)
* fixed outdated flags

* made changes as per suggested
2022-06-11 20:02:13 -04:00
Jakub Kuczys
c00f8b3aab
Red 3.4.17 - Changelog (#5763) 2022-06-07 04:44:33 +02:00
Kreusada
9c11e85bb4
Include commit hash for each cog inside [p]cog listpinned (#5563)
* Initial commit

* Necessary amendments/changes

* style changes (i knew id have to do this...)

* Use inline()

Co-authored-by: Jakub Kuczys <6032823+jack1142@users.noreply.github.com>
2022-06-05 19:27:36 +02:00
Matt Chandra
5522f909bd
Allow sending the file in follow-up message in ACL upload commands (#5685)
Added follow up message when uploading acl file in permissions cog.
2022-06-05 17:51:02 +02:00
Kreusada
1fd9324171
Prepend emojis to better differentiate between [p]canrun responses (#5711)
* Add emojis to better differentiate between canrun responses

* Apply `success()`

Co-authored-by: Jakub Kuczys <6032823+jack1142@users.noreply.github.com>

* Apply `error()`

Co-authored-by: Jakub Kuczys <6032823+jack1142@users.noreply.github.com>

* add imports

Co-authored-by: Jakub Kuczys <6032823+jack1142@users.noreply.github.com>
2022-06-05 17:42:11 +02:00
Kowlin
4580a13e98
Minor bugfixes resolving around modlog UI (#5615)
Multiple bugfixes
 * Fixed unbound channel_value
 * Fixed lack of new lines for listcases
 * Fixed response text for case. It can only be used in the current server.
2022-06-05 17:38:46 +02:00
Candy
485e6837ca
[Modlog] Check if guild is unavailable (#5647)
fix for  AttributeError: 'NoneType' object has no attribute 'guild_permissions'
2022-06-05 17:16:33 +02:00
Kreusada
cc3c1a6a95
Add use_spoilers property to TRIVIA_LIST_SCHEMA schema (#5566)
* Add `use_spoilers` to schema

* Update session.py

Co-authored-by: Jakub Kuczys <6032823+jack1142@users.noreply.github.com>
2022-06-05 17:07:41 +02:00
Kreusada
9d50a851eb
Escape Discord's formatting in [p]servers command (#5744)
* Escape formatting in `[p]servers` command

* style...
2022-06-05 16:19:52 +02:00
Jakub Kuczys
ee69f6e17f
Add RHEL 9 (+ derivatives) install guide (#5721)
* rhel->rhel8 rename of the include file for install guides

* Add RHEL 9

* Add Alma, Oracle, and Rocky Linux 9 pre-emptively

* Add Alma Linux 9 EOL date
2022-06-05 04:11:16 +02:00
Jakub Kuczys
22ede49462
Update Visual Studio Build Tools to 2022 (#5702) 2022-06-05 04:06:17 +02:00
Jakub Kuczys
e93057093e
Add Ubuntu 22.04 install guide (#5720)
* Add Ubuntu 22.04 install guide

* Add Ubuntu 22.04 to End-user guarantees

* Add missing information about supported arches in install guide
2022-06-05 03:08:02 +02:00
Jakub Kuczys
cf85a6470f
Wait for two 'Started Launcher' lines before connecting to managed LL (#5751) 2022-06-05 02:46:17 +02:00
Jakub Kuczys
9cdcf07773
Add Fedora 36 and RHEL 8.6 to list in version guarantees (#5701)
* Add Fedora 36 to list in version guarantees

* Add RHEL 8.6

* Drop Fedora Linux 34
2022-06-04 17:32:23 +02:00
Jakub Kuczys
6bb11ad227
Use Temurin 11 instead of discontinued AdoptOpenJDK on macOS (#5718) 2022-06-04 15:24:30 +02:00
Jakub Kuczys
3f1d02598e
Replace removed git224 package with git236 in CentOS 7 guide (#5700) 2022-06-02 12:59:02 +02:00
Jakub Kuczys
53bf387f01
Pin Temurin version on Windows until fixed version exists (#5717) 2022-06-02 12:55:02 +02:00
aikaterna
1e8f4fc2a2
[Audio] Update Lavalink.jar build (#5712) 2022-06-01 01:05:52 +02:00
Jakub Kuczys
e36d1bccbf
Use latest d.py docs rather than removed master docs (#5713) 2022-06-01 01:00:13 +02:00
aikaterna
d13d02ebfc
Fix for using redbot name --edit for changing data location (#5541)
* Update __main__.py

* style
2022-05-31 18:40:35 -04:00
aikaterna
1cf497b128
Fix changing instance name with redbot --edit (#5540) 2022-05-31 18:36:07 -04:00
Kowlin
acdc1df084
Add support for set api Modals (#5637)
* Add support for set api Modals

Co-authored-by: TrustyJAID <TrustyJAID@gmail.com>

* Blaacckkkk!

* Swap locations of interaction and button.

* Clarified template tokens

* Update docs and some string

* More docs

* Rework the client

Co-authored-by: TrustyJAID <TrustyJAID@gmail.com>

* Goddamned black!

* Missed a few arguments

* Black... Again

* Update redbot/core/utils/views.py

Co-authored-by: TrustyJAID <TrustyJAID@gmail.com>

* Update redbot/core/core_commands.py

Co-authored-by: TrustyJAID <TrustyJAID@gmail.com>

Co-authored-by: TrustyJAID <TrustyJAID@gmail.com>
2022-05-20 13:58:18 -06:00
Jakub Kuczys
ec55622418
Update Downloader's git tests to work with Git 2.36+ (#5690)
There's no need to update RepoManager's code as:
- regex for parsing output about ambiguous refs properly treats the date
  as part of description regardless of ref type
- code for checking if module exists doesn't use the contents of the error message;
  the test only really checks for it to make sure that it triggers the error case
  we're actually testing for. We could instead just remove it too.
2022-04-30 23:28:17 +02:00
MAX
23023da09c
[General] update [p]serverinfo 1 guild features. (#5655) 2022-04-18 23:47:30 +02:00
Kowlin
60b495091a
Prevent an IndexError from occuring (#5430)
* Prevent an IndexError from occuring

If an page value is negative it doesn't properly loop around to the end.

* Update menus.py

* I'm smart 👍
2022-04-16 17:05:57 -04:00
Kreusada
22df591db2
Add FIFA World Cup Trivia List (#5639)
* Create fifa world cup trivia

* fix formatting

* add source

* Update redbot/cogs/trivia/data/lists/worldcup.yaml

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/worldcup.yaml

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/worldcup.yaml

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/worldcup.yaml

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Update redbot/cogs/trivia/data/lists/worldcup.yaml

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Netherlands change

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add Estadio Nacional Julio Martínez Prádanos

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add various rasunda alternatives

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add Republic of South Africa

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add various alternative names for Soccer City

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add alternatives for Luzhniki Stadium

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add Estádio Jornalista Mário Filho and Maracana alternatives

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add alternatives for Stade de Colombes

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add various match-ups for 2 year combos

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add Empire Stadium alias to Wembley

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add Estádio Jornalista Mário Filho to Maracana

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add alternatives for International Stadium

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Add alternatives for Monumental de Núñez

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

* Treat double year as literal string

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>

Co-authored-by: Flame442 <34169552+Flame442@users.noreply.github.com>
2022-04-16 17:00:05 -04:00
Jakub Kuczys
27bed5010f
Make controls in menu() optional (#5678)
* Make `controls` in `menu()` optional

You might wonder, shouldn't we pass `None` to functions from controls?
No, we shouldn't because when `None` is passed, only DEFAULT_CONTROLS
can be used and that means that the length of pages list won't change.

* Update usage in core and core cogs

* Add missing docstrings to `redbot.core.utils.menus` module
2022-04-16 13:29:12 -06:00
Kreusada
955b40ac6d
Various updates to geography trivia (#5638)
* Various updates to geography trivia

* Remove discriminator from AUTHOR key
2022-04-12 16:36:07 -04:00
jack1142
96e8d8cdf5
Make DEFAULT_CONTROLS and ReactionPredicate.*_EMOJIS immutable (#5666)
* Make ReactionPredicate.*_EMOJIS immutable

* Make menus.DEFAULT_CONTROLS immutable

* Actually convert NUMBER_EMOJIS to tuple
2022-04-09 21:35:11 +02:00
jack1142
6cb2378e2e
Stop suppressing exceptions by early-exiting in finally (#5673)
* Stop suppressing exceptions in entrypoints due to sys.exit in finally

* Remove returns in finally in Modlog API as well...
2022-04-09 20:49:45 +02:00
jack1142
02c0328002
Add info about supported arches to guides and version guarantees (#5677)
* Update version guarantees document with supported arches

* Add note about supported architecture to each install guide
2022-04-09 20:47:31 +02:00
jack1142
61c73f2f1f
Add CentOS Stream 9 docs (#5537) 2022-04-09 20:17:10 +02:00
jack1142
841b922e9c
Use absolute path to which to avoid aliases (#5547) 2022-04-09 20:16:31 +02:00
jack1142
56c9241de4
Allow passing channel to [p]streamalert and show platform in streamalert list (#5160)
* Streamalert list shows each platform the channels were added on

* Added argument to specify the discord channel where stream alerts appear

* Fixed styling

* Changed discord_channel type to discord.TextChannel

* Changed join to humanize_list to display the streams list, split the message concatenation into two lines for better readability

* Allow specifying discord channel for picarto and hitbox, fix style for youtube and twitch

* Since token_name from streamtypes can be None on Picarto and Hitbox, I added an attribute to the Stream class to hold the platform name

* Message now tells the user that the stream alert was disabled only for the specified channel.

* Address review

* fix style

* Consistency! Sort of...

Co-authored-by: douglas-cpp <douglasc.dev@gmail.com>
Co-authored-by: Douglas <douglas.carvalho@edu.unipar.br>
2022-04-09 20:08:41 +02:00
jack1142
c9f1a45854
Make --debuginfo more like [p]debuginfo (#5662) 2022-04-09 19:34:12 +02:00
jack1142
bc9f34c04b
Fix invalid version error with _get_version()-provided version (#5670)
* Make sure that the repository we check is in the location we expect

* Merge `redbot._version` into `redbot`

* Generate VersionInfo in _get_version()

This way, if VersionInfo.from_str() generates exception due to invalid
version, we catch it.
2022-04-05 16:48:03 -06:00
jack1142
88d2cb3976
Suppress stderr in _get_version() (#5667) 2022-04-05 22:33:43 +02:00
Kreusada
0b8dec77c3
Remove caching and safety utilities (#5653)
* Remove caching

* Remove safety

* Remove unused private usage
2022-04-03 04:31:53 +02:00
TrustyJAID
2995a457f6
Fix AttributeError in new decorators added to requires (#5665) 2022-04-03 04:27:24 +02:00
jack1142
35f1681dc1
Include tag distance and commit hash in dev versions when possible (#5664)
* Include tag distance and commit hash in dev versions when possible

* Fix test
2022-04-02 19:51:34 -06:00
jack1142
febca8ccbb
Migration to discord.py 2.0 (#5600)
* Temporarily set d.py to use latest git revision

* Remove `bot` param to Client.start

* Switch to aware datetimes

A lot of this is removing `.replace(...)` which while not technically
needed, simplifies the code base. There's only a few changes that are
actually necessary here.

* Update to work with new Asset design

* [threads] Update core ModLog API to support threads

- Added proper support for passing `Thread` to `channel`
  when creating/editing case
- Added `parent_channel_id` attribute to Modlog API's Case
    - Added `parent_channel` property that tries to get parent channel
- Updated case's content to show both thread and parent information

* [threads] Disallow usage of threads in some of the commands

- announceset channel
- filter channel clear
- filter channel add
- filter channel remove
- GlobalUniqueObjectFinder converter
    - permissions addglobalrule
    - permissions removeglobalrule
    - permissions removeserverrule
    - Permissions cog does not perform any validation for IDs
      when setting through YAML so that has not been touched
- streamalert twitch/youtube/picarto
- embedset channel
- set ownernotifications adddestination

* [threads] Handle threads in Red's permissions system (Requires)

- Made permissions system apply rules of (only) parent in threads

* [threads] Update embed_requested to support threads

- Threads don't have their own embed settings and inherit from parent

* [threads] Update Red.message_eligible_as_command to support threads

* [threads] Properly handle invocation of [p](un)mutechannel in threads

Usage of a (un)mutechannel will mute/unmute user in the parent channel
if it's invoked in a thread.

* [threads] Update Filter cog to properly handle threads

- `[p]filter channel list` in a threads sends list for parent channel
- Checking for filter hits for a message in a thread checks its parent
  channel's word list. There's no separate word list for threads.

* [threads] Support threads in Audio cog

- Handle threads being notify channels
- Update type hint for `is_query_allowed()`

* [threads] Update type hints and documentation to reflect thread support

- Documented that `{channel}` in CCs might be a thread
- Allowed (documented) usage of threads with `Config.channel()`
    - Separate thread scope is still in the picture though
      if it were to be done, it's going to be in separate in PR
- GuildContext.channel might be Thread

* Use less costy channel check in customcom's on_message_without_command

This isn't needed for d.py 2.0 but whatever...

* Update for in-place edits

* Embed's bool changed behavior, I'm hoping it doesn't affect us

* Address User.permissions_in() removal

* Swap VerificationLevel.extreme with VerificationLevel.highest

* Change to keyword-only parameters

* Change of `Guild.vanity_invite()` return type

* avatar -> display_avatar

* Fix metaclass shenanigans with Converter

* Update Red.add_cog() to be inline with `dpy_commands.Bot.add_cog()`

This means adding `override` keyword-only parameter and causing
small breakage by swapping RuntimeError with discord.ClientException.

* Address all DEP-WARNs

* Remove Context.clean_prefix and use upstream implementation instead

* Remove commands.Literal and use upstream implementation instead

Honestly, this was a rather bad implementation anyway...

Breaking but actually not really - it was provisional.

* Update Command.callback's setter

Support for functools.partial is now built into d.py

* Add new perms in HUMANIZED_PERM mapping (some from d.py 1.7 it seems)

BTW, that should really be in core instead of what we have now...

* Remove the part of do_conversion that has not worked for a long while

* Stop wrapping BadArgument in ConversionFailure

This is breaking but it's best to resolve it like this.

The functionality of ConversionFailure can be replicated with
Context.current_parameter and Context.current_argument.

* Add custom errors for int and float converters

* Remove Command.__call__ as it's now implemented in d.py

* Get rid of _dpy_reimplements

These were reimplemented for the purpose of typing
so it is no longer needed now that d.py is type hinted.

* Add return to Red.remove_cog

* Ensure we don't delete messages that differ only by used sticker

* discord.InvalidArgument->ValueError

* Move from raw <t:...> syntax to discord.utils.format_dt()

* Address AsyncIter removal

* Swap to pos-only for params that are pos-only in upstream

* Update for changes to Command.params

* [threads] Support threads in ignore checks and allow ignoring them

- Updated `[p](un)ignore channel` to accept threads
- Updated `[p]ignore list` to list ignored threads
- Updated logic in `Red.ignored_channel_or_guild()`

Ignores for guild channels now work as follows (only changes for threads):
- if channel is not a thread:
    - check if user has manage channels perm in channel
      and allow command usage if so
    - check if channel is ignored and disallow command usage if so
    - allow command usage if none of the conditions above happened
- if channel is a thread:
    - check if user has manage channels perm in parent channel
      and allow command usage if so
    - check if parent channel is ignored and disallow command usage
      if so
    - check if user has manage thread perm in parent channel
      and allow command usage if so
    - check if thread is ignored and disallow command usage if so
    - allow command usage if none of the conditions above happened

* [partial] Raise TypeError when channel is of PartialMessageable type

- Red.embed_requested
- Red.ignored_channel_or_guild

* [partial] Discard command messages when channel is PartialMessageable

* [threads] Add utilities for checking appropriate perms in both channels & threads

* [threads] Update code to use can_react_in() and @bot_can_react()

* [threads] Update code to use can_send_messages_in

* [threads] Add send_messages_in_threads perm to mute role and overrides

* [threads] Update code to use (bot/user)_can_manage_channel

* [threads] Update [p]diagnoseissues to work with threads

* Type hint fix

* [threads] Patch vendored discord.ext.menus to check proper perms in threads

I guess we've reached time when we have to patch the lib we vendor...

* Make docs generation work with non-final d.py releases

* Update discord.utils.oauth_url() usage

* Swap usage of discord.Embed.Empty/discord.embeds.EmptyEmbed to None

* Update usage of Guild.member_count to work with `None`

* Switch from Guild.vanity_invite() to Guild.vanity_url

* Update startup process to work with d.py's new asynchronous startup

* Use setup_hook() for pre-connect actions

* Update core's add_cog, remove_cog, and load_extension methods

* Update all setup functions to async and add awaits to bot.add_cog calls

* Modernize cogs by using async cog_load and cog_unload

* Address StoreChannel removal

* [partial] Disallow passing PartialMessageable to Case.channel

* [partial] Update cogs and utils to work better with PartialMessageable

- Ignore messages with PartialMessageable channel in CustomCommands cog
- In Filter cog, don't pass channel to modlog.create_case()
  if it's PartialMessageable
- In Trivia cog, only compare channel IDs
- Make `.utils.menus.menu()` work for messages
  with PartialMessageable channel
- Make checks in `.utils.tunnel.Tunnel.communicate()` more rigid

* Add few missing DEP-WARNs
2022-04-03 03:21:20 +02:00
Kreusada
c9a0971945
Reference how to reply in the [p]contact command with embed settings (#5529) 2022-04-02 02:57:06 +02:00
Draper
78e64ec559
add timestamps to all audio embeds (#5632) 2022-04-02 02:37:44 +02:00