From 99f8d510aa74079a9856dd9fb95c4136ea7fc9b8 Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 14:42:40 +1000 Subject: [PATCH 01/12] advent: display leaderboards as a colour image uses pillow to render leaderboards into an image with a style very close to the website. inline display in the discord app is a bit smaller than i would've liked but alas. text format is kept alongside the image since it's probably nice to have. maybe this should be behind an argument, but there are already so many. implementation has some weaknesses: - unicode multi-character sequences and emoji aren't rendered - relies very much on a monospace font for alignment let me know if this is something you want. --- poetry.lock | 98 +++++++++++++++++++++- pyproject.toml | 1 + uqcsbot/advent.py | 34 +++++--- uqcsbot/static/NotoSansMono-Regular.ttf | Bin 0 -> 405892 bytes uqcsbot/utils/advent_utils.py | 107 ++++++++++++++++++++---- 5 files changed, 207 insertions(+), 33 deletions(-) create mode 100644 uqcsbot/static/NotoSansMono-Regular.ttf diff --git a/poetry.lock b/poetry.lock index 19b7fcd9..bbd4948c 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aio-mc-rcon" @@ -821,6 +821,98 @@ files = [ {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, ] +[[package]] +name = "pillow" +version = "11.0.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pillow-11.0.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:6619654954dc4936fcff82db8eb6401d3159ec6be81e33c6000dfd76ae189947"}, + {file = "pillow-11.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b3c5ac4bed7519088103d9450a1107f76308ecf91d6dabc8a33a2fcfb18d0fba"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a65149d8ada1055029fcb665452b2814fe7d7082fcb0c5bed6db851cb69b2086"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88a58d8ac0cc0e7f3a014509f0455248a76629ca9b604eca7dc5927cc593c5e9"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:c26845094b1af3c91852745ae78e3ea47abf3dbcd1cf962f16b9a5fbe3ee8488"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:1a61b54f87ab5786b8479f81c4b11f4d61702830354520837f8cc791ebba0f5f"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:674629ff60030d144b7bca2b8330225a9b11c482ed408813924619c6f302fdbb"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:598b4e238f13276e0008299bd2482003f48158e2b11826862b1eb2ad7c768b97"}, + {file = "pillow-11.0.0-cp310-cp310-win32.whl", hash = "sha256:9a0f748eaa434a41fccf8e1ee7a3eed68af1b690e75328fd7a60af123c193b50"}, + {file = "pillow-11.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:a5629742881bcbc1f42e840af185fd4d83a5edeb96475a575f4da50d6ede337c"}, + {file = "pillow-11.0.0-cp310-cp310-win_arm64.whl", hash = "sha256:ee217c198f2e41f184f3869f3e485557296d505b5195c513b2bfe0062dc537f1"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1c1d72714f429a521d8d2d018badc42414c3077eb187a59579f28e4270b4b0fc"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:499c3a1b0d6fc8213519e193796eb1a86a1be4b1877d678b30f83fd979811d1a"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c8b2351c85d855293a299038e1f89db92a2f35e8d2f783489c6f0b2b5f3fe8a3"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f4dba50cfa56f910241eb7f883c20f1e7b1d8f7d91c750cd0b318bad443f4d5"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:5ddbfd761ee00c12ee1be86c9c0683ecf5bb14c9772ddbd782085779a63dd55b"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:45c566eb10b8967d71bf1ab8e4a525e5a93519e29ea071459ce517f6b903d7fa"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:b4fd7bd29610a83a8c9b564d457cf5bd92b4e11e79a4ee4716a63c959699b306"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:cb929ca942d0ec4fac404cbf520ee6cac37bf35be479b970c4ffadf2b6a1cad9"}, + {file = "pillow-11.0.0-cp311-cp311-win32.whl", hash = "sha256:006bcdd307cc47ba43e924099a038cbf9591062e6c50e570819743f5607404f5"}, + {file = "pillow-11.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:52a2d8323a465f84faaba5236567d212c3668f2ab53e1c74c15583cf507a0291"}, + {file = "pillow-11.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:16095692a253047fe3ec028e951fa4221a1f3ed3d80c397e83541a3037ff67c9"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d2c0a187a92a1cb5ef2c8ed5412dd8d4334272617f532d4ad4de31e0495bd923"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:084a07ef0821cfe4858fe86652fffac8e187b6ae677e9906e192aafcc1b69903"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8069c5179902dcdce0be9bfc8235347fdbac249d23bd90514b7a47a72d9fecf4"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f02541ef64077f22bf4924f225c0fd1248c168f86e4b7abdedd87d6ebaceab0f"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:fcb4621042ac4b7865c179bb972ed0da0218a076dc1820ffc48b1d74c1e37fe9"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:00177a63030d612148e659b55ba99527803288cea7c75fb05766ab7981a8c1b7"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8853a3bf12afddfdf15f57c4b02d7ded92c7a75a5d7331d19f4f9572a89c17e6"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3107c66e43bda25359d5ef446f59c497de2b5ed4c7fdba0894f8d6cf3822dafc"}, + {file = "pillow-11.0.0-cp312-cp312-win32.whl", hash = "sha256:86510e3f5eca0ab87429dd77fafc04693195eec7fd6a137c389c3eeb4cfb77c6"}, + {file = "pillow-11.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:8ec4a89295cd6cd4d1058a5e6aec6bf51e0eaaf9714774e1bfac7cfc9051db47"}, + {file = "pillow-11.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:27a7860107500d813fcd203b4ea19b04babe79448268403172782754870dac25"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bcd1fb5bb7b07f64c15618c89efcc2cfa3e95f0e3bcdbaf4642509de1942a699"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e038b0745997c7dcaae350d35859c9715c71e92ffb7e0f4a8e8a16732150f38"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ae08bd8ffc41aebf578c2af2f9d8749d91f448b3bfd41d7d9ff573d74f2a6b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d69bfd8ec3219ae71bcde1f942b728903cad25fafe3100ba2258b973bd2bc1b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:61b887f9ddba63ddf62fd02a3ba7add935d053b6dd7d58998c630e6dbade8527"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:c6a660307ca9d4867caa8d9ca2c2658ab685de83792d1876274991adec7b93fa"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:73e3a0200cdda995c7e43dd47436c1548f87a30bb27fb871f352a22ab8dcf45f"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fba162b8872d30fea8c52b258a542c5dfd7b235fb5cb352240c8d63b414013eb"}, + {file = "pillow-11.0.0-cp313-cp313-win32.whl", hash = "sha256:f1b82c27e89fffc6da125d5eb0ca6e68017faf5efc078128cfaa42cf5cb38798"}, + {file = "pillow-11.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:8ba470552b48e5835f1d23ecb936bb7f71d206f9dfeee64245f30c3270b994de"}, + {file = "pillow-11.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:846e193e103b41e984ac921b335df59195356ce3f71dcfd155aa79c603873b84"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4ad70c4214f67d7466bea6a08061eba35c01b1b89eaa098040a35272a8efb22b"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6ec0d5af64f2e3d64a165f490d96368bb5dea8b8f9ad04487f9ab60dc4bb6003"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c809a70e43c7977c4a42aefd62f0131823ebf7dd73556fa5d5950f5b354087e2"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:4b60c9520f7207aaf2e1d94de026682fc227806c6e1f55bba7606d1c94dd623a"}, + {file = "pillow-11.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:1e2688958a840c822279fda0086fec1fdab2f95bf2b717b66871c4ad9859d7e8"}, + {file = "pillow-11.0.0-cp313-cp313t-win32.whl", hash = "sha256:607bbe123c74e272e381a8d1957083a9463401f7bd01287f50521ecb05a313f8"}, + {file = "pillow-11.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5c39ed17edea3bc69c743a8dd3e9853b7509625c2462532e62baa0732163a904"}, + {file = "pillow-11.0.0-cp313-cp313t-win_arm64.whl", hash = "sha256:75acbbeb05b86bc53cbe7b7e6fe00fbcf82ad7c684b3ad82e3d711da9ba287d3"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2e46773dc9f35a1dd28bd6981332fd7f27bec001a918a72a79b4133cf5291dba"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2679d2258b7f1192b378e2893a8a0a0ca472234d4c2c0e6bdd3380e8dfa21b6a"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eda2616eb2313cbb3eebbe51f19362eb434b18e3bb599466a1ffa76a033fb916"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ec184af98a121fb2da42642dea8a29ec80fc3efbaefb86d8fdd2606619045d"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:8594f42df584e5b4bb9281799698403f7af489fba84c34d53d1c4bfb71b7c4e7"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:c12b5ae868897c7338519c03049a806af85b9b8c237b7d675b8c5e089e4a618e"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:70fbbdacd1d271b77b7721fe3cdd2d537bbbd75d29e6300c672ec6bb38d9672f"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5178952973e588b3f1360868847334e9e3bf49d19e169bbbdfaf8398002419ae"}, + {file = "pillow-11.0.0-cp39-cp39-win32.whl", hash = "sha256:8c676b587da5673d3c75bd67dd2a8cdfeb282ca38a30f37950511766b26858c4"}, + {file = "pillow-11.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:94f3e1780abb45062287b4614a5bc0874519c86a777d4a7ad34978e86428b8dd"}, + {file = "pillow-11.0.0-cp39-cp39-win_arm64.whl", hash = "sha256:290f2cc809f9da7d6d622550bbf4c1e57518212da51b6a30fe8e0a270a5b78bd"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:1187739620f2b365de756ce086fdb3604573337cc28a0d3ac4a01ab6b2d2a6d2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:fbbcb7b57dc9c794843e3d1258c0fbf0f48656d46ffe9e09b63bbd6e8cd5d0a2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d203af30149ae339ad1b4f710d9844ed8796e97fda23ffbc4cc472968a47d0b"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21a0d3b115009ebb8ac3d2ebec5c2982cc693da935f4ab7bb5c8ebe2f47d36f2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:73853108f56df97baf2bb8b522f3578221e56f646ba345a372c78326710d3830"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e58876c91f97b0952eb766123bfef372792ab3f4e3e1f1a2267834c2ab131734"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:224aaa38177597bb179f3ec87eeefcce8e4f85e608025e9cfac60de237ba6316"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5bd2d3bdb846d757055910f0a59792d33b555800813c3b39ada1829c372ccb06"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:375b8dd15a1f5d2feafff536d47e22f69625c1aa92f12b339ec0b2ca40263273"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:daffdf51ee5db69a82dd127eabecce20729e21f7a3680cf7cbb23f0829189790"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7326a1787e3c7b0429659e0a944725e1b03eeaa10edd945a86dead1913383944"}, + {file = "pillow-11.0.0.tar.gz", hash = "sha256:72bacbaf24ac003fea9bff9837d1eedb6088758d41e100c1552930151f677739"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=8.1)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] +typing = ["typing-extensions"] +xmp = ["defusedxml"] + [[package]] name = "platformdirs" version = "4.2.1" @@ -1204,7 +1296,7 @@ files = [ ] [package.dependencies] -greenlet = {version = "!=0.4.17", markers = "platform_machine == \"win32\" or platform_machine == \"WIN32\" or platform_machine == \"AMD64\" or platform_machine == \"amd64\" or platform_machine == \"x86_64\" or platform_machine == \"ppc64le\" or platform_machine == \"aarch64\""} +greenlet = {version = "!=0.4.17", markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\""} psycopg2-binary = {version = "*", optional = true, markers = "extra == \"postgresql-psycopg2binary\""} typing-extensions = ">=4.6.0" @@ -1467,4 +1559,4 @@ multidict = ">=4.0" [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "cf0759e0860a4edb222e420d688b3857f1decc8fbde7425597428697500e460a" +content-hash = "f33c7718be64a92e29e505e7eb5b9e81a0798f8f39dace72f84a5252929de461" diff --git a/pyproject.toml b/pyproject.toml index 16053455..1696ed98 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,6 +20,7 @@ aiohttp = "^3.9" aio-mc-rcon = "^3.2.0" PyYAML = "^6.0" mcstatus = "^11.1.0" +pillow = "^11.0.0" [tool.poetry.scripts] botdev = "dev.cli:main" diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 9fe27474..fc446e1f 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -22,10 +22,13 @@ CACHE_TIME, parse_leaderboard_column_string, print_leaderboard, + render_leaderboard_to_image, + render_leaderboard_to_text, ) # Leaderboard API URL with placeholders for year and code. -LEADERBOARD_URL = "https://adventofcode.com/{year}/leaderboard/private/view/{code}.json" +LEADERBOARD_VIEW_URL = "https://adventofcode.com/{year}/leaderboard/private/view/{code}" +LEADERBOARD_URL = LEADERBOARD_VIEW_URL + ".json" # UQCS leaderboard ID. UQCS_LEADERBOARD = 989288 @@ -519,28 +522,35 @@ async def leaderboard_command( ] members.sort(key=sorting_functions_for_month[sortby]) + view_url = LEADERBOARD_VIEW_URL.format(year=year, code=code) + message += f"\n{view_url}" + if not members: await interaction.edit_original_response( content="This leaderboard contains no people." ) return - scoreboard_file = io.BytesIO( - bytes( - print_leaderboard( - parse_leaderboard_column_string(leaderboard_style, self.bot), - members, - day, - ), - "utf-8", - ) + leaderboard = print_leaderboard( + parse_leaderboard_column_string(leaderboard_style, self.bot), + members, + day, ) + + scoreboard_text = render_leaderboard_to_text(leaderboard) + scoreboard_image = render_leaderboard_to_image(leaderboard) + basename = f"advent_{code}_{year}_{day}" + await interaction.edit_original_response( content=message, attachments=[ discord.File( - scoreboard_file, - filename=f"advent_{code}_{year}_{day}.txt", + io.BytesIO(scoreboard_text.encode('utf-8')), + filename=f"{basename}.txt", + ), + discord.File( + io.BytesIO(scoreboard_image), + filename=f"{basename}.png", ) ], ) diff --git a/uqcsbot/static/NotoSansMono-Regular.ttf b/uqcsbot/static/NotoSansMono-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c2bbb5a39435f859e049d6789e4592b281a1f3d0 GIT binary patch literal 405892 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%0AdI6u9GBmNGA$9m80nuP{8p5KWzX36h#x1) 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≤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 literal 0 HcmV?d00001 diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index 7d3ba168..fe25fa00 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -1,7 +1,14 @@ -from typing import Any, List, Literal, Dict, Optional, Callable +from typing import Any, DefaultDict, List, Literal, Dict, Optional, Callable, NamedTuple, Tuple +from collections import defaultdict from datetime import datetime, timedelta +from io import BytesIO from pytz import timezone +import PIL.Image +import PIL.ImageDraw +import PIL.ImageFont +import PIL.features + from uqcsbot.bot import UQCSBot from uqcsbot.models import AOCRegistrations @@ -15,6 +22,9 @@ Times = Dict[Star, Seconds] Delta = Optional[Seconds] Json = Dict[str, Any] +Colour = str +ColourFragment = NamedTuple("ColourFragment", [('text', str), ('colour', Colour)]) +Leaderboard = list[str | ColourFragment] # Puzzles are unlocked at midnight EST. EST_TIMEZONE = timezone("US/Eastern") @@ -22,6 +32,13 @@ # The time to cache results to limit requests to adventofcode.com. Note that 15 minutes is the recomended minimum time. CACHE_TIME = timedelta(minutes=15) +# Colours borrowed from adventofcode.com website +BG_COLOUR = '#0f0f23' +FG_COLOUR = '#cccccc' +HL_COLOUR = '#009900' +GOLD_COLOUR = '#ffff66' +SILVER_COLOUR = '#9999cc' + class InvalidHTTPSCode(Exception): def __init__(self, message: str, request_code: int): @@ -136,7 +153,10 @@ def _star_char(num_stars: int): Given a number of stars (0, 1, or 2), returns its leaderboard representation. """ - return " .*"[num_stars] + return ColourFragment( + " .*"[num_stars], + [FG_COLOUR, SILVER_COLOUR, GOLD_COLOUR][num_stars] + ) def _format_seconds(seconds: Optional[int]): @@ -164,9 +184,8 @@ def _format_seconds_long(seconds: Optional[int]): return f"{hours}:{minutes:02}:{seconds:02}" -def _get_member_star_progress_bar(member: Member): - return "".join(_star_char(len(member.times[day])) for day in ADVENT_DAYS) - +def _get_member_star_progress_bar(member: Member) -> Leaderboard: + return [_star_char(len(member.times[day])) for day in ADVENT_DAYS] class LeaderboardColumn: """ @@ -176,7 +195,7 @@ class LeaderboardColumn: def __init__( self, title: tuple[str, str], - calculation: Callable[[Member, int, Optional[Day]], str], + calculation: Callable[[Member, int, Optional[Day]], str | Leaderboard], ): self.title = title self.calculation = calculation @@ -188,7 +207,7 @@ def ordering_column(): """ return LeaderboardColumn( title=(" " * 4, " " * 4), # Empty spaces, as this does not need a heading - calculation=lambda _, index, __: f"{index:>3})", + calculation=lambda _, index, __: f"{index:>3})" ) @staticmethod @@ -297,13 +316,13 @@ def name_column(bot: UQCSBot): A column listing each name. """ - def format_name(member: Member, _: int, __: Optional[int]) -> str: + def format_name(member: Member, _: int, __: Optional[int]) -> Leaderboard: if not (discord_userid := member.get_discord_userid(bot)): - return member.name + return [member.name] if not (discord_user := bot.uqcs_server.get_member(discord_userid)): - return member.name + return [member.name] # Don't actually ping as leaderboard is called many times - return f"{member.name} (@{discord_user.display_name})" + return [ColourFragment(member.name, HL_COLOUR), f" (@{discord_user.display_name})"] return LeaderboardColumn(title=("", ""), calculation=format_name) @@ -365,6 +384,57 @@ def parse_leaderboard_column_string(s: str, bot: UQCSBot) -> List[LeaderboardCol columns.append(LeaderboardColumn.name_column(bot)) return columns +def render_leaderboard_to_text(leaderboard: Leaderboard) -> str: + return "".join(x if isinstance(x, str) else x.text for x in leaderboard) + +def _isolate_leaderboard_layers(leaderboard: Leaderboard) -> Tuple[str, Dict[Colour, str]]: + """ + Given a leaderboard made up of coloured fragments, split the + text into a number of layers. Each layer contains all the text + which is coloured by one particular colour. + + Returns: + - a string of the leaderboard, but with whitespace in the place of every character, + for calculating bounding box size. + - a dictionary mapping colours to the layer of that colour. + """ + layers: DefaultDict[str | None, str] = defaultdict(lambda: layers[None]) + layers[None] = '' + + for frag in leaderboard: + colour, text = (FG_COLOUR, frag) if isinstance(frag, str) else (frag.colour, frag.text) + layers[colour] += text + for k in layers: + if k == colour: continue + layers[k] += ''.join(c if c.isspace() else ' ' for c in text) + + + spaces = layers[None] + del layers[None] + return spaces, layers # type: ignore + +def render_leaderboard_to_image(leaderboard: Leaderboard) -> bytes: + spaces, layers = _isolate_leaderboard_layers(leaderboard) + + font = PIL.ImageFont.truetype('./uqcsbot/static/NotoSansMono-Regular.ttf', 20) + + img = PIL.Image.new('RGB', (1,1)) + draw = PIL.ImageDraw.Draw(img) + + PAD = 20 + # first, try to draw text to obtain required bounding box size + _, _, right, bottom = draw.textbbox((PAD,PAD), spaces, font=font) # type: ignore + + img = PIL.Image.new('RGB', (right+PAD, bottom+PAD), BG_COLOUR) + draw = PIL.ImageDraw.Draw(img) + + # draw each layer. layers should be disjoint + for colour, text in layers.items(): + draw.text((PAD, PAD), text, font=font, fill=colour) # type: ignore + + buf = BytesIO() + img.save(buf, format='PNG', optimize=True) + return buf.getvalue() # XXX: why do we need to getvalue()? def print_leaderboard( columns: List[LeaderboardColumn], members: List[Member], day: Optional[Day] @@ -372,15 +442,16 @@ def print_leaderboard( """ Returns a string of the leaderboard of the given format. """ - leaderboard = "".join(column.title[0] for column in columns) - leaderboard += "\n" - leaderboard += "".join(column.title[1] for column in columns) + header = "".join(column.title[0] for column in columns) + header += "\n" + header += "".join(column.title[1] for column in columns) + + leaderboard: Leaderboard = [ColourFragment(header, HL_COLOUR)] # Note that leaderboards start at 1, not 0 for id, member in enumerate(members, start=1): - leaderboard += "\n" - leaderboard += "".join( - column.calculation(member, id, day) for column in columns - ) + leaderboard.append("\n") + for column in columns: + leaderboard.extend(column.calculation(member, id, day)) return leaderboard From 12700d12379cf7f446263c70c7f8c7b610c31cb5 Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 17:59:58 +1000 Subject: [PATCH 02/12] black --- uqcsbot/advent.py | 4 +- uqcsbot/utils/advent_utils.py | 71 +++++++++++++++++++++++------------ 2 files changed, 48 insertions(+), 27 deletions(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index fc446e1f..7ff57c48 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -545,13 +545,13 @@ async def leaderboard_command( content=message, attachments=[ discord.File( - io.BytesIO(scoreboard_text.encode('utf-8')), + io.BytesIO(scoreboard_text.encode("utf-8")), filename=f"{basename}.txt", ), discord.File( io.BytesIO(scoreboard_image), filename=f"{basename}.png", - ) + ), ], ) diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index fe25fa00..5c9d0ab0 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -1,4 +1,14 @@ -from typing import Any, DefaultDict, List, Literal, Dict, Optional, Callable, NamedTuple, Tuple +from typing import ( + Any, + DefaultDict, + List, + Literal, + Dict, + Optional, + Callable, + NamedTuple, + Tuple, +) from collections import defaultdict from datetime import datetime, timedelta from io import BytesIO @@ -23,7 +33,7 @@ Delta = Optional[Seconds] Json = Dict[str, Any] Colour = str -ColourFragment = NamedTuple("ColourFragment", [('text', str), ('colour', Colour)]) +ColourFragment = NamedTuple("ColourFragment", [("text", str), ("colour", Colour)]) Leaderboard = list[str | ColourFragment] # Puzzles are unlocked at midnight EST. @@ -33,11 +43,11 @@ CACHE_TIME = timedelta(minutes=15) # Colours borrowed from adventofcode.com website -BG_COLOUR = '#0f0f23' -FG_COLOUR = '#cccccc' -HL_COLOUR = '#009900' -GOLD_COLOUR = '#ffff66' -SILVER_COLOUR = '#9999cc' +BG_COLOUR = "#0f0f23" +FG_COLOUR = "#cccccc" +HL_COLOUR = "#009900" +GOLD_COLOUR = "#ffff66" +SILVER_COLOUR = "#9999cc" class InvalidHTTPSCode(Exception): @@ -154,8 +164,7 @@ def _star_char(num_stars: int): representation. """ return ColourFragment( - " .*"[num_stars], - [FG_COLOUR, SILVER_COLOUR, GOLD_COLOUR][num_stars] + " .*"[num_stars], [FG_COLOUR, SILVER_COLOUR, GOLD_COLOUR][num_stars] ) @@ -187,6 +196,7 @@ def _format_seconds_long(seconds: Optional[int]): def _get_member_star_progress_bar(member: Member) -> Leaderboard: return [_star_char(len(member.times[day])) for day in ADVENT_DAYS] + class LeaderboardColumn: """ A column in a leaderboard. The title is the name of the column as 2 lines and the calculation is a function that determines what is printed for a given member, index and day. The title and calculation should have the same constant width. @@ -207,7 +217,7 @@ def ordering_column(): """ return LeaderboardColumn( title=(" " * 4, " " * 4), # Empty spaces, as this does not need a heading - calculation=lambda _, index, __: f"{index:>3})" + calculation=lambda _, index, __: f"{index:>3})", ) @staticmethod @@ -322,7 +332,10 @@ def format_name(member: Member, _: int, __: Optional[int]) -> Leaderboard: if not (discord_user := bot.uqcs_server.get_member(discord_userid)): return [member.name] # Don't actually ping as leaderboard is called many times - return [ColourFragment(member.name, HL_COLOUR), f" (@{discord_user.display_name})"] + return [ + ColourFragment(member.name, HL_COLOUR), + f" (@{discord_user.display_name})", + ] return LeaderboardColumn(title=("", ""), calculation=format_name) @@ -384,10 +397,14 @@ def parse_leaderboard_column_string(s: str, bot: UQCSBot) -> List[LeaderboardCol columns.append(LeaderboardColumn.name_column(bot)) return columns + def render_leaderboard_to_text(leaderboard: Leaderboard) -> str: return "".join(x if isinstance(x, str) else x.text for x in leaderboard) -def _isolate_leaderboard_layers(leaderboard: Leaderboard) -> Tuple[str, Dict[Colour, str]]: + +def _isolate_leaderboard_layers( + leaderboard: Leaderboard, +) -> Tuple[str, Dict[Colour, str]]: """ Given a leaderboard made up of coloured fragments, split the text into a number of layers. Each layer contains all the text @@ -399,42 +416,46 @@ def _isolate_leaderboard_layers(leaderboard: Leaderboard) -> Tuple[str, Dict[Col - a dictionary mapping colours to the layer of that colour. """ layers: DefaultDict[str | None, str] = defaultdict(lambda: layers[None]) - layers[None] = '' + layers[None] = "" for frag in leaderboard: - colour, text = (FG_COLOUR, frag) if isinstance(frag, str) else (frag.colour, frag.text) + colour, text = ( + (FG_COLOUR, frag) if isinstance(frag, str) else (frag.colour, frag.text) + ) layers[colour] += text for k in layers: - if k == colour: continue - layers[k] += ''.join(c if c.isspace() else ' ' for c in text) - + if k == colour: + continue + layers[k] += "".join(c if c.isspace() else " " for c in text) spaces = layers[None] del layers[None] - return spaces, layers # type: ignore + return spaces, layers # type: ignore + def render_leaderboard_to_image(leaderboard: Leaderboard) -> bytes: spaces, layers = _isolate_leaderboard_layers(leaderboard) - font = PIL.ImageFont.truetype('./uqcsbot/static/NotoSansMono-Regular.ttf', 20) + font = PIL.ImageFont.truetype("./uqcsbot/static/NotoSansMono-Regular.ttf", 20) - img = PIL.Image.new('RGB', (1,1)) + img = PIL.Image.new("RGB", (1, 1)) draw = PIL.ImageDraw.Draw(img) PAD = 20 # first, try to draw text to obtain required bounding box size - _, _, right, bottom = draw.textbbox((PAD,PAD), spaces, font=font) # type: ignore + _, _, right, bottom = draw.textbbox((PAD, PAD), spaces, font=font) # type: ignore - img = PIL.Image.new('RGB', (right+PAD, bottom+PAD), BG_COLOUR) + img = PIL.Image.new("RGB", (right + PAD, bottom + PAD), BG_COLOUR) draw = PIL.ImageDraw.Draw(img) # draw each layer. layers should be disjoint for colour, text in layers.items(): - draw.text((PAD, PAD), text, font=font, fill=colour) # type: ignore + draw.text((PAD, PAD), text, font=font, fill=colour) # type: ignore buf = BytesIO() - img.save(buf, format='PNG', optimize=True) - return buf.getvalue() # XXX: why do we need to getvalue()? + img.save(buf, format="PNG", optimize=True) + return buf.getvalue() # XXX: why do we need to getvalue()? + def print_leaderboard( columns: List[LeaderboardColumn], members: List[Member], day: Optional[Day] From 4c7561862af53a95aa491265ba81766262ab4a5c Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 18:02:38 +1000 Subject: [PATCH 03/12] fix type issue --- uqcsbot/utils/advent_utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index 5c9d0ab0..5cb2d703 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -445,7 +445,7 @@ def render_leaderboard_to_image(leaderboard: Leaderboard) -> bytes: # first, try to draw text to obtain required bounding box size _, _, right, bottom = draw.textbbox((PAD, PAD), spaces, font=font) # type: ignore - img = PIL.Image.new("RGB", (right + PAD, bottom + PAD), BG_COLOUR) + img = PIL.Image.new("RGB", (int(right) + PAD, int(bottom) + PAD), BG_COLOUR) draw = PIL.ImageDraw.Draw(img) # draw each layer. layers should be disjoint From 40fb1824caead28c90beedcd685080b7feade357 Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 19:42:49 +1000 Subject: [PATCH 04/12] use discord embeds and truncate by default --- uqcsbot/advent.py | 140 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 108 insertions(+), 32 deletions(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 7ff57c48..3136b263 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -2,7 +2,7 @@ import os from datetime import datetime from random import choices -from typing import Callable, Dict, Iterable, List, Optional, Literal +from typing import Any, Callable, Dict, Iterable, List, Optional, Literal import requests from requests.exceptions import RequestException @@ -20,6 +20,7 @@ InvalidHTTPSCode, ADVENT_DAYS, CACHE_TIME, + HL_COLOUR, parse_leaderboard_column_string, print_leaderboard, render_leaderboard_to_image, @@ -137,6 +138,109 @@ } +class LeaderboardView(discord.ui.View): + INITIAL_VISIBLE_ROWS = 20 + + def __init__( + self, + bot: UQCSBot, + code: int, + year: int, + day: Optional[Day], + members: list[Member], + leaderboard_style: str, + sortby: Optional[SortingMethod], + ): + super().__init__(timeout=300) + # constant within one embed + self.bot = bot + self.code = code + self.year = year + self.day = day + self.all_members = members + self.leaderboard_style = leaderboard_style + self.sortby = sortby + self.timestamp = datetime.now() + + # can be changed by interaction + self.visible_members = members[: self.INITIAL_VISIBLE_ROWS] + self.show_text = False + + @property + def is_truncated(self): + return len(self.visible_members) < len(self.all_members) + + def make_message_arguments(self) -> Dict[str, Any]: + view_url = LEADERBOARD_VIEW_URL.format(year=self.year, code=self.code) + + leaderboard = print_leaderboard( + parse_leaderboard_column_string(self.leaderboard_style, self.bot), + self.visible_members, + self.day, + ) + + title = ( + "Advent of Code UQCS Leaderboard" + if self.code == UQCS_LEADERBOARD + else f"Advent of Code Leaderboard `{self.code}`" + ) + title = f":star: {title} :trophy:" + if self.day: + title += f" \u2014 Day {self.day}" + + notes: List[str] = [] + if self.day: + notes.append(f"sorted by {self.sortby}") + if self.is_truncated: + notes.append(f"top {len(self.visible_members)} shown") + body = f"({", ".join(notes)})" if notes else "" + + basename = f"advent_{self.code}_{self.year}_{self.day}" + + embed = discord.Embed( + title=title, + url=view_url, + description=body, + colour=discord.Colour.from_str(HL_COLOUR), + timestamp=self.timestamp, + ) + + if not self.show_text: + scoreboard_image = render_leaderboard_to_image(leaderboard) + file = discord.File(io.BytesIO(scoreboard_image), basename + ".png") + embed.set_image(url=f"attachment://{file.filename}") + else: + scoreboard_text = render_leaderboard_to_text(leaderboard) + file = discord.File( + io.BytesIO(scoreboard_text.encode("utf-8")), basename + ".txt" + ) + + self.show_all_interaction.disabled = not self.is_truncated + self.get_text_interaction.label = ( + "Show as image" if self.show_text else "Show as text" + ) + + return { + "attachments": [file], + "embed": embed, + "view": self, + } + + @discord.ui.button(label="Show all", style=discord.ButtonStyle.gray) + async def show_all_interaction( + self, inter: discord.Interaction, btn: discord.ui.Button["LeaderboardView"] + ): + self.visible_members = self.all_members + await inter.response.edit_message(**self.make_message_arguments()) + + @discord.ui.button(label="Show text", style=discord.ButtonStyle.gray) + async def get_text_interaction( + self, inter: discord.Interaction, btn: discord.ui.Button["LeaderboardView"] + ): + self.show_text = not self.show_text + await inter.response.edit_message(**self.make_message_arguments()) + + class Advent(commands.Cog): """ All of the commands related to Advent of Code (AOC). @@ -505,13 +609,7 @@ async def leaderboard_command( ) return - if code == UQCS_LEADERBOARD: - message = ":star: *Advent of Code UQCS Leaderboard* :trophy:" - else: - message = f":star: *Advent of Code Leaderboard {code}* :trophy:" - if day: - message += f"\n:calendar: *Day {day}* (Sorted By {sortby})" members = [member for member in members if member.attempted_day(day)] members.sort(key=lambda m: sorting_functions_for_day[sortby](m, day)) else: @@ -522,38 +620,16 @@ async def leaderboard_command( ] members.sort(key=sorting_functions_for_month[sortby]) - view_url = LEADERBOARD_VIEW_URL.format(year=year, code=code) - message += f"\n{view_url}" - if not members: await interaction.edit_original_response( content="This leaderboard contains no people." ) return - leaderboard = print_leaderboard( - parse_leaderboard_column_string(leaderboard_style, self.bot), - members, - day, - ) - - scoreboard_text = render_leaderboard_to_text(leaderboard) - scoreboard_image = render_leaderboard_to_image(leaderboard) - basename = f"advent_{code}_{year}_{day}" - - await interaction.edit_original_response( - content=message, - attachments=[ - discord.File( - io.BytesIO(scoreboard_text.encode("utf-8")), - filename=f"{basename}.txt", - ), - discord.File( - io.BytesIO(scoreboard_image), - filename=f"{basename}.png", - ), - ], + view = LeaderboardView( + self.bot, code, year, day, members, leaderboard_style, sortby ) + await interaction.edit_original_response(**view.make_message_arguments()) @advent_command_group.command(name="register") @app_commands.describe( From 94e3f72f90d327c39d89e47075f57ed4541cae8b Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 19:45:23 +1000 Subject: [PATCH 05/12] fix quotes in f-string --- uqcsbot/advent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 3136b263..55a64922 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -193,7 +193,7 @@ def make_message_arguments(self) -> Dict[str, Any]: notes.append(f"sorted by {self.sortby}") if self.is_truncated: notes.append(f"top {len(self.visible_members)} shown") - body = f"({", ".join(notes)})" if notes else "" + body = f"({', '.join(notes)})" if notes else "" basename = f"advent_{self.code}_{self.year}_{self.day}" From 3b90c4564a0a3149b6f03f79dbcf8ff970f38272 Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 19:48:07 +1000 Subject: [PATCH 06/12] mention total number of rows in message --- uqcsbot/advent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 55a64922..2d319deb 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -192,7 +192,7 @@ def make_message_arguments(self) -> Dict[str, Any]: if self.day: notes.append(f"sorted by {self.sortby}") if self.is_truncated: - notes.append(f"top {len(self.visible_members)} shown") + notes.append(f"top {len(self.visible_members)} shown out of {len(self.all_members)}") body = f"({', '.join(notes)})" if notes else "" basename = f"advent_{self.code}_{self.year}_{self.day}" From 4e2fcadac3fb53c6e848c86f0cc8b46b562ece6e Mon Sep 17 00:00:00 2001 From: rina Date: Sat, 30 Nov 2024 19:51:57 +1000 Subject: [PATCH 07/12] black 2 --- uqcsbot/advent.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 2d319deb..67a8ecd4 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -192,7 +192,9 @@ def make_message_arguments(self) -> Dict[str, Any]: if self.day: notes.append(f"sorted by {self.sortby}") if self.is_truncated: - notes.append(f"top {len(self.visible_members)} shown out of {len(self.all_members)}") + notes.append( + f"top {len(self.visible_members)} shown out of {len(self.all_members)}" + ) body = f"({', '.join(notes)})" if notes else "" basename = f"advent_{self.code}_{self.year}_{self.day}" From 344c0f6f7c191cf2e3adc7d61c66528a1d3f3aa2 Mon Sep 17 00:00:00 2001 From: rina Date: Sun, 1 Dec 2024 11:14:21 +1000 Subject: [PATCH 08/12] address mrcat review comments - support show all <-> show less - add comment about font choice other things: - remove all buttons on timeout - send text file as a separate message, keeping image in original reponse - tweak some comments and rename print_leaderboard --- uqcsbot/advent.py | 81 +++++++++++++++++++++-------------- uqcsbot/utils/advent_utils.py | 16 ++++--- 2 files changed, 61 insertions(+), 36 deletions(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 67a8ecd4..08149819 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -14,6 +14,7 @@ from uqcsbot.models import AOCRegistrations, AOCWinners from uqcsbot.utils.err_log_utils import FatalErrorWithLog from uqcsbot.utils.advent_utils import ( + Leaderboard, Member, Day, Json, @@ -22,7 +23,7 @@ CACHE_TIME, HL_COLOUR, parse_leaderboard_column_string, - print_leaderboard, + build_leaderboard, render_leaderboard_to_image, render_leaderboard_to_text, ) @@ -139,11 +140,13 @@ class LeaderboardView(discord.ui.View): - INITIAL_VISIBLE_ROWS = 20 + TRUNCATED_COUNT = 20 + TIMEOUT = 180 # seconds def __init__( self, bot: UQCSBot, + inter: discord.Interaction, code: int, year: int, day: Optional[Day], @@ -151,9 +154,11 @@ def __init__( leaderboard_style: str, sortby: Optional[SortingMethod], ): - super().__init__(timeout=300) + super().__init__(timeout=self.TIMEOUT) + # constant within one embed self.bot = bot + self.inter = inter self.code = code self.year = year self.day = day @@ -161,24 +166,25 @@ def __init__( self.leaderboard_style = leaderboard_style self.sortby = sortby self.timestamp = datetime.now() + self.basename = f"advent_{self.code}_{self.year}_{self.day}" # can be changed by interaction - self.visible_members = members[: self.INITIAL_VISIBLE_ROWS] - self.show_text = False + self._visible_members = members[: self.TRUNCATED_COUNT] @property def is_truncated(self): - return len(self.visible_members) < len(self.all_members) + return len(self._visible_members) < len(self.all_members) - def make_message_arguments(self) -> Dict[str, Any]: - view_url = LEADERBOARD_VIEW_URL.format(year=self.year, code=self.code) - - leaderboard = print_leaderboard( + def _build_leaderboard(self, members: List[Member]) -> Leaderboard: + return build_leaderboard( parse_leaderboard_column_string(self.leaderboard_style, self.bot), - self.visible_members, + members, self.day, ) + def make_message_arguments(self) -> Dict[str, Any]: + view_url = LEADERBOARD_VIEW_URL.format(year=self.year, code=self.code) + title = ( "Advent of Code UQCS Leaderboard" if self.code == UQCS_LEADERBOARD @@ -193,12 +199,10 @@ def make_message_arguments(self) -> Dict[str, Any]: notes.append(f"sorted by {self.sortby}") if self.is_truncated: notes.append( - f"top {len(self.visible_members)} shown out of {len(self.all_members)}" + f"top {len(self._visible_members)} shown out of {len(self.all_members)}" ) body = f"({', '.join(notes)})" if notes else "" - basename = f"advent_{self.code}_{self.year}_{self.day}" - embed = discord.Embed( title=title, url=view_url, @@ -207,19 +211,16 @@ def make_message_arguments(self) -> Dict[str, Any]: timestamp=self.timestamp, ) - if not self.show_text: - scoreboard_image = render_leaderboard_to_image(leaderboard) - file = discord.File(io.BytesIO(scoreboard_image), basename + ".png") - embed.set_image(url=f"attachment://{file.filename}") - else: - scoreboard_text = render_leaderboard_to_text(leaderboard) - file = discord.File( - io.BytesIO(scoreboard_text.encode("utf-8")), basename + ".txt" - ) + leaderboard = self._build_leaderboard(self._visible_members) + scoreboard_image = render_leaderboard_to_image(leaderboard) + file = discord.File(io.BytesIO(scoreboard_image), self.basename + ".png") + embed.set_image(url=f"attachment://{file.filename}") - self.show_all_interaction.disabled = not self.is_truncated - self.get_text_interaction.label = ( - "Show as image" if self.show_text else "Show as text" + self.show_all_interaction.disabled = ( + len(self.all_members) <= self.TRUNCATED_COUNT + ) + self.show_all_interaction.label = ( + "Show all" if self.is_truncated else "Show less" ) return { @@ -232,15 +233,33 @@ def make_message_arguments(self) -> Dict[str, Any]: async def show_all_interaction( self, inter: discord.Interaction, btn: discord.ui.Button["LeaderboardView"] ): - self.visible_members = self.all_members + self._visible_members = ( + self.all_members + if self.is_truncated + else self.all_members[: self.TRUNCATED_COUNT] + ) await inter.response.edit_message(**self.make_message_arguments()) - @discord.ui.button(label="Show text", style=discord.ButtonStyle.gray) + @discord.ui.button(label="Export as text", style=discord.ButtonStyle.gray) async def get_text_interaction( self, inter: discord.Interaction, btn: discord.ui.Button["LeaderboardView"] ): - self.show_text = not self.show_text - await inter.response.edit_message(**self.make_message_arguments()) + """ + Sends the text leaderboard as a file attachment within a new reply. + """ + leaderboard = self._build_leaderboard(self.all_members) + text = render_leaderboard_to_text(leaderboard) + file = discord.File(io.BytesIO(text.encode("utf-8")), self.basename + ".txt") + await inter.response.send_message(file=file) + + btn.disabled = True + await self.inter.edit_original_response(view=self) + + async def on_timeout(self) -> None: + """ + Detach interactable view on timeout. + """ + await self.inter.edit_original_response(view=None) class Advent(commands.Cog): @@ -629,7 +648,7 @@ async def leaderboard_command( return view = LeaderboardView( - self.bot, code, year, day, members, leaderboard_style, sortby + self.bot, interaction, code, year, day, members, leaderboard_style, sortby ) await interaction.edit_original_response(**view.make_message_arguments()) diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index 5cb2d703..0bb35e13 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -8,6 +8,7 @@ Callable, NamedTuple, Tuple, + cast, ) from collections import defaultdict from datetime import datetime, timedelta @@ -43,6 +44,7 @@ CACHE_TIME = timedelta(minutes=15) # Colours borrowed from adventofcode.com website +# https://adventofcode.com/static/style.css BG_COLOUR = "#0f0f23" FG_COLOUR = "#cccccc" HL_COLOUR = "#009900" @@ -428,14 +430,17 @@ def _isolate_leaderboard_layers( continue layers[k] += "".join(c if c.isspace() else " " for c in text) - spaces = layers[None] - del layers[None] - return spaces, layers # type: ignore + spaces_str = layers.pop(None) + return spaces_str, cast(Dict[str, Any], layers) def render_leaderboard_to_image(leaderboard: Leaderboard) -> bytes: spaces, layers = _isolate_leaderboard_layers(leaderboard) + # NOTE: font choice should support as wide a range of glyphs as possible, + # since discord display names are arbitrary and pillow does not support + # fallback fonts. + # font must also be monospace, in order for the colour layers to be aligned. font = PIL.ImageFont.truetype("./uqcsbot/static/NotoSansMono-Regular.ttf", 20) img = PIL.Image.new("RGB", (1, 1)) @@ -457,11 +462,12 @@ def render_leaderboard_to_image(leaderboard: Leaderboard) -> bytes: return buf.getvalue() # XXX: why do we need to getvalue()? -def print_leaderboard( +def build_leaderboard( columns: List[LeaderboardColumn], members: List[Member], day: Optional[Day] ): """ - Returns a string of the leaderboard of the given format. + Returns a leaderboard made up of fragments, with the given column configuration + and member rows. """ header = "".join(column.title[0] for column in columns) header += "\n" From 5e169399485c246d208a560e470745db4cd1caf8 Mon Sep 17 00:00:00 2001 From: rina Date: Sun, 1 Dec 2024 14:54:05 +1000 Subject: [PATCH 09/12] slightly improve register messages still not ephemeral, because it's probably useful to see if people are having problems with the command. --- uqcsbot/advent.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 08149819..5efa603d 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -669,7 +669,10 @@ async def register_command(self, interaction: discord.Interaction, aoc_name: str members = self._get_members(year) if aoc_name not in [member.name for member in members]: await interaction.edit_original_response( - content=f"Could not find the Advent of Code name `{aoc_name}` within the UQCS leaderboard." + content=( + f"Could not find the Advent of Code name `{aoc_name}` within the UQCS leaderboard. Make sure your name appears at: " + + LEADERBOARD_VIEW_URL.format(code=UQCS_LEADERBOARD, year=year) + ) ) return member = [member for member in members if member.name == aoc_name] @@ -687,13 +690,17 @@ async def register_command(self, interaction: discord.Interaction, aoc_name: str ) if query is not None: discord_user = self.bot.uqcs_server.get_member(query.discord_userid) + is_self = False if discord_user: discord_ping = discord_user.mention + is_self = discord_user.id == interaction.user.id else: discord_ping = f"someone who doesn't seem to be in the server (discord id = {query.discord_userid})" - await interaction.edit_original_response( - content=f"Advent of Code name `{aoc_name}` is already registered to {discord_ping}. Please contact committee if this is your Advent of Code name." - ) + if not is_self: + message = f"Advent of Code name `{aoc_name}` is already registered to {discord_ping}. Please contact committee if this is your Advent of Code name." + else: + message = f"Advent of Code name `{aoc_name}` is already registered to you ({discord_ping})! Please contact committee if this is incorrect." + await interaction.edit_original_response(content=message) return discord_id = interaction.user.id From 91b7d261336db808171227bfc7a86f297191ea41 Mon Sep 17 00:00:00 2001 From: rina Date: Sun, 1 Dec 2024 14:56:21 +1000 Subject: [PATCH 10/12] update help since registrations persist across years. --- uqcsbot/advent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uqcsbot/advent.py b/uqcsbot/advent.py index 5efa603d..a7119346 100644 --- a/uqcsbot/advent.py +++ b/uqcsbot/advent.py @@ -531,7 +531,7 @@ async def help_command( case "register": await interaction.response.send_message( """ -`/advent register` links an Advent of Code account and a discord user so that you are eligble for prizes. Each Advent of Code account and discord account can only be linked to one other account each year. Note that registrations last for only the current year. If you are having any issues with this, message committee to help. +`/advent register` links an Advent of Code account and a discord user so that you are eligble for prizes. Each Advent of Code account and discord account can only be linked to one other account. Registrations persist across years. If you are having any issues with this, message committee to help. """ ) case "register-force": From 1fd826d90ab9bfb285fdb83a51a28ccb271ecd04 Mon Sep 17 00:00:00 2001 From: rina Date: Sun, 1 Dec 2024 16:19:01 +1000 Subject: [PATCH 11/12] fix old bugs: 4 minute offset and total star2 time previously, total star2 time was actually the total time, and total time was double counting. --- uqcsbot/utils/advent_utils.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index 0bb35e13..8df4a44d 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -94,14 +94,17 @@ def from_member_data(cls, data: Json, year: int) -> "Member": day = int(d) times = member.times[day] - # timestamp of puzzle unlock, rounded to whole seconds - DAY_START = int(datetime(year, 12, day, tzinfo=EST_TIMEZONE).timestamp()) + # timestamp of puzzle unlock (12AM EST) + DAY_START = EST_TIMEZONE.localize(datetime(year, 12, day)) for s, star_data in day_data.items(): star = int(s) # assert is for type checking assert star == 1 or star == 2 - times[star] = int(star_data["get_star_ts"]) - DAY_START + ts = datetime.fromtimestamp( + float(star_data["get_star_ts"]), tz=EST_TIMEZONE + ) + times[star] = int((ts - DAY_START).total_seconds()) assert times[star] >= 0 return member @@ -133,7 +136,7 @@ def get_total_star2_time(self, default: int = 0) -> int: Returns the total time working on just star 2 for all challenges in a year. The argument default determines the returned value if the total is 0. """ - total = sum(self.times[day].get(2, 0) for day in ADVENT_DAYS) + total = sum(self.get_time_delta(day) or 0 for day in ADVENT_DAYS) return total if total != 0 else default def get_total_time(self, default: int = 0) -> int: From 1c5eadc5b3ff94456b964ed472c7e3115c103203 Mon Sep 17 00:00:00 2001 From: rina Date: Sun, 1 Dec 2024 18:26:33 +1000 Subject: [PATCH 12/12] use zoneinfo + tzdata pytz stays around because of dependencies. tzdata was also already transitively-required. --- poetry.lock | 14 +++++++------- pyproject.toml | 2 +- uqcsbot/utils/advent_utils.py | 6 +++--- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/poetry.lock b/poetry.lock index bbd4948c..b9c4d2e0 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1109,13 +1109,13 @@ cli = ["click (>=5.0)"] [[package]] name = "pytz" -version = "2023.4" +version = "2024.2" description = "World timezone definitions, modern and historical" optional = false python-versions = "*" files = [ - {file = "pytz-2023.4-py2.py3-none-any.whl", hash = "sha256:f90ef520d95e7c46951105338d918664ebfd6f1d995bd7d153127ce90efafa6a"}, - {file = "pytz-2023.4.tar.gz", hash = "sha256:31d4583c4ed539cd037956140d695e42c033a19e984bfce9964a3f7d59bc2b40"}, + {file = "pytz-2024.2-py2.py3-none-any.whl", hash = "sha256:31c7c1817eb7fae7ca4b8c7ee50c72f93aa2dd863de768e1ef4245d426aa0725"}, + {file = "pytz-2024.2.tar.gz", hash = "sha256:2aa355083c50a0f93fa581709deac0c9ad65cca8a9e9beac660adcbd493c798a"}, ] [[package]] @@ -1410,13 +1410,13 @@ files = [ [[package]] name = "tzdata" -version = "2024.1" +version = "2024.2" description = "Provider of IANA time zone data" optional = false python-versions = ">=2" files = [ - {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, - {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, + {file = "tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd"}, + {file = "tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc"}, ] [[package]] @@ -1559,4 +1559,4 @@ multidict = ">=4.0" [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "f33c7718be64a92e29e505e7eb5b9e81a0798f8f39dace72f84a5252929de461" +content-hash = "16927096e101f554ba000dca244fff62dbb5d70a4f99e21dd5cee3c6323823bd" diff --git a/pyproject.toml b/pyproject.toml index 1696ed98..b2c691e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,7 +10,6 @@ python = "^3.10" "discord.py" = "^2.3.2" icalendar = "^5.0" "python-dateutil" = "^2.9" -pytz = "^2023.3" requests = "^2.31" beautifulsoup4 = "^4.12" APScheduler = "^3.10" @@ -21,6 +20,7 @@ aio-mc-rcon = "^3.2.0" PyYAML = "^6.0" mcstatus = "^11.1.0" pillow = "^11.0.0" +tzdata = "*" [tool.poetry.scripts] botdev = "dev.cli:main" diff --git a/uqcsbot/utils/advent_utils.py b/uqcsbot/utils/advent_utils.py index 8df4a44d..a7d294b3 100644 --- a/uqcsbot/utils/advent_utils.py +++ b/uqcsbot/utils/advent_utils.py @@ -12,8 +12,8 @@ ) from collections import defaultdict from datetime import datetime, timedelta +from zoneinfo import ZoneInfo from io import BytesIO -from pytz import timezone import PIL.Image import PIL.ImageDraw @@ -38,7 +38,7 @@ Leaderboard = list[str | ColourFragment] # Puzzles are unlocked at midnight EST. -EST_TIMEZONE = timezone("US/Eastern") +EST_TIMEZONE = ZoneInfo("America/New_York") # The time to cache results to limit requests to adventofcode.com. Note that 15 minutes is the recomended minimum time. CACHE_TIME = timedelta(minutes=15) @@ -95,7 +95,7 @@ def from_member_data(cls, data: Json, year: int) -> "Member": times = member.times[day] # timestamp of puzzle unlock (12AM EST) - DAY_START = EST_TIMEZONE.localize(datetime(year, 12, day)) + DAY_START = datetime(year, 12, day, tzinfo=EST_TIMEZONE) for s, star_data in day_data.items(): star = int(s)