aboutsummaryrefslogtreecommitdiffstats
path: root/bot
diff options
context:
space:
mode:
authorGravatar hedy <[email protected]>2024-03-25 12:39:21 +0800
committerGravatar hedy <[email protected]>2024-03-25 15:18:43 +0800
commit913a3c0a8f12230a78f72fc16c9e596feb634366 (patch)
treefb60cd4a614ec2b37454ca6700559c66c84cd22a /bot
parentRemoved inactive users from `CODEOWNERS` (#1485) (diff)
Support issues closed as not-planned in GitHub Issue linking
- Issue closed emoji is renamed to `issue_completed` to better reflect the `state_reason` key provided by the GitHub API that determines the usage of this emoji.
Diffstat (limited to 'bot')
-rw-r--r--bot/constants.py3
-rw-r--r--bot/exts/utilities/githubinfo.py9
2 files changed, 7 insertions, 5 deletions
diff --git a/bot/constants.py b/bot/constants.py
index 492ac918..707f99d2 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -166,7 +166,8 @@ class Emojis:
# These icons are from Github's repo https://github.com/primer/octicons/
issue_open = "<:IssueOpen:852596024777506817>"
- issue_closed = "<:IssueClosed:927326162861039626>"
+ issue_completed = "<:IssueClosed:927326162861039626>"
+ issue_not_planned = "<:IssueNotPlanned:1221642127595929610>"
issue_draft = "<:IssueDraft:852596025147523102>" # Not currently used by Github, but here for future.
pull_request_open = "<:PROpen:852596471505223781>"
pull_request_closed = "<:PRClosed:852596024732286976>"
diff --git a/bot/exts/utilities/githubinfo.py b/bot/exts/utilities/githubinfo.py
index f567f836..48474511 100644
--- a/bot/exts/utilities/githubinfo.py
+++ b/bot/exts/utilities/githubinfo.py
@@ -114,10 +114,11 @@ class GithubInfo(commands.Cog):
# from issues: if the 'issues' key is present in the response then we can pull the data we
# need from the initial API call.
if "issues" in json_data["html_url"]:
- if json_data.get("state") == "open":
- emoji = Emojis.issue_open
- else:
- emoji = Emojis.issue_closed
+ emoji = Emojis.issue_open
+ if json_data.get("state") == "closed":
+ emoji = Emojis.issue_completed
+ if json_data.get("state_reason") == "not_planned":
+ emoji = Emojis.issue_not_planned
# If the 'issues' key is not contained in the API response and there is no error code, then
# we know that a PR has been requested and a call to the pulls API endpoint is necessary