aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
* | | | | | | | | | | | | Merge pull request #473 from python-discord/ISODate-converterGravatar Mark2019-10-04-0/+122
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / / / / |/| | | | | | | | | | | | Add converter for ISO-formatted datetime strings
| * | | | | | | | | | | | Merge branch 'master' into ISODate-converterGravatar Mark2019-10-04-38/+130
| |\ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / |/| | | | | | | | | | | |
| * | | | | | | | | | | | Check if tzinfo is None in ISODateTime testGravatar Sebastiaan Zeeff2019-10-03-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As we have decided that the converter should return naive datetime objects, we should explicitly test that datetime strings with a timezone offset are still converted to a naive datetime object. I have done this by adding a `tzinfo is None` assertion.
| * | | | | | | | | | | | Make ISODateTime return tz-unaware datetimeGravatar Sebastiaan Zeeff2019-10-02-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parser we use, `dateutil.parsers.isoparse` returns a timezone- aware or timezone-unaware `datetime` object depending on whether or not the datetime string included a timezone offset specification. Since we can't compare tz-aware objects to tz-unaware objects it's better to make sure our converter is consistent in the type it will return. For now, I've chosen to return tz-unaware datetime objects, since `discord.py` also returns tz-unaware datetime objects when accessing datetime-related attributes of objects. Since we're likely to compare "our" datetime objects to discord.py-provided datetime objects, I think that's the most parsimonious option for now. Note: It's probably a good idea to open a larger discussion about using timezone-aware datetime objects throughout the library to avoid a UTC-time being interpreted as localtime. This will require a broader discussion than this commit/PR allows, though.
| * | | | | | | | | | | | Remove angle brackets from ISODateTime docstringGravatar Sebastiaan Zeeff2019-10-02-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes the angle brackets from the url in the docstring of `ISODateTime.convert`. The reason: it's ugly.
| * | | | | | | | | | | | Apply docstring review suggestionGravatar Sebastiaan Zeeff2019-10-02-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Mark <[email protected]>
| * | | | | | | | | | | | Remove surplus quotation mark in class docstringGravatar Sebastiaan Zeeff2019-10-01-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: S. Co1 <[email protected]>
| * | | | | | | | | | | | Add converter for ISO-formatted datetime stringsGravatar Sebastiaan Zeeff2019-10-01-0/+88
| | |_|_|_|_|_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Related to https://github.com/python-discord/bot/issues/458 This commit adds a converter that automatically parses ISO-formatted datetime strings and returns a `datetime.datetime` object. It uses `dateutil.parser.isoparse` to do the heavy lifting, so it supports the same formats as this method. In addition, I have added tests that ensure that it accepts certain formats and added a description of these 'guaranteed' formats to the `ISODate.convert` docstring. This commit should make it easy to implement #485
| | * | | | | | | | | | Adjust verbiage of totals for watch commandsGravatar MarkKoz2019-10-04-2/+2
| | | | | | | | | | | |
| | * | | | | | | | | | Show previous watch reason and total after invoking watch commandGravatar MarkKoz2019-10-04-2/+39
| |/ / / / / / / / / / |/| | | | | | | | | |
| | * | | | | | | | | Merge branch 'add-role-info-command' of github.com:python-discord/bot into ↵Gravatar Joseph Banks2019-10-01-2347/+1646
| | |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add-role-info-command
| | | * \ \ \ \ \ \ \ \ Merge branch 'master' into add-role-info-commandGravatar S. Co12019-10-01-2347/+1646
| | | |\ \ \ \ \ \ \ \ \ | | | | | |_|/ / / / / / | | | | |/| | | | | | |
| | * | / | | | | | | | Make tests work with Union converterGravatar Joseph Banks2019-10-01-3/+4
| | |/ / / / / / / / /
| | * | | | | | | | | linter is the bane of my existenceGravatar Joseph Banks2019-10-01-1/+0
| | | | | | | | | | |
| | * | | | | | | | | Implement review comments and stop using a greedy converterGravatar Joseph Banks2019-10-01-4/+22
| | | | | | | | | | |
| | * | | | | | | | | Add unit tests for role info commandGravatar Joseph Banks2019-09-21-1/+48
| | | | | | | | | | |
| | * | | | | | | | | Add role info commandGravatar Joseph Banks2019-09-21-2/+33
| | | |_|_|/ / / / / | | |/| | | | | | |
| | | | * | | | | | Fix error when symbol_id cannot be found in doc HTMLGravatar MarkKoz2019-10-04-0/+3
| |_|_|/ / / / / / |/| | | | | | | |
| | | | * | | | | Only allow members currently in the guild to be warnedGravatar MarkKoz2019-10-07-1/+1
| | | | | | | | |
| | | | * | | | | Update the nickname policy URLGravatar Mark2019-10-07-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Sebastiaan Zeeff <[email protected]>
| | | | * | | | | Make categories class attributes and support descriptionsGravatar MarkKoz2019-10-04-5/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Document support for custom categories.
| | | | * | | | | Wait until the bot is ready before reschedule infractionsGravatar MarkKoz2019-10-04-0/+2
| | | | | | | | |
| | | | * | | | | Fix rescheduling of infractions when cog is reloadedGravatar MarkKoz2019-10-03-3/+5
| | | | | | | | |
| | | | * | | | | Make warns, notes, and kicks always inactive Gravatar Mark2019-10-03-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It doesn't make sense for these types of infractions to be "active". Co-Authored-By: Sebastiaan Zeeff <[email protected]>
| | | | * | | | | Add note instead of failure to mod log during pardon when ban not foundGravatar MarkKoz2019-10-03-2/+7
| | | | | | | | |
| | | | * | | | | Merge remote-tracking branch 'origin/master' into moderation-cleanupGravatar MarkKoz2019-10-03-15/+94
| | | | |\ \ \ \ \
| | | | * | | | | | Mention moderators in the mod log when an infraction fails to expireGravatar MarkKoz2019-10-02-1/+7
| | | | | | | | | |
| | | | * | | | | | Swap arguments for post_infraction callsGravatar Mark2019-10-02-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: Sebastiaan Zeeff <[email protected]>
| | | | * | | | | | Remove __all__ definition from moderation subpackageGravatar MarkKoz2019-10-02-3/+0
| | | | | | | | | |
| | | | * | | | | | Rename parameters to stop shadowing type built-inGravatar MarkKoz2019-10-02-15/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: scragly <[email protected]>
| | | | * | | | | | Format duration units as a list in management doctsringsGravatar Mark2019-10-02-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: scragly <[email protected]>
| | | | * | | | | | Format duration units as a list in infractions doctsringsGravatar Mark2019-10-02-9/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: scragly <[email protected]>
| | | | * | | | | | Add help category for Infractions and ModManagement cogsGravatar MarkKoz2019-10-01-8/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The two cogs will be listed under the same category in the help output.
| | | | * | | | | | Use has_active_infraction util function in superstarifyGravatar MarkKoz2019-10-01-19/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rename already_has_active_infraction to has_active_infraction * Fit some lines in utils to 100 columns
| | | | * | | | | | Add an optional icon_url parameter with a default to notify_infractionGravatar MarkKoz2019-10-01-3/+3
| | | | | | | | | |
| | | | * | | | | | Tidy up importsGravatar MarkKoz2019-10-01-95/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove redundant discord.Colour() usage * Fix type annotation of colour parameter for modlog.send_log_message() * Use a cog check in superstarify to require moderation roles
| | | | * | | | | | Use consistent expiration format in superstarifyGravatar MarkKoz2019-10-01-3/+4
| | | | | | | | | |
| | | | * | | | | | Move DM notification functions to moderation utils moduleGravatar MarkKoz2019-10-01-110/+104
| | | | | | | | | |
| | | | * | | | | | Add comments and improve docstrings in the infractions cogGravatar MarkKoz2019-10-01-13/+13
| | | | | | | | | |
| | | | * | | | | | Remove redundant cancel_expiration method and use cancel_taskGravatar MarkKoz2019-10-01-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Cancel the task inside deactivate_infraction
| | | | * | | | | | Ignore the default unban event in the mod logGravatar MarkKoz2019-10-01-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Shorten the mod log footer for pardons
| | | | * | | | | | Fix out-of-order and missing arguments for post_infraction callsGravatar MarkKoz2019-10-01-2/+2
| | | | | | | | | |
| | | | * | | | | | Display username in addition to id for unmutes in mod logGravatar MarkKoz2019-10-01-0/+1
| | | | | | | | | |
| | | | * | | | | | Fix string representation of bot user in mod logGravatar MarkKoz2019-10-01-1/+1
| | | | | | | | | |
| | | | * | | | | | Refactor _scheduled_task & remove extraneous DM for expired infractionsGravatar MarkKoz2019-10-01-22/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use dateutil to parse expiration timestamp
| | | | * | | | | | Fix concatenation of log text dictionaryGravatar MarkKoz2019-10-01-2/+2
| | | | | | | | | |
| | | | * | | | | | Add reason for pardons in audit logGravatar MarkKoz2019-10-01-2/+3
| | | | | | | | | |
| | | | * | | | | | Add a generic function to pardon infractionsGravatar MarkKoz2019-10-01-130/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Display error in the confirmation message when the pardon fails * Only attempt to remove the infraction from Discord once
| | | | * | | | | | Rework deactivate_infraction to handle errors and send a mod logGravatar MarkKoz2019-10-01-29/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rename to deactivate_infraction * Send DM for unmute * Log errors with logging module and to the mod log embed * Return a dictionary representation of the mod log text * Raise a ValueError for unsupported infraction types
| | | | * | | | | | Add infraction pardon icons to dictionaryGravatar MarkKoz2019-10-01-7/+8
| | | | | | | | | |