| Commit message (Collapse) | Author | Age | Lines | ||
|---|---|---|---|---|---|
| ... | |||||
| | | * | | | | Branding: implement internal utility | 2021-03-13 | -2/+174 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the core logic of branding management. In comparison with the previous version, we now maintain all state in Redis, which allows the bot to seamlessly restart without losing any information. The 'send_info_embed' function is intentionally implemented with the consideration of allowing users to invoke it on-demand. It always reads information from the cache, even if the caller could pass a 'MetaFile' instance. So while this may look needlessly indirect right now, it should begin to make sense once the command API is implemented. | ||||
| | | * | | | | Branding: expose SHA on remote objects | 2021-03-13 | -0/+1 | ||
| | | | | | | | |||||
| | | * | | | | Branding: implement asset application logic | 2021-03-13 | -0/+51 | ||
| | | | | | | | |||||
| | | * | | | | Branding: do not require 'RemoteObject' instance to fetch file | 2021-03-13 | -5/+5 | ||
| | | | | | | | |||||
| | | * | | | | Branding: correctly annotate optional attribute | 2021-03-13 | -1/+1 | ||
| | | | | | | | |||||
| | | * | | | | Branding: make event instances aware of their location | 2021-03-13 | -2/+6 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to add a neat string representation. | ||||
| | | * | | | | Branding: add event getters | 2021-03-13 | -0/+51 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | These methods form the API to the repository abstraction. | ||||
| | | * | | | | Branding: define event construction methodology | 2021-03-13 | -0/+90 | ||
| | | | | | | | |||||
| | | * | | | | Branding: add HTTP fetch helper methods | 2021-03-13 | -0/+54 | ||
| | | | | | | | |||||
| | | * | | | | Branding: migrate constants | 2021-03-13 | -11/+11 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Constants will only be used in one place and there's not enough of them to warrant a separate module. | ||||
| | | * | | | | Branding: initiate repository abstraction | 2021-03-13 | -0/+15 | ||
| | | | | | | | |||||
| | | * | | | | Branding: remove current implementation | 2021-03-13 | -812/+32 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we're planning substantial changes, it will be easier to build from scratch. | ||||
| | | * | | | | Pipenv: add 'python-frontmatter' & re-lock | 2021-03-07 | -48/+59 | ||
| | | | | | | | |||||
| | | | | * | | Use deleted reason if help channel is closed due to being empty | 2021-03-30 | -1/+2 | ||
| | | |_|/ / | |/| | | | |||||
| | * | | | | Merge pull request #1491 from python-discord/fix/dmrelay | 2021-03-30 | -13/+9 | ||
| | |\ \ \ \ | |||||
| | | * \ \ \ | Merge branch 'main' into fix/dmrelay | 2021-03-30 | -345/+490 | ||
| | | |\ \ \ \ | | |/ / / / | |/| | | | | |||||
| | * | | | | | Merge pull request #1470 from python-discord/help-channel-closing-delay-changes | 2021-03-30 | -345/+490 | ||
| | |\ \ \ \ \ | | | | | | | | | | | | | | | Extend close time logic to differentiate between the claimant and other users | ||||
| | | * | | | | | Fix copy & paste error in closing reason enum | 2021-03-30 | -1/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Change to an Enum for possible closing reasons | 2021-03-30 | -20/+32 | ||
| | | | | | | | | |||||
| | | * | | | | | Enumerate all possible values for closed_on in docstring | 2021-03-30 | -1/+4 | ||
| | | | | | | | | |||||
| | | * | | | | | HelpChannels: refactor get_closing_time | 2021-03-30 | -43/+43 | ||
| | | | | | | | | |||||
| | | * | | | | | HelpChannels: use aware datetimes everywhere | 2021-03-30 | -27/+34 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix issues converting timestamps to datetimes and vice-versa. The main culprit id `datetime.timestamp()`, which always assumes naïve objects are in local time. That behaviour conflicts with discord.py, which returns naïve objects in UTC rather than local time. Switching from `utcfromtimestamp` to `fromtimestamp` was incorrect since the latter also assumes the timestamp is in local time. | ||||
| | | * | | | | | Update arrow to 1.0.3 | 2021-03-30 | -267/+336 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It has some API changes, so it's best to update now before the project starts using the library more. | ||||
| | | * | | | | | Switch to datetime.fromtimestamp() to avoid over-compensation | 2021-03-26 | -3/+3 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we were using `utcfromtimestamp()` which would compensate the timestamp when converting to UTC even though the timestamp itself was in UTC: >>> datetime.utcnow() datetime.datetime(2021, 3, 26, 22, 8, 47, 441603) >>> a = datetime.utcnow().timestamp() 1616821624.207364 >>> a = datetime.utcfromtimestamp(a) datetime.datetime(2021, 3, 27, 5, 7, 4, 207364) By switching to `fromtimestamp()` this avoids that behaviour. | ||||
| | | * | | | | | Use correct constant for each type of help session user | 2021-03-26 | -5/+5 | ||
| | | | | | | | | |||||
| | | * | | | | | Add 1 second due to POSIX timestamps being lower resolution than datetime ↵ | 2021-03-26 | -3/+5 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | objects. | ||||
| | | * | | | | | Fix error when converting non claimant message | 2021-03-26 | -7/+10 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | datetime.min cannot be converted to a timestamp as it's pre-epoch. Instead wait until we actuall need it and then create the correct datetime object depending on teh cache contents. | ||||
| | | * | | | | | Convert to timestamp before posting to redis | 2021-03-25 | -2/+2 | ||
| | | | | | | | | |||||
| | | * | | | | | Reset a channel's non-claimant cache on claim, to indicate that the session ↵ | 2021-03-25 | -7/+9 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | has yet to be answered. | ||||
| | | * | | | | | Refactor if block within help channel system to be more readable | 2021-03-25 | -6/+7 | ||
| | | | | | | | | |||||
| | | * | | | | | Refactor help channel update message cache function for clearer flow | 2021-03-25 | -9/+8 | ||
| | | | | | | | | |||||
| | | * | | | | | Create utc datetime objects from timestamps | 2021-03-25 | -4/+4 | ||
| | | | | | | | | |||||
| | | * | | | | | Change help channel caching logic to use timezone naive stamps | 2021-03-25 | -3/+3 | ||
| | | | | | | | | |||||
| | | * | | | | | Only fetch claimant id once | 2021-03-25 | -2/+3 | ||
| | | | | | | | | |||||
| | | * | | | | | update help channel on_message docstring to reflect unchanged responsibility | 2021-03-25 | -6/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Schedule channels just opened using claimant configured idle time | 2021-03-25 | -1/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Check for close on command explictly. | 2021-03-25 | -1/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Remove unneeded cache clearing | 2021-03-25 | -8/+0 | ||
| | | | | | | | | |||||
| | | * | | | | | Change help channel logic to use timezone naive stamps | 2021-03-25 | -8/+6 | ||
| | | | | | | | | |||||
| | | * | | | | | Don't prepend command closes with auto | 2021-03-25 | -2/+3 | ||
| | | | | | | | | |||||
| | | * | | | | | Add back seperation whitespace | 2021-03-24 | -0/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Use claiment idle time as default idle minutes. | 2021-03-24 | -1/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Use fallback behaviour during cog init | 2021-03-24 | -5/+8 | ||
| | | | | | | | | |||||
| | | * | | | | | Merge pull request #1476 from laundmo/help-channel-closing-delay-changes | 2021-03-20 | -27/+45 | ||
| | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | reset cache on bot start, stats for different close reasons | ||||
| | | | * | | | | | run precommit with all deps | 2021-03-20 | -1/+1 | ||
| | | | | | | | | | |||||
| | | | * | | | | | passing pre-commit | 2021-03-20 | -4/+11 | ||
| | | | | | | | | | |||||
| | | | * | | | | | reset cache on bot start, stats for different close reasons | 2021-03-19 | -28/+39 | ||
| | | |/ / / / / | |||||
| | | * | | | | | More descriptive comment for when an if block is entered | 2021-03-18 | -1/+1 | ||
| | | | | | | | | |||||
| | | * | | | | | Determine closing time from last message if either cache is empty, rather ↵ | 2021-03-18 | -2/+2 | ||
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than if both are empty | ||||
| | | * | | | | | If the channel is empty, determine closing time based on last message. | 2021-03-18 | -4/+5 | ||
| | | | | | | | | |||||