| Commit message (Collapse) | Author | Age | Lines |
| | |
|
| |
|
|
|
|
| |
This is a purely aesthetic choice.
Additionally fixes a small bug where a missing entry type would repeatedly invoke a warning on cog load.
|
| |\ |
|
| | |\ |
|
| | | |\ |
|
| | | | |\ |
|
| | | | | |
| | | | |
| | | | | |
The attribute was removed from Bot in fc05849
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
the input
|
| | | |_|/
| |/| | |
|
| | |\ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Co-authored-by: Izan <[email protected]>
Co-authored-by: TizzySaurus <[email protected]>
Co-authored-by: Xithrius <[email protected]>
|
| | | |\| | |
|
| | | | | | |
|
| | | |\ \ \ |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
- Use the more concise DATETIME timestamp instead of both a DATE and a TIME timestamp.
- Remove underline from the "Reported ..." section at the bottom of the embed.
- Re-add time of action/rejection timestamp to footer of embed.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Corrected test case to use `datetime.utcnow()` to be consistent with target
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
- Used new method of dict subset comparison instead of datetime patching for better compat. with argument types
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
- Corrected datetime patching
|
| | | | | | | |
|
| | | | | | | |
|
| | | |_|/ /
| |/| | |
| | | | |
| | | | | |
- Refactored tests for new time duration arguments
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Calling the cog_load from within the setUp function resulted in interaction with a RedisSession before it was initialised.
This wasn't noticed in CI as it only error under certain concurrency timings due to xdist.
To resolve this, we moved the setup and async setup logic to a base class.
Co-authored-by: Hassan Abouelela <[email protected]>
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This helper ensures that a fresh RedisSession is given to each test case that inherits from it.
|
| | | | |
| | | |
| | | |
| | | | |
pep-naming now supports these functions being in camel case.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This has been abstracted away, the correct way to do this now is to directly access the client.
|
| | | | |
| | | |
| | | |
| | | | |
These warnings were caused by the setup coro from error_handler.py being imported directly, causing a warning about an un-awaited coro whenever the Cog was accessed from the same file.
|
| | | |/
| |/|
| | |
| | | |
get_event_loop is deprecated as of 3.10 if there is no running loop.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
The channel scope settings were changed to accomodate strings. That means that if a string is specified, the bot will look whether the context channel's name matches. If it's a number, it will match the ID.
Accordingly the same changed was applied to the bypass roles and pings settings: if it's a non-numeric string, it will look for a role with that name.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit provides the basis of the new filtering system:
- The filtering cog consists of several filter lists loaded from the database (filtering.py).
- Each filter list contains a list of filters, which are run in response to events (message posting, reaction, thread creation). Each filter list may choose to respond to different events (the subscribe method in filtering.py).
- Each filter has settings (settings.py) which decide when it is going to be run (e.g it might be disabled in a specific channel), and what will happen if it triggers (e.g delete the offending message).
- Not every filter has a value for every setting (the _settings_types package) . It will use the default settings specified by its filter list as a fallback.
- Since each filter might have a different effect when triggered, we must check all relevant filters even if we found a triggered filter already, unlike in the old system.
- Two triggered filters may specify different values for the same setting, therefore each entry has a rule for combining two different values (the __or__ method in each file in _settings_types).
To avoid having to prefix each file with an underscore (or the bot will try to load it as a cog), the loading script was changed to ignore packages with names starting with an underscore.
Alert sending is done via a webhook so that several embeds can be sent in the same message (will be useful for example for guild invite alerts).
Filter lists and setting entries classes are loaded dynamically from their respective packages.
In order to be able to test the new features, this commit also includes a migration of the regex-based filtering.
|
| |/ /
| |
| |
| | |
Tests and dependent functionality in other extensions will be re-added later on.
|
| | | |
|
| |\ \ |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| |/ / |
|