GitHub Actions run 22366460714 failed.
#dev-log
1 messages ยท Page 32 of 1
Connected!
GitHub Actions run 22366452640 succeeded.
GitHub Actions run 22366711214 failed.
GitHub Actions run 22366958626 succeeded.
GitHub Actions run 22366910121 succeeded.
GitHub Actions run 22367158717 succeeded.
GitHub Actions run 22367158986 succeeded.
GitHub Actions run 22367112154 succeeded.
GitHub Actions run 22367338360 succeeded.
Can you add a copy of the OFL license that Roboto is licensed under to this PR?
You can add it to a new LICENSE-THIRD-PARTY file similar to the one we have on bot:
https://github.com/python-discord/bot/blob/main/LICENSE-THIRD-PARTY
GitHub Actions run 22367292886 succeeded.
GitHub Actions run 22367584272 was cancelled.
Can you fix the trailing whitespace error that is being pointed out by the linter? Otherwise this looks good to go.
GitHub Actions run 22367634542 succeeded.
GitHub Actions run 22367854627 succeeded.
Can you add a copy of the OFL license that Roboto is licensed under to this PR?
You can add it to a new
LICENSE-THIRD-PARTYfile similar to the one we have on bot:https://github.com/python-discord/bot/blob/main/LICENSE-THIRD-PARTY
@jb3 I honestly don't remember where I got that font file from so would it be fine to just add the Google Fonts OFL? https://github.com/googlefonts/roboto-3-classic/blob/main/OFL.txt
I don't know where else I could get it from
Yep that seems fine :shipit:
Connected!
GitHub Actions run 22368447149 succeeded.
Connected!
I am not an expert on this but my understanding is that catching asyncio cancellation errors is rarely the correct thing to do. It's easy to get it wrong. What's the reason we're catching this?
j is not a good name for a variable
GitHub Actions run 22368534775 was cancelled.
Connected!
GitHub Actions run 22368609317 succeeded.
GitHub Actions run 22368766277 succeeded.
GitHub Actions run 22368817295 succeeded.
GitHub Actions run 22368915817 succeeded.
Connected!
GitHub Actions run 22368893221 succeeded.
GitHub Actions run 22368995878 failed.
Connected!
GitHub Actions run 22369011256 succeeded.
GitHub Actions run 22369119593 was cancelled.
Connected!
GitHub Actions run 22369152084 succeeded.
GitHub Actions run 22369215759 succeeded.
Connected!
GitHub Actions run 22369610624 succeeded.
GitHub Actions run 22369997200 succeeded.
GitHub Actions run 22370149000 succeeded.
What's wrong with using getattr()? ๐
Sorry, haven't done much Python in a while. What would you suggest I use? I use getattr() in a few other places as well.
It's more verbose and worse for static code analysis (refactoring, linting, type checking, etc). In this case there doesn't seem to be a reason to do it when self.cog.wait_task would work. The attribute is guaranteed to be defined since it's set in __init__.
b3a4013 [smart_eval] Detect use of input - Soheab
9c7bc48 Add a task to automatically create AoC spoilers... - mbaruh
36efc13 Merge pull request #173 from python-discord/aoc... - mbaruh
44d3728 Code jam role removal (#139) - swfarnsworth
1c1d4f4 Merge pull request #147 from Soheab/patch-1 - jchristgit
GitHub Actions run 22379989901 succeeded.
GitHub Actions run 22380291252 succeeded.
@Diabolical5777 and @GiovanePS, are either of you still interested in taking on this issue? If not, I would like to take it. Let me know. Thanks!
GitHub Actions run 22384269089 failed.
Relevant Issues
Description
Did you:
- [ ] Join the Python Discord Community?
- [ ] Read all the comments in this template?
- [ ] Ensure there is an issue open, or link relevant discord discussions?
- [ ] Read and agree to the contributing guidelines?
GitHub Actions run 22404977497 failed.
Hello, my friend @chenniebenniebingbang, and I would like to take a stab at this. Could you please assign me ๐
Maybe the stats command should be instead !github_stats, as the features described in the issue are currently GitHub-specific, while a !stats command would be more ambiguous?
We're working on addressing this issue in our fork by implementing two things:
(1) centralized extension load error detection that wraps Bot.load_extension() in try/except to catch and track failures that currently occur silently in async tasks, and
(2) Retry + exponential backoff logic implemented in each affected cogโs cog_load() (filters, superstarify, reminders, python_news) to handle temporary site/API unavailability. If retries are exhausted, the filters cog sends a moderator ...
yea that's probably fine. maybe !github-stats instead of !github_stats
though.
On Thu, Feb 26, 2026 at 4:07โฏAM Oskar Nurm @.***> wrote:
oskarnurm left a comment (python-discord/sir-lancebot#1724)
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3965164958Maybe the stats command should be instead !github_stats, as the features
described in the issue are currently GitHub-specific, while a !stats
command would be more ambiguous?...
GitHub Actions run 22451717813 succeeded.
We already have a .github / .gh command, this should be a subcommand of that (e.g. .gh stats/.github stats).
GitHub Actions run 22453848201 failed.
yup agree
On Thu, Feb 26, 2026 at 12:21โฏPM Joe Banks @.***> wrote:
jb3 left a comment (python-discord/sir-lancebot#1724)
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3968047354We already have a .github / .gh command, this should be a subcommand of
that (e.g. .gh stats/.github stats).โ
Reply to this email directly, view it on GitHub
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3968047354,
or ...
GitHub Actions run 22460136141 failed.
Holding off from this. Based on the way the changelog looks, and the fact these are all big new features, I am led to believe this was vibecoded, and I don't think we really need those features right now. There also appears to be a regression causing deadlocks thanks to the new control interface.
That said, it would be nice if gunicorn would get some love again, so let's hope :-)
@dependabot ignore this major version
Hi @Anuradha-Agrawal-07. Are you still interested in working on this?
Description
I would like to add tests for the gh-stats command we are implementing with this issue: #1724
Reasoning
Given that implementing tests is out of scope for this given repo, this would be purely for academic purposes, so we can practise writing tests. Permission was given by the lovely Discord.
Proposed Implementation
The tests are aimed to be pretty simple, with no or minimal mocking required. Can add more details once I have a better idea of how to implement.
#...
Does anyone have a good idea on how to implement the count for New contributors? This seems pretty difficult at the moment, as there is no real endpoint for it, and I can't think of a clever way to solve this without making tons of api calls ๐ค
isn't there a sor param? If so you can use that.
On Thu, Feb 26, 2026 at 6:14โฏPM Oskar Nurm @.***> wrote:
oskarnurm left a comment (python-discord/sir-lancebot#1724)
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3969788536Does anyone have a good idea on how to implement the count for New
contributors? This seems pretty difficult at the moment, as there is no
real endpoint for it, and I can't think of a clever way to solve this
wit...
@oskarnurm if it doesn't seem feasible then we can drop that requirement to display new contributors.
It should be afaik.
Define the time range: Determine the START_DATE and END_DATE for the last month.
Fetch all commits: Use the GET /repos/{owner}/{repo}/commits endpoint to retrieve all commits for the repository. You will need to handle pagination to ensure you get all data. You can use the since and until parameters to filter commits within your time range, but this only limits the results, it doesn't confirm if it was the user's first commit ever.
GET https://api.github.com{owner}/{repo...
import discord
from discord.ext import commands, tasks
from datetime import datetime, time
from zoneinfo import ZoneInfo
import json
import os
================= CONFIG =================
TOKEN = "TON_TOKEN_ICI"
CHANNEL_ID = 123456789012345678 # Remplace par ton salon
ROLE_HG = "H.G"
TIMEZONE = ZoneInfo("Europe/Paris")
STATS_FILE = "stats.json" # fichier de sauvegarde
==========================================
intents = discord.Intents.default()
intents.message_content = True
intents.re...
Thanks, @DragonSenseiGuy, I will look into it.
Do you think the repo argument should be limited to only Python Discord bots, or can it accept any valid GitHub repository? So I can feed it say torvalds/linux and it would work.
GitHub Actions run 22483304400 succeeded.
GitHub Actions run 22485751311 succeeded.
Hi!
We are making good progress on the issue, and will try have PR ready soon.
Would you be able to assign us to the issue?
Our usernames are:
@daDevBoat
@JannisHaeffner
@arpega75
@knasssss
@djonte
I can't assign anyone else; their names don't appear. In any case assigning one of you gets the point across.
I don't see an issue with accepting any repo as other commands allow that I
believe.
On Fri, Feb 27, 2026 at 3:34โฏAM Oskar Nurm @.***> wrote:
oskarnurm left a comment (python-discord/sir-lancebot#1724)
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3971543230Thanks, @DragonSenseiGuy https://github.com/DragonSenseiGuy, I will
look into it.Do you think the repo argument should be limited to only Python Discord
bots, or can it ...
Hi! Me and my friends want to implement the !voiceban command in this issue! could you please assign me?
GitHub Actions run 22494813457 succeeded.
Let's confirm whether this feature is still needed before proceeding
Process the commits: For each commit within the time frame, note the author (GitHub username or email).
For each unique author, you need to check their entire contribution history to see if they made any contributions before your START_DATE.
Please do not do this, this is so horrendously inefficient.
We can drop this feature, it would be insane to go check the 1.4 million commits on something like torvalds/linux.
We need to be realistic about what is a feature and what is blatant abuse...
Oh yea that was an oversight ๐
On Fri, Feb 27, 2026 at 12:10โฏPM Joe Banks @.***> wrote:
jb3 left a comment (python-discord/sir-lancebot#1724)
https://github.com/python-discord/sir-lancebot/issues/1724#issuecomment-3974062172Process the commits: For each commit within the time frame, note the
author (GitHub username or email).
For each unique author, you need to check their entire contribution
history to see if they made any contributions before your START_...
Description
While working on #1724, we discovered that the githubinfo passive listener incorrectly triggers on GitHub issue references inside inline code blocks, provided the code block does not start at the beginning of a line.
Steps to Reproduce
Send the message "I am looking at python-discord/bot#123 right now"
Expected Behaviour
Should not trigger the bot's passive listener.
Actual Behaviour
Incorrectly triggers the bot to fetch the issue.
Known Impacted Platf...
Approved. Ready for work.
Implemented and broadcasting propaganda.
We do not want to deploy our git repository state via Flux to get the latest and greatest changes synchronized live to our cluster anymore.
You are a hater. You will lose.
Relevant Issues
Closes #1724
Fixes #1728
Description
Added the subcommand stats to the existing command .github.
The statscommand will take the arguments where the date is formatted YY-MM-DD and repo follows the username/name format. The bot will then fetch and display GitHub stats for the given repo over the specified timeframe.
Example:
Did you:
- [x] Join the Python Discord Community?
- [x] Re...
GitHub Actions run 22522462108 succeeded.
@ammaralzeno sure thing, assigned you
Relevant Issues
Closes #627
Description
This PR implements the Global Leaderboard feature (Issue #627). It creates a unified scoring system across all fun and holiday games in the bot.
The persistent global scores are stored in Leaderboard.points_cache (a RedisCache with namespace "leaderboard:points"), which maintains user totals indefinitely across all games. The daily point tracking uses raw Redis keys with the pattern leaderboard:daily:{user_id}:{game_name}, each wi...
GitHub Actions run 22525522076 failed.
GitHub Actions run 22525601799 failed.
GitHub Actions run 22525655591 succeeded.
GitHub Actions run 22526720264 succeeded.
GitHub Actions run 22527720150 succeeded.
This looks like a slow linear search to me. Could it be optimized, such as by caching the leaderboard?
Also, are you sure you want to break ties arbitrarily?
Should this display the actual number of points earned (in case it was clamped)?
Does this really need to be an additional message in addition to the 2 in L160-163?
I think you've made some good progress so far. However, I have given you some feedback.
This message wasn't introduced in this PR, we only added the points to it. It was there before so I don't think it's necessary to change that now
This is a very good point, thanks for pointing it out. I think i will need to fix this for all games
GitHub Actions run 22544133924 failed.
Modified add_points to return the earned points, and now all games will showcase that instead.
GitHub Actions run 22544248178 succeeded.
@MarkKoz
We have noticed that all other games under bot\exts\fun\ have all their logic, chat interface integration etc. in a single file.
I read through the style guide but could not find any specific comments about this. Currently, we have 3 files that are seperated between chat integration, game logic and board parsing. It is prefered that we merge all of these into a single file or is it ok to keep them seperated as 3 files?
We will adhere to whatever practice is used in this project, we...
This question will be easier to answer during code review. Sometimes it makes sense to split up files. Most of the features here aren't across multiple files probably because they're simple enough.
That makes sense. Then we will keep it as 3 files for now and if it is prefered that we change that in the code review then we will of course do so!
GitHub Actions run 22544946329 succeeded.
The tie handling is fixed now where ties share the same rank.
As for optimization, we're now passing the leaderboard as an optional parameter to avoid fetching + sorting twice. The linear search is still O(n), but the duplicate fetch + sort was the heavier operation to begin with. I don't think there is much else to be optimized here without overcomplicating it
what
Summary
This PR improves bot startup reliability and moderator visibility when extensions/cogs fail to load.
- Aggregate extension + cog load failures during startup and report them as a single alert in
#mod-log. - Add retry + exponential backoff for cogs that depend on external sites/APIs (e.g., temporary 5xx/429/timeouts), with clear mod notifications on final failure.
- Add unit tests to validate retry behavior, error classification, and startup reporting.
During ...
GitHub Actions run 22547119052 succeeded.
Merged in cc61f54168f933467e0c228c855a4d9ae4bcca13.
Merged in 09f596bbe4360034e5254d09d3da8b3df05eff57.
Merged in 2f88a1900b0a3edc5d7ed12b636cb537e1a38a7f.
[python-discord/infra] branch deleted: terrible
Feedback comments left.
Please also revert the linting changes you've made to the repository, none of the linting tools we use should've raised errors providing you are using the versions we specify in our pyproject.toml and are using uv & ruff is picking up our configuration correctly.
Do not use integer returns for errors, raise an exception.
Same comment here about constraining action via typing.Literal, also raise an exception instead of returning 0.
This method should raise an Exception if a status code is encountered that is not 200.
This exception can be different for a ratelimit response which you may choose to handle differently (i.e. not pass through to Sentry), but this should definitely not use integers to signify status codes, it is not Pythonic.
You can use typing.Literal to constraint the state parameter. Also, I'd consider renaming state to something like action since state is already a property of issues signifying ...
All of your date parsing logic can be replaced using the ISODateTime converter from python-discord/bot. This needs to be PR'd to https://github.com/python-discord/bot-core
Once you PR I can merge and cut a new release including this feature. This saves you from needing to do as much custom parsing and validation, makes the interface for users better and uses native discord.py functionality to do this parsing.
If you have an error, abort and handle it.
Instead of passing headers around (considering it is just REQUEST_HEADERS + 1 key), instead use:
async with self.bot.http_session.get(url, headers={**REQUEST_HEADERS, "Accept": "vnd.github.star+json"}, params=params) as response:
e6fdd85 Replace Month enum with builtin calendar.Month ... - lemonyte
[python-discord/sir-robin] branch deleted: upgrade-to-builtin-month
Connected!
GitHub Actions run 22550896911 succeeded.
Hi, after speaking with a few Moderators we feel this is no longer a priority issue and functionality we want, most moderation action that would've required this can just be handled via other infraction types we already have.
Doc item doc_item.symbol_id='thread-safety-dict' present in loaded documentation inventories not found on site, inventories may need to be refreshed.
This should be made a generic utility and moved to a separate file for all backoff-compatible cogs to use.
Move both to constants and reference the constants.
This should ping Moderators.
I would probably break here instead of return.
Move to constants and use them instead of named variables.
Should be moved and made generic, this method is clearly copied anyway since it still references filter lists in the docstring.
Use properly named variables.
All in all, looks really solid! I have a few improvement suggestions, but in general the design is sound, the implementation is sound, and the Python Discord Hive Mind is satisfied with your offering.
As with the snakes quiz, we should place "snakes_and_ladders" in a module-level constant, presumably next to the SNAKES_AND_LADDERS_WIN_POINTS.
We are always passing in the points from the global, when would this be None? I think it would be cleaner to just always call add_points, no?
I don't think we should pass in the game here, especially given that it's already known. Perhaps we should make it a module-level constant and just use it here without any arguments?
I'm going to stop commenting regarding the game name, you know what to do ๐
Smart implementation with the set here!
The other games talk about "pts", this one it's "global pts" - is there a difference?
I think it would be cleaner here to set winner = response.author, then below Well done {winner.mention} for getting it right! and using winner.id in the add_points function?
GitHub Actions run 22552210079 succeeded.
Thank you @jb3 for the extensive review. I apologize for the headache with the linting. Turns out I was wrong to trust ruff to pick up the pyproject.toml. We will look into fixing the other comments ASAP!
Alternatively:
headers = REQUEST_HEADERS | {"Accept": "vnd.github.star+json"}
async with self.bot.http_session.get(url, headers=headers, params=params) as response:
GitHub Actions run 22566138446 succeeded.
GitHub Actions run 22566191961 succeeded.
GitHub Actions run 22567030333 succeeded.
Co-authors
Co-authored-by: JannisHaeffner
Co-authored-by: djonte
Co-authored by: arpega75
Co-authored by: knasssss
Relevant Issues
Closes #989
Description
Implement a mathdoku game, in the style proposed by the issue.
The Mathdoku feature is implemented as a subsystem across three modules with clear separation of responsibilities.
1. Game Logic (mathdoku.py)
This module contains the core game model:
- Cell: stores coordinates (row, column...
GitHub Actions run 22574609060 failed.
Co-authors
Co-authored-by: JannisHaeffner
Co-authored-by: djonte
Co-authored by: arpega75
Co-authored by: knasssss
Relevant Issues
Closes #989
Description
Implement a mathdoku game, in the style proposed by the issue.
The Mathdoku feature is implemented as a subsystem across three modules with clear separation of responsibilities.
1. Game Logic (mathdoku.py)
This module contains the core game model:
- Cell: stores coordinates (row, column...
[python-discord/sir-lancebot] Checks Successful on PR: #1732 feat: Add Mathdoku game to Sir Lancebot
GitHub Actions run 22575045023 succeeded.
GitHub Actions run 22577252047 succeeded.
[python-discord/forms-backend] Checks Successful on PR: #296 Update dependency sentry-sdk to v2.53.0
GitHub Actions run 22585614184 succeeded.
GitHub Actions run 22586386614 succeeded.
GitHub Actions run 22586855351 succeeded.
GitHub Actions run 22587160260 failed.
GitHub Actions run 22587535541 succeeded.
GitHub Actions run 22588803839 succeeded.
Added SNAKE_QUIZ_GAME_NAME as a module-level constant and removed the game parameter!
Added *_GAME_NAME module-level constant to all 14 games
GitHub Actions run 22597367786 succeeded.
Hi, Thank you for mentioning it.
Initially we alerted mods directly via the individual cogs call. However, later when we refactored to centralize the process during the startup period, we missed to refactor it.
This unused method is removed
When there is any failure in startup process, including the cog load. Now it is all collected directly by StartupFailureReporter in startup_reporting.py, and it mentions the moderator when reporting the error
Thank you for your suggestion,
We have fixed this issue!
Thank you for the suggestion!
We have fixed this issue!
Hi,
Since a successful fetch means cog_load() is finished after self.fetch_new_media.start(), so we thought return would be a good fit to exit the whoel function instead of breaking a loop.
If you think this doesn't fit the patch-style or the convention, we can update it in next commit.
Hi, we have moved the constants to the respective file
GitHub Actions run 22599857757 succeeded.
Hi, Thank you for your suggestion.
We have now added new file in utility for this retry mechanism and is reflected across the code
Hi thank you for your suggestion,
The method is now made generic in utils and called accordingly.
GitHub Actions run 22600582218 succeeded.
Hi, Thank you for bringing this up.
And yes, since we all divided the work in our fork and started to implement the shared logic, it ended up having such issues.
I have now fixed it to maintain the consistency
Hi,
This issue has been fixed!
Hi, thank you for mentioning it,
we have fixed this one too
Hi Thank you for mentioning this,
I have moved this one to it's respective test file to follow the structure, following from the utility in main.
Hi, thank you for mentioning it
We have fixed this issue, bot.py no longer uses contextvars or _content_extensions at all.
Hi @jb3 , Thank you so much for bringing out the suggestions. We have followed your guidance and implemented the refactor to most of it. Could you please review it once again in your free time?
Thank you so much
GitHub Actions run 22622147915 succeeded.
GitHub Actions run 22622629011 succeeded.
We'll default all of them to just "pts", there was a slight misunderstanding
Agreed, winner now set to response.author
Refactored the "me" command to just invoke leaderboard_user with user=ctx.author instead
GitHub Actions run 22623205551 succeeded.
Agreed, simplified it now
It's now a tuple in the top of the module and we use the length of it for scores
This was a mistake, I missed it when changing all points in all games. Fixed now
GitHub Actions run 22623511654 failed.
POINTS_CACHE now a global variable
Yeah, this intentionally prevents the bot from earning points.
The leaderboard is meant for user competition, so restricting scoring to members keeps it fair and meaningful and prevents skewing the rankings over time.
GitHub Actions run 22628068419 succeeded.
GitHub Actions run 22666210959 succeeded.
GitHub Actions run 22668832408 failed.
When opened in mobile view, the More dropdown button is already expanded, leading to confusing user experience as the user expects to click on the more to do something.
It needs to be a dropdown menu just as it is in the desktop version.
I'm not exactly sure what you mean by this, if you mean the hamburger menu in the top right then I can't reproduce, when I visit the front page on mobile this menu is collapsed and expands when I click the hamburger/three lines.
GitHub Actions run 22669688439 succeeded.
When the user clicks on the link to the privacy page, it redirects them to this link:
[https://www.notion.so/pythondiscord/Python-Discord-Privacy-ee2581fea4854ddcb1ebc06c1dbb9fbd]
but this link redirects again to:
[https://pythondiscord.notion.site/Python-Discord-Privacy-ee2581fea4854ddcb1ebc06c1dbb9fbd]
so what actually ends up happening is the user is experiences two redirects, which not only looks awful, as we cause a visible navigation flicker, but also causes unnecessary network hop....
Sure,
<img width="496" height="552" alt="Image" src="https://github.com/user-attachments/assets/2916d0c1-1294-4013-9e33-8f15a8a7dd30" />
This is the More menu inside the navbar, in desktop mode, the default behavior is that its collapsed, but the mobile function has the default function set to expand. We cannot collapse the menu also. So we should either remove the 'more' link, as it served only as a placeholder for a collapsible menu, or we should default it to collapsed to make it more i...
GitHub Actions run 22679052946 succeeded.
Thanks for reporting.
About the navigation flicker, that's an issue on Notion's side, not ours. The redirects I can get behind, but I wonder if there's any reason to link to /pythondiscord/ instead of the subdomain at all?
Would you like to submit a fix?
GitHub Actions run 22688462399 succeeded.
GitHub Actions run 22690178606 succeeded.
GitHub Actions run 22691231184 succeeded.
Motivation
Currently, the ISODateTime converter is localized to the main python-discord/bot repository. During the development of the .gh stats feature in sir-lancebot (python-discord/sir-lancebot#1729), it was requested that this converter be migrated to bot-core so it can be utilized across the wider ecosystem.
Summary of Changes
- Extracted the
ISODateTimeconverter class frombot/exts/utilities/converter.py - Placed the class and its required imports (`dateuti...
Awesome!
Just the linting items that got picked up (unused ctx argument & import block sorting) & this looks good.
One minor nitpick, I think I prefer it being converters.py rather than converter.py.
Otherwise, great stuff!
[python-discord/bot-core] New branch created: feat/add-ISODateTime-converter
064069d feat: migrate ISODateTime converter from python... - oskarnurm
b427a65 fix: rename file to converters and fix linter... - oskarnurm
35a64b2 build: add python-dateutil dependency for ISO... - oskarnurm
1f33a9f chore: bump sphinx dependencies - jb3
113afa0 fix: add error protection on linkcode module lo... - jb3
[python-discord/bot-core] branch deleted: feat/add-ISODateTime-converter
064069d feat: migrate ISODateTime converter from python... - oskarnurm
b427a65 fix: rename file to converters and fix linter... - oskarnurm
35a64b2 build: add python-dateutil dependency for ISO... - oskarnurm
1f33a9f chore: bump sphinx dependencies - jb3
113afa0 fix: add error protection on linkcode module lo... - jb3
866ec2f Deploying to docs from @ python-discord/bot-cor... - jb3
8f555be Deploying to docs from @ python-discord/bot-cor... - jb3
[python-discord/bot-core] New tag created: v11.9.0
1339ce5 Deploying to docs from @ python-discord/bot-cor... - jb3
I see that jb3 has closed this issue, however, if possible I would like to submit a fix. I understand that the navigation flicker is on notions side, but another navigation flicker is caused because notion redirects them to the other page. if we eliminate the middle man, and we directly redirect them to the final link. I hope I am making sense.
The issue was closed by my fix. See the close status is reported as "completed".
You can see the fix in https://github.com/python-discord/site/commit/ba4235b738a31499939b00f9078a0637c68380ec.
GitHub Actions run 22704432416 succeeded.
GitHub Actions run 22714524395 succeeded.
GitHub Actions run 22717345998 succeeded.
GitHub Actions run 22724126905 succeeded.
Hey @jb3, I think I have resolved all the issues now. Hopefully didn't miss anything.
Key changes:
- Raising errors instead of returning integers using custom
GithubAPIErrorandStargazersLimitError - Refactored date parsing with
ISODateTime - Refactored
github_statswith try-catch error handling - Bumped
pydis_coreto 11.9.0, alsopydanticas a dependency (let me know how you want to handle this) - Refactored
get_stars_gainedwith a helper methodget_date_with_cache
Hi maintainers, I was recently using CDT to check the overall performance of the website and noticed an unusually high CLS.
as you can see, the score is a
Problem: The CLS of the website is extremely high. Please view the attached screen shot to verify.
Why this happened: The CLS is calculated by google when layout of the content shifts unintentionally after the render is complete. This happens because:
- The wave animation in the desktop version in the home page are causing shift in the layout because its using viewport as a unit of measurement. The wave-hero element has a height of 32vw. The viewport changes dynamically as the s...
GitHub Actions run 22733536878 succeeded.
GitHub Actions run 22741850291 failed.
[python-discord/site] New branch created: nedbat/if-name-main
[python-discord/bot] New branch created: nedbat/if-name-main
A page for the new shorter embed to link to.
A shorter embed (the old one is a full screen). Links to https://github.com/python-discord/site/pull/1596
I'd be happy to work on this and open a PR if that's okay.
GitHub Actions run 22751091045 succeeded.
Doc item doc_item.symbol_id='discord.CategoryChannel.category' present in loaded documentation inventories not found on site, inventories may need to be refreshed.
GitHub Actions run 22761376168 succeeded.
GitHub Actions run 22761380749 succeeded.
GitHub Actions run 22762956624 succeeded.
That's a good idea. I was looking for other resources and didn't find this one.
GitHub Actions run 22763618152 succeeded.
GitHub Actions run 22763887298 succeeded.
Connected!
GitHub Actions run 22764451862 succeeded.
GitHub Actions run 22764688086 succeeded.
GitHub Actions run 22764838775 succeeded.
[python-discord/king-arthur] Checks Successful on PR: #351 Bump docker/build-push-action from 6 to 7
GitHub Actions run 22772567053 succeeded.
GitHub Actions run 22772571435 succeeded.
Sure, thanks! I assigned you, let me know if you need help.
Looks good! Some minor finishing touches, then we can :shipit:!
self.bot, self.player_inactive.id, CONNECT_FOUR_WIN_POINTS, CONNECT_FOUR_GAME_NAME
Isn't this call kind of redundant? We could just return 0 here, I think.
We should also add a cog_unload method that sets leaderboard.POINTS_CACHE back to its uninitialized value now.
Overall, I think you've made significant progress on this PR. Still, I think these minor changes could make it even better.
If winner is None (if the player does not win), accessing winner.id will raise an AttributeError. Consider changing it to if winner is not None:
Will the exception raised by returning False (as Discord.py will internally raise a CheckFailure) be handled properly here?
Why are you intentionally preventing adding negative points?
Should this send another confirmatory message, or is disabling the view (your original design choice) confirmation enough of the leaderboard's clearing?
Summary
Fixed the wave animations on the home page, reducing the CLS score to near zero. The screenshot below was taken from the local development environment. This improvement was achieved by changing the animation method from margin-based to transform-based animation.
![Wave animation after fix]
Description of changes
- Updated wave animation to use
transform: translateX()instead of animatingmargin-left, preventing layout recalculation and reducing CLS. - Adjusted overf...
GitHub Actions run 22813806204 failed.
This places a starting point for Guix experiments on Turing. At present,
it configures the following things on Turing:
- SSH
- nginx with
certbot - PostgreSQL
- nftables blocking everything but SSH
It serves to test out fully declarative deployments and in no point aims
to replace our Ansible setup. This commit is purely proposed for merge
to enable collaboration.
Is it possible to get docs for how to deploy changes from on the host? We can't get packaged Guix for any of the systems that DevOps team members actively use (macOS, Debian, Windows) so if we want to collaborate on this we probably need to do it from on turing itself.
Sure! I'll write some docs tomorrow.
FWIW, the Debian packaging fell out because Guix didn't make a new release in a while, that was fixed this year with a new release process and the 1.5.0 release. So in the medium term, the package should make its way back there. For the short term, there's the shellscript (which you already used).
GitHub Actions run 22853958634 succeeded.
GitHub Actions run 22857188675 succeeded.
What's the change here? (Lack of) trailing newline?
GitHub Actions run 22870305627 succeeded.
I used the web gui to change it, that may be the cause.
I've changed the commit to resolve this.
Add new tag learn-python.md for resources that are often recommended to people just starting out. There are many people looking for resources, often asking for: Youtube, free courses or other learning materials.
The tag content is currently copy pasted as-is from the discord server and needs modifications.
Having a dedicated tag would:
- Give easy access to the commonly recommended resources
- Make it easier to share the specific resources, without necessarily linking to !resources ...
GitHub Actions run 22872344220 succeeded.
Is it possible to get docs for how to deploy changes from on the host? We can't get packaged Guix for any of the systems that DevOps team members actively use (macOS, Debian, Windows) so if we want to collaborate on this we probably need to do it from on turing itself.
I think https://cs50.harvard.edu/python/ is the correct link for CS50P, available for free and without the need to create an account.
GitHub Actions run 22893280287 succeeded.
GitHub Actions run 22896921419 succeeded.
Can you remove the .ai file? That type of file doesn't do well when git-tracked and the SVG should be enough.
If we want we can post it in a discord channel for archival reasons or store it in our events folder in GDrive.
Otherwise, fantastic work! I love it.
GitHub Actions run 22897085633 succeeded.
GitHub Actions run 22897122675 succeeded.
GitHub Actions run 22897434147 succeeded.
4dab890 Bump discord.py to 2.7.1 - jb3
df85730 Version 11.9.1 - jb3
[python-discord/bot-core] New tag created: v11.9.1
89844de Deploying to docs from @ python-discord/bot-cor... - jb3
GitHub Actions run 22968705981 succeeded.
GitHub Actions run 22968709609 succeeded.
GitHub Actions run 22968725706 succeeded.
[python-discord/bot-core] New tag created: v11.9.2
[python-discord/bot-core] tag deleted: v11.9.2
ed37660 Deploying to docs from @ python-discord/bot-cor... - jb3
[python-discord/bot-core] New tag created: v11.9.2
e1d8323 Deploying to docs from @ python-discord/bot-cor... - jb3
GitHub Actions run 22969136542 succeeded.
GitHub Actions run 22969156231 succeeded.
GitHub Actions run 22969174920 succeeded.
5e3b27d Refactor Guix deployment into separate module - jchristgit
[python-discord/infra] branch deleted: guix
[python-discord/infra] New branch created: guix-sops
This allows us to deploy secrets without making them publicly accessible
in the store.
All described in the title
GitHub Actions run 22980038382 succeeded.
GitHub Actions run 22980804309 succeeded.
GitHub Actions run 23004569131 succeeded.
GitHub Actions run 23004663630 succeeded.
Done! Added cog_unload that resets POINTS_CACHE
GitHub Actions run 23005115883 succeeded.
That's true, will change to just return 0
GitHub Actions run 23005262622 succeeded.
Yes, this is handled properly. The CheckFailure that discord.py raises internally doesn't cause issues because we already responded to the interaction, so there is no unhandled interaction error. The unauthorized user sees the message and the button callback just doesn't execute.
GitHub Actions run 23005590380 succeeded.
Fixed to if winner is not None
Well none of the games give any penalties, etc. It's all only positive points on win. And also we do have a remove_points function, this can be used instead for corrections/penalties in the future.
The confirmation message is being sent at interaction.response.send_message("Leaderboard has been cleared.") so we are doing both for confirmation.
GitHub Actions run 23018873032 succeeded.
GitHub Actions run 23031213888 failed.
GitHub Actions run 23048439582 succeeded.
GitHub Actions run 23062372846 succeeded.
GitHub Actions run 23063381829 succeeded.
GitHub Actions run 23070496064 succeeded.
GitHub Actions run 23091748752 succeeded.
GitHub Actions run 23135482128 succeeded.
Connected!
GitHub Actions run 23136982882 succeeded.
GitHub Actions run 23137049497 succeeded.
Connected!
GitHub Actions run 23137098713 succeeded.
[python-discord/forms-backend] Checks Successful on PR: #296 Update dependency sentry-sdk to v2.54.0
GitHub Actions run 23207753444 succeeded.
Thank you for getting this done! I think the embed can be slightly re-worded, mostly for consistency. This is what I'm thinking, you are welcome to take what you like and leave everything else. Feel free to open this as a proper PR once you think it's in a good spot.
---
embed:
title: Resources to Learn Python
aliases: ["learn", "start", "beginner", "slorb"]
Here are the top free resources we recommend for people who are new to programming:
* [Automate the Boring Stuff]...
Hey!
Thanks for the update, that version is looking a lot cleaner! I'll be keeping the original title, but content-wise this looks really nice. I'll apply these changes and try to make this ready for review by tomorrow. Thanks!
GitHub Actions run 23236496681 succeeded.
GitHub Actions run 23236787968 failed.
GitHub Actions run 23236925752 failed.
GitHub Actions run 23237052510 succeeded.
Thanks for putting together this tag and doing this PR!
Connected!
GitHub Actions run 23260715399 succeeded.
GitHub Actions run 23268241741 succeeded.
GitHub Actions run 23315991866 failed.
Connected!
GitHub Actions run 23383609857 succeeded.
Connected!
Connected!
Connected!
Final part (deployment from Git) added in f41ad20b2997f5f286e0917eb0d97ac366955f3a
smtpd_sender_login_maps does not actually help us here, it explicitly does not stop From: address spoofing.
From the documentation:
Note: to enforce that the From: header address matches the envelope sender (MAIL FROM) address, use an external filter such as a Milter, for the submission or submissions (formerly called smtps ) services. For example: https://github.com/magcks/milterfrom.
What we can maybe do is use https://github.com/mvonbuelow/milterfrom which compares the envelope ...
Connected!
Connected!
Connected!
Connected!
Connected!
GitHub Actions run 23392007396 succeeded.
5222e66 Only deliver moderation alerts to the mod team - jchristgit
[python-discord/infra] New branch created: mod-team-alerts-only-to-devops
The DevOps team does not concern itself with the problems of the chat
platform's moderator team.
145b77c Add instructions to use channels via lockfile - jchristgit
- Pin channels
- Add instructions to use channels via lockfile
Chris I'm going to fucking cut you up and feed you to the pigs
๐
๐
[python-discord/infra] New branch created: turing-improvements
- Initial guix-sops configuration
- Pin channels
- Add instructions to use channels via lockfile
- Authorize jc's second archive key
- Clean up imports
- Enable fail2ban for sshd on turing
- Use unprivileged guix-daemon
[python-discord/forms-backend] Checks Successful on PR: #296 Update dependency sentry-sdk to v2.55.0
GitHub Actions run 23493026863 succeeded.
Summary
This PR improves bot startup reliability and moderator visibility when extensions/cogs fail to load.
- Aggregate extension + cog load failures during startup and report them as a single alert in
#mod-log. - Add retry + exponential backoff for cogs that depend on external sites/APIs (e.g., temporary 5xx/429/timeouts), with clear mod notifications on final failure.
- Add unit tests to validate retry behavior, error classification, and startup reporting.
During ...
GitHub Actions run 23493856707 succeeded.
Hello @jb3,
I have opened another PR to keep the things clean. The earlier PR had referenced some commits including reports, which was the part of our assignment but not of this project. This new PR doesn't include any commits refrencing the reports or anything else that's unnecessary to this project.
All the suggestions from the previous PR are adapted in this PR too.
Apologies for delay update from our side.
Checking back in on this. The refactor to transform: translateX() successfully eliminated the 2.46 CLS on the home page in local testing. Happy to adjust the 'TO-DO' items if that's a blocker for the merge!"
GitHub Actions run 23508041011 failed.
GitHub Actions run 23508343189 succeeded.
GitHub Actions run 23508502899 succeeded.
GitHub Actions run 23510296580 succeeded.
Thanks for the PR. I've not tried it out yet but it seems like the linting CI is failing due to trailing whitespace.
Could you undo the formatting changes? They make the git diff less clear and are not consistent with the rest of the file.
GitHub Actions run 23579722793 succeeded.
GitHub Actions run 23597317535 succeeded.
GitHub Actions run 23599047070 succeeded.
GitHub Actions run 23606154317 succeeded.
GitHub Actions run 23609534662 succeeded.
As discussed, this will be implemented on turing to trial out Guix.
agents.pydis.wtf is our internal DevOps tool. We need to deploy it on turing.
turing LOVES data! We need to back it up to it.
We should probably set up a WireGuard tunnel between lovelace and turing first.
Dead man's monitoring. We should likely also cluster alertmanager.
Right now the /etc/nftables IP whitelist on lovelace is only refreshed on
deployment. This is suboptimal, since worst case our resources may get
scheduled on a new node that is not whitelisted in the firewall.
The ideal solution would involve as little manual work as possible. nftables
has an include directive: we could write a timer / cronjob to update a
nftables file containing only the LKE ip addresses, which is then included
in our Ansible-managed main nftables.conf. We would h...
To synchronize Discord roles with GitHub, we need a way to associate GitHub
users with our Discord members. Utilize the existing LDAP infrastructure for
this, and expand LDAP to accept a GitHub user ID field, intended to be used by
King Arthur The Terrible.
[python-discord/king-arthur] New branch created: update-things
We need a new command that allows users to link their GitHub account with their
Discord account.
When a user uses this command, DevOps should be asked to approve it. If DevOps
approves this, King Arthur stores the GitHub account ID of the associated user
ID in LDAP (see python-discord/infra#639).
GitHub Actions run 23615432016 succeeded.
ea41ffb BUmp uv to 0.11 in dockerfile - ChrisLovering
Similar to #357, the people want a way to unlink their GitHub account from their
Discord account. No DevOps approval is needed, unless Bella tries to use the
command.
GitHub Actions run 23615484760 succeeded.
Follow-up to #357: when a user links accounts together, give them the roles that
they deserve on GitHub.
Blocked by python-discord/infra#498.
GitHub Actions run 23615568084 succeeded.
Chris is still alive, and this is ready for review. Great news to start 2026 with!
[python-discord/king-arthur] branch deleted: update-things
GitHub Actions run 23615884538 succeeded.
def1799 Bump actions/deploy-pages from 4 to 5 - dependabot[bot]
9b9b416 Bump azure/setup-kubectl from 4.0.1 to 5.0.0 - dependabot[bot]
@copilot, you know what this means.
12ec119 Bump dorny/paths-filter from 3 to 4 - dependabot[bot]
f2f654e Prevent httpd from dying on logrotate reloads - jchristgit
Chris said good to merge.
Doc item doc_item.symbol_id='' present in loaded documentation inventories not found on site, inventories may need to be refreshed.
Doc item doc_item.symbol_id='' present in loaded documentation inventories not found on site, inventories may need to be refreshed.
GitHub Actions run 23697740173 succeeded.
GitHub Actions run 23746019210 succeeded.
37f227d Levels: Wordle (2 pts for success, -1 point for... - L3viathan
9400fd2 Levels: funny numbers, Python (Monty) - L3viathan
Adds in the new Role Level System for beta testing.
- New
Levelscog - Directory with different rules/criteria for how a user gains points
- README.md in that directory explains how to format the rules/criteria
- Adds initial rules to use
GitHub Actions run 23824521790 failed.
GitHub Actions run 23825200524 succeeded.
Don't know if it matters, but better to make the wildcard quantifier at the end lazy so it doesn't capture the emojis.
Probably doesn't matter but does this and others need to be inside a group?
No idea, I just copied that over from the existing rules.
dc5cc8a Levels: make quantifier lazy - Jonathan Oberlรคnder
GitHub Actions run 23836437090 succeeded.
Connected!
GitHub Actions run 23837860682 succeeded.
236e757 Bugfix: variable hadn't been renamed everywhere - Jonathan Oberlรคnder
[python-discord/sir-robin] New branch created: levels_bugfix
GitHub Actions run 23838318700 succeeded.
Connected!
GitHub Actions run 23838585154 succeeded.
Connected!
b49d5c0 Comment out setup() of games cog - L3viathan
[python-discord/sir-robin] New branch created: games_disable
The games cog is causing crashes right now, probably because someone deleted one or all of the team roles.
GitHub Actions run 23849169206 succeeded.
Let's try and fix it, looks low risk to me.
1ae985a Comment out setup() of games cog (#177) - L3viathan
[python-discord/sir-robin] branch deleted: games_disable
Connected!
GitHub Actions run 23851077120 succeeded.
Connected!
[python-discord/sir-robin] New branch created: games_remove
b49d5c0 Comment out setup() of games cog - L3viathan
GitHub Actions run 23851294033 succeeded.
Connected!
GitHub Actions run 23851368468 succeeded.
[python-discord/sir-robin] New branch created: levels_start_sync
6531a62 Bugfix: some_task.start() shall not be awaited - L3viathan
92b3567 Bugfix: some_task.start() shall not be awaited ... - L3viathan
[python-discord/sir-robin] branch deleted: levels_start_sync
GitHub Actions run 23852024439 succeeded.
Connected!
GitHub Actions run 23852051206 succeeded.
[python-discord/sir-robin] New branch created: levels_trigger_fix
73946f3 levels: Bugfix, active_*_rule_triggers should c... - L3viathan
GitHub Actions run 23852361206 succeeded.
Thank you for the quick work on this Lev.
acf7ef0 levels: Bugfix, active_*_rule_triggers should c... - L3viathan
[python-discord/sir-robin] branch deleted: levels_trigger_fix
Connected!
GitHub Actions run 23852539482 succeeded.
[python-discord/sir-robin] New branch created: levels_multi_rule
Also added some more monty python specific triggers
GitHub Actions run 23854233981 succeeded.
I think we just want
total_points = -5
here, otherwise spamming still helps, just slightly less.
(or perhaps even total_points = min(-total_points, 0).)
GitHub Actions run 23854708043 succeeded.
Role privileges should not be human-only
GitHub Actions run 23860047931 succeeded.
Add rules for [import] antigravity, PEP 401 (barry_as_FLUFL future), and Guido van Rossum.
GitHub Actions run 23860690698 succeeded.
GitHub Actions run 23862050079 succeeded.
Description
The math trivia section of the bot has a question that states "What is the natural log of -1 (use i for imaginary number)?", whose valid answers are pi*i, pii, ฯi. However, the bot does not accept ipi, which is a valid answer to this question.
Steps to Reproduce
- Use the
.trivia mathcommand - Wait for the question which states "What is the natural log of -1 (use i for imaginary number)?"
- Answer "ipi"
Expected Behaviour
The bot correctly identifies "ipi" as ...
64adc60 Fix fencepost in threshold calc - camcaswell
[python-discord/sir-robin] New branch created: fencepost_fix
Top threshold was 1 * len
GitHub Actions run 23862925570 succeeded.
GitHub Actions run 23863192859 succeeded.
GitHub Actions run 23863319468 succeeded.
Connected!
GitHub Actions run 23863296112 was cancelled.
GitHub Actions run 23863378027 succeeded.
Connected!
GitHub Actions run 23863358949 succeeded.
1309611 Levels: add more python language things to pyth... - thatbirdguythatuknownot
Connected!
GitHub Actions run 23863675294 succeeded.
[python-discord/sir-robin] New branch created: add_commands
points_editcommand to directly edit a user's pointsrole_resetcommand to reset a user's 'levels' role
GitHub Actions run 23864414024 succeeded.
wouldn't they just get the highest role this meet back next time they hit a rule?
nitpick: It's not clear from the var name + docstring that point_edit is a diff to apply, rather than the number of points to set it to.
GitHub Actions run 23865460634 succeeded.
Updated docstring to more clearly indicate that the point value given in the command is an offset, not a new total.
Yes, updated and refactored to re-use _update_role_assignment
GitHub Actions run 23865646482 succeeded.
[python-discord/sir-robin] branch deleted: add_commands
d9c8534 Bump the ci-dependencies group across 1 directo... - dependabot[bot]
GitHub Actions run 23865777303 was cancelled.
Connected!
GitHub Actions run 23865786272 succeeded.
[python-discord/sir-robin] New branch created: chris/_update_role_assignment-updates
GitHub Actions run 23867035541 succeeded.
Excellent work as always.
c959e6d Update role assignment logic (#186) - ChrisLovering
[python-discord/sir-robin] branch deleted: chris/_update_role_assignment-updates
Connected!
GitHub Actions run 23867150705 succeeded.
7e60ca5 Add anti-active rule - janine9vn
[python-discord/sir-robin] New branch created: add-anti-active-rule-functionality
An anti-active rule is one that a user should strive to not trigger while it is "anti-active".
If it is triggered, it will halve the user's points.
GitHub Actions run 23867705673 failed.
GitHub Actions run 23867842318 succeeded.
Connected!
GitHub Actions run 23867897567 succeeded.
[python-discord/sir-robin] New branch created: fix/levels-cog-improvements
53df08f fix: correct mismatched rules_anti_active attri... - ChrisLovering
73dfb51 perf: compute all_message_rule_triggers once in... - ChrisLovering
45d36fa fix: derive fallback thresholds from LEVEL_ROLE... - ChrisLovering
8c2846a fix: only log levels cache init when cache was ... - ChrisLovering
1273897 fix: guard _update_role_assignment against None... - ChrisLovering
GitHub Actions run 23869235592 succeeded.
GitHub Actions run 23870043494 succeeded.
[sir-robin] Branch fix/levels-cog-improvements was force-pushed to `4c71834`
GitHub Actions run 23870680832 succeeded.
[sir-robin] Branch fix/levels-cog-improvements was force-pushed to `b276b54`
GitHub Actions run 23870721908 succeeded.
This user_id-cache check should still occur first. I still want to award points to a user who is not yet in the cache if they've hit rules, even if they've hit rules in an order which nets them 0 points.
To double check my understanding of dpy, it will coerce/convert a user ID into a member object because of this type hint, right?
GitHub Actions run 23874412354 succeeded.
GitHub Actions run 23874828869 succeeded.
correct, it's part of the Member convertor
87f971f Revert "fix: hoist zero-point early return in _... - ChrisLovering
Ah alright, didn't realise we'd want a -point insert here. Reverted the commit
GitHub Actions run 23875068413 succeeded.
GitHub Actions run 23884696045 succeeded.
There is consensus for adding cban again as an alias, without touching other commands (clban, cpban). So this ticket is obsolete.
1d937e3 Bump the ci-dependencies group with 5 updates (... - dependabot[bot]
c8eaad3 fix(levels): bug fixes, type safety, and perfor... - ChrisLovering
[python-discord/sir-robin] branch deleted: fix/levels-cog-improvements
GitHub Actions run 23945405586 was cancelled.
GitHub Actions run 23945430065 failed.
GitHub Actions run 23945430065 succeeded.
Connected!
GitHub Actions run 23945416011 succeeded.
d041047 Bump aiohttp from 3.13.3 to 3.13.4 (#360) - dependabot[bot]
08ee6d1 Bump aiohttp from 3.13.3 to 3.13.4 (#1737) - dependabot[bot]
Connected!
a1d01a1 Bump docker/setup-buildx-action from 3 to 4 (#1... - dependabot[bot]
9a4f997 Bump docker/login-action from 3 to 4 (#1733) - dependabot[bot]
GitHub Actions run 23945521593 succeeded.
GitHub Actions run 23945497173 succeeded.
GitHub Actions run 23945539316 was cancelled.
e8f508d Bump pygments from 2.19.2 to 2.20.0 (#194) - dependabot[bot]
5657c35 Bump urllib3 from 2.5.0 to 2.6.3 (#193) - dependabot[bot]
b3e1f26 Bump filelock from 3.20.0 to 3.20.3 (#191) - dependabot[bot]
07d8c86 Bump actions/configure-pages from 5 to 6 - dependabot[bot]
Connected!
GitHub Actions run 23945564993 was cancelled.
d5aef8e Bump cryptography from 46.0.5 to 46.0.6 (#1603) - dependabot[bot]
5e8a39b Bump requests from 2.32.4 to 2.33.0 (#1602) - dependabot[bot]
GitHub Actions run 23945546068 succeeded.
GitHub Actions run 23945586967 was cancelled.
GitHub Actions run 23945589440 succeeded.
Connected!
GitHub Actions run 23945612100 succeeded.
GitHub Actions run 23945571192 succeeded.
GitHub Actions run 23945591898 was cancelled.
20b9a4b Bump virtualenv from 20.35.4 to 20.36.1 (#192) - dependabot[bot]
88d8e7b Merge pull request #3476 from python-discord/de... - dependabot[bot]
ccdf239 Bump docker/setup-buildx-action from 3 to 4 (#3... - dependabot[bot]
540e7be Bump actions/upload-artifact from 5 to 7 (#3469) - dependabot[bot]
GitHub Actions run 23945632974 was cancelled.
8b384b2 Bump docker/login-action from 3 to 4 (#3472) - dependabot[bot]
d5d055a Bump docker/setup-buildx-action from 3 to 4 (#1... - dependabot[bot]
GitHub Actions run 23945659289 was cancelled.
Connected!
GitHub Actions run 23945663995 succeeded.
GitHub Actions run 23945669064 was cancelled.
GitHub Actions run 23945641581 succeeded.
GitHub Actions run 23945674522 was cancelled.
GitHub Actions run 23945670353 succeeded.
Connected!
GitHub Actions run 23945681570 succeeded.
GitHub Actions run 23945691673 succeeded.
GitHub Actions run 23945746688 succeeded.
GitHub Actions run 23945766682 succeeded.
GitHub Actions run 23945764686 was cancelled.
GitHub Actions run 23945794289 succeeded.
Connected!
GitHub Actions run 23945784056 succeeded.
We don't use to_dict(), nor to_json() whihc are the only breaking changes other than droppping 3.9 support
6be8e19 Bump deepdiff from 8.6.1 to 9.0.0 (#3483) - dependabot[bot]
Connected!
GitHub Actions run 23945855760 succeeded.
Connected!
GitHub Actions run 23945944201 was cancelled.
Connected!
GitHub Actions run 23945950437 succeeded.
70cf617 Allow certain roles to run AoC commands in Nove... - mbaruh
[python-discord/sir-robin] branch deleted: month-check-for-specific-roles
Connected!
GitHub Actions run 23953338626 succeeded.
6545161 Skip archiving single file upload - ChrisLovering
7f343b2 Bump actions/upload-artifact from 6 to 7 (#1589) - dependabot[bot]
GitHub Actions run 23953437793 succeeded.
abe6db8 Bump gunicorn from 23.0.0 to 24.1.1 (#1590) - dependabot[bot]
Marking as draft until CI failures are fixed
GitHub Actions run 23953609089 succeeded.
<img width="600" height="450" alt="image" src="https://github.com/user-attachments/assets/26cc791b-60b8-4beb-a10b-08e3f8fd2827" />
[python-discord/infra] New branch created: jb3/638/automate-lke-ip-whitelisting
[python-discord/infra] branch deleted: jb3/638/automate-lke-ip-whitelisting
GitHub Actions run 23958985494 succeeded.
GitHub Actions run 23959955346 succeeded.
