GitHub Actions run 8412138900 succeeded.
#dev-log
1 messages ยท Page 21 of 1
edff2a8 Bump dev deps to latest - ChrisLovering
4b09c30 Ensure project root is on sys path before impor... - ChrisLovering
301d15c Lint repo with new ruff rules - ChrisLovering
578b221 Remove the requirement for <3.12 for fakeredis - ChrisLovering
7a3d134 Add changelog entry for fakeredis 3.12 support - ChrisLovering
[python-discord/bot-core] New branch created: bump-deps
This will be bumped to 11.1.0 when https://github.com/python-discord/bot-core/pull/211 is merged & released.
What does this change mean?
When running poetry run task docs on Python 3.12 without this change, it errors saying that it couldn't import docs.
I noticed we were adding the project root to the path further down anyway so just moved it up.
It's just what ruff auto-corrected it to. Just a bracket would probably work too, but I found this more readable.
[python-discord/bot] New branch created: remove-helpcog-dm-features
GitHub Actions run 8412612238 succeeded.
Isn't this going to cancel itself or does the scheduler remove the ID before running the task? Do we need an asyncio.shield?
While waiting for this, will the cog still be able to handle events or is the cog not considered ready yet? There are two concerns:
- If this takes a long time, then we may miss events
- If the cog does handle events during this, then are there any race conditions where multiple tasks may get scheduled for the same post?
[python-discord/bot] New review comment on pull request #2839: Support editing of timeout durations.
Imperative mood is our prevailing style.
"""Notify moderators about a timeout duration being capped."""
[python-discord/bot] New review comment on pull request #2839: Support editing of timeout durations.
"""Cap a duration to Discord's limit."""
Shouldn't this be an instance attribute? Maybe this is fine if the instance is not re-used, but it's not clear this class's instances are not intended to be re-used nor would we have a good way to enforce that.
This view isn't inherently only for bans - it looks like it could work with any infraction if we wanted it to. I think this name could be more generic.
Also, should this be moved to its own module (e.g. a module for all-things views) - are we putting too much stuff into "utils"?
Good place to use the typing.override decorator
https://docs.python.org/3/library/typing.html#typing.override
Thoughts on refactoring this whole if block into its own function? This apply_ban function is growing large.
d4b8d34 Support issues closed as not-planned in GitHub ... - hedyhli
[python-discord/sir-lancebot] New branch created: feat/issue-state-icon
Closes #999.
Currently waiting on someone in the emoji server with the required perms I so can put in the emoji ID for :IssueNotPLanned:.
GitHub Actions run 8415199746 succeeded.
GitHub Actions run 8415965341 failed.
GitHub Actions run 8416446748 succeeded.
GitHub Actions run 8420177944 succeeded.
GitHub Actions run 8420187386 succeeded.
GitHub Actions run 8420202004 succeeded.
Connected!
Connected!
GitHub Actions run 8421419783 succeeded.
Connected!
GitHub Actions run 8421556415 succeeded.
Connected!
Connected!
1b5e71b Bump ruff from 0.3.3 to 0.3.4 - dependabot[bot]
57e6246 Merge pull request #1267 from python-discord/de... - shtlrs
ee113d5 Removed inactive users from CODEOWNERS - Xithrius
e8684d3 Merge pull request #1270 from python-discord/co... - shtlrs
da488b1 Bump pre-commit from 3.6.2 to 3.7.0 - dependabot[bot]
GitHub Actions run 8422331469 succeeded.
[python-discord/site] branch deleted: fix/footer-bulma-logo
The text alignment still isn't perfect for me (firefox on windows), is it the same for you?
Before:
After:
The other changes seem good though.
This is a great idea, and would be really useful for things like the contributing section as you mention.
I do think that the category pages changes would be out of scope for this. It's already a pretty big task, and there are potentially also other things to consider w.r.t category pages, since I think going More->content from the main page to get a jumbled list of things is another issue and could potentially do with a bigger rethink in how individual sub-sections are accessed.
showcase the of my private upcoming Discord bot, Imperial.
Part of the idea behind DMing authors when they open a help thread was to provide a way for them to look back on past threads they've opened, which is an issue that forum channels didn't really help with.
It's not vital since there are other ways of finding your threads (e.g. searching for pinned messages sent by you in the help forum channel), but since it's a fairly harmless feature and I don't think this use case was discussed I figured I'd mention it.
Honestly, I don't understand the benefit of this error dispatching system. I feel like this introduces extra complexity and makes the logic much harder to follow and understand.
Before, following the logic was as simple as:
on_command_erroris calledisinstanceis used to dispatch the error to the necessary handling logic
Now, to follow the logic it's:
-
on_command_erroris called -
It gets
self.bot.command_error_manager- ...which is set by `register_comm...
def join_blocked_extensions(self, extensions: Iterable[str], delimiter: str = ", ", char_limit: int = 100) -> str:
It would be better to have joined as a list and then "".join() it at the end, so we're not relying on CPython optimisation for it not to have O(n) complexity.
Also, I believe this could go over char_limit by a few characters in some cases. If that's intentional for simplicity though then feel free to leave it as is.
We're not on 3.12 yet, so can't use it yet (we were blocked until very recently waiting for dependencies to update).
Other than launching us 1000 years into the future, this looks great!
<h3>Summer Code Jam 2021 (CJ8)</h3>
<h3>Summer Code Jam 2022 (CJ9)</h3>
:P
<h3>PyDis Game Jam 2020 with the โThree of a Kindโ theme and Arcade as the technology</h3>
<h3>PyDis summer code jam 2020 with the theme โEarly Internetโ and Django as the technology</h3>
GitHub Actions run 8425831773 succeeded.
b043620 Attempt to fetch help post from cache before ma... - ChrisLovering
8f26161 Make help showable through button on command er... - wookie184
[python-discord/bot] branch deleted: combine-command-error-messages
GitHub Actions run 8425853270 succeeded.
The bot-core Scheduler already wraps scheduled coros in asyncio.sheild so they can't cancel themselves.
I think we should be good here from how I understand this works.
The cog isn't considered ready yet, so won't handle events.
Looking at what this does, it will only make API requests if the channel isn't cached, or if a post needs to be closed, so it shouldn't take that long in total.
The channel was actually always fetched via an API requesat here, which meant this cog ook a while to load. I just changed that in this commit in this PR.
Connected!
I'm not sure if making it an instance attribute nets us anything as the confirmed flag wouldn't be reset to false either way? But sure, why not.
GitHub Actions run 8428330085 succeeded.
I'm not really happy with how long this PR and review revisions has taken; I sincerely hope this is close to be able to be merged. (Albeit if you have any more nits, please send them over.)
Maybe we could send a reply indicating if the view timed out, like there is if it's cancelled manually, though I don't really mind.
@wookie184 that's awful! I was too careless with my inline substitutions. I'll fix it right away, thank you.
I didn't correctly word what I was thinking. If it's a class attribute, then the state is persisted across all instances. This means confirmed will remain True for subsequent command invocations, right?
You're correct that as an instance attribute, the instance cannot be re-used because it's never reset. But I think an instance attribute solves the above case.
Yes, I believe you are correct.
I'm not too concerned. Let's just try it and see if we end up with missed events - it's not catastrophic if we do.
Yeah we have some leeway with our limits so I aimed to keep it simple. I also find += more readable - I don't see this function as a performance bottleneck especially given we won't see large (in computer terms) numbers of extensions.
1063442 Fix type annotation in snekbox - MarkKoz
[bot] Branch bug/2464/truncate-snekbox-blocked-exts was force-pushed to `a74dc67`
2af75c7 Timeline: Fix s/2/3/g substitutions on titles - hedyhli
ichard26@asus-ubuntu:~$ cat test.py
class A:
flag = False
a = A()
a2 = A()
a.flag = True
print(a.flag, a2.flag)
ichard26@asus-ubuntu:~$ python test.py
True False
As far as I understand, unless the class attribute is directly modified via the class, state won't persist across all instances.
GitHub Actions run 8428703077 was cancelled.
GitHub Actions run 8428707362 succeeded.
GitHub Actions run 8428711951 succeeded.
Okay yeah, that makes sense now that I see it. Thanks for clearing that up - was not intuitive to me at a glance.
GitHub Actions run 8428742022 succeeded.
GitHub Actions run 8428779507 succeeded.
83c6505 Convert IDs in bulk deletes to strings for DB q... - jb3
[python-discord/metricity] New branch created: jb3/fix-stringed-ids
Convert IDs into strings to match the format stored in the database to prevent us receiving mismatching type errors (big int vs. character varying).
Prevents us from experiencing this error:
2024-03-15T01:56:31.427876929Z sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: : operator does not exist: character varying = bigint
2f9f99d Fix broken Bulma logo in the footer - hedyhli
1b5e71b Bump ruff from 0.3.3 to 0.3.4 - dependabot[bot]
57e6246 Merge pull request #1267 from python-discord/de... - shtlrs
ee113d5 Removed inactive users from CODEOWNERS - Xithrius
e8684d3 Merge pull request #1270 from python-discord/co... - shtlrs
GitHub Actions run 8429409945 succeeded.
It should be alright in windows now.
On iOS, it's pretty misaligned vertically if I zoom in, but it's probably somewhat subtle otherwise. On android it's not perfect, but good enough (better than iOS).
Since this isn't such a major issue (I've made sure no part of the image is cut off on all platforms) we'll just make sure it looks good for the majority of our users for now, as lemon suggested in the linked discussion. Considering that this is web dev, I wonder if a cross-platform solut...
[python-discord/metricity] branch deleted: jb3/fix-stringed-ids
9ea7c1b Footer: Crop linode image to fit text and adjus... - hedyhli
GitHub Actions run 8429577332 succeeded.
GitHub Actions run 8429695585 succeeded.
Closes #1327.
The bookmark command (Sir Lancebot) allows other people to click a button to receive a copy of a bookmark when someone bookmarks a message.
This PR adds a similar button for the !remind command, other people can click the button to add themselves to the mention list of the reminder. When the reminder arrives, they will be notified with a ping.
Demo
When the reminder is created, and someone clicks on the button:
When the reminder arrives, the person will be p...
GitHub Actions run 8431659349 failed.
GitHub Actions run 8431679823 succeeded.
GitHub Actions run 8431786516 succeeded.
[python-discord/bot] New comment on issue #2022: Incorrect handling of tags by the `!source` command
While the solution presented in the PR above works (by not checking for isinstance of TagIdentifier entirely), I don't think it's very robust in the long run.
It looks like SourceConverter is always able to identify tags to be tags, so why not we use a util function that will return the source-converted object, as well as a enum value that represents the type of object the source-object is?
This skips checking for isinstance entirely, for all SourceTypes, and retains the existing ...
[bot] Branch Continually-check-for-posts-that-need-to-be-closed was force-pushed to `0f0cf9b`
forcepush is just a rebase onto main with no conflicts
[python-discord/bot] branch deleted: Continually-check-for-posts-that-need-to-be-closed
Connected!
Part of the idea behind DMing authors when they open a help thread was to provide a way for them to look back on past threads they've opened, which is an issue that forum channels didn't really help with.
It's not vital since there are other ways of finding your threads (e.g. searching for pinned messages sent by you in the help forum channel), but since it's a fairly harmless feature and I don't think this use case was discussed I figured I'd mention it.
Quite a few people have b...
Quite a few people have been annoyed with the DMs from the bot from that feature specifically. I wdoner if we merge this PR, and add an issue to add it back in a form that can be opt-ed out of?
Yeah that sounds good, I guess we can see if people mention that they still find it useful once we've removed it and add it back as opt-out or opt-in if that is the case.
GitHub Actions run 8436124872 succeeded.
It looks really good for me now
I agree with that it's not massively important so whatever balance you think seems best between different platforms is good with me.
Of course, wookie, I hacked into your computer to test it!
But yes, since they're fairly small logos in the footer I don't think the offsets on iOS are that noticeable. We could see if anyone complains.
c1a51db Always cancel scheduled help post closes if pre... - ChrisLovering
5140378 Check every 5 minutes for idle help channels - ChrisLovering
5845927 Always try to close help posts, even when closi... - ChrisLovering
0f0cf9b Attempt to fetch help post from cache before ma... - ChrisLovering
ca8972f Merge branch 'main' into bug/2464/truncate-snek... - wookie184
[python-discord/bot] branch deleted: bug/2464/truncate-snekbox-blocked-exts
GitHub Actions run 8436828214 succeeded.
Connected!
The idea initially came to make the exception handling logic reusable for both prefix command & slash command errors.
For the context, we have some prefix/text commands that also have their slash version sibling, and these commands use the same logic/throw the same errors.
The question was (and I'd be interested to have your point of view), how do we reuse all the logic that existed in the error handling cog in case we have errors that came from these slash commands ?
Discord py dis...
All good, thanks for working on this.
3a5e386 Ask for confirmation when banning members with ... - Robin5605
GitHub Actions run 8437210174 succeeded.
Connected!
Using tabindex="-1" sounds good. Super weird that any of these fixes do anything but if it works it works ๐
Web dev seems to be full of these things. ๐ Well I'm glad we finally have a fix for this issue that bugged me for quite a while.
7cb6dbd Bump ruff from 0.3.2 to 0.3.3 (#2961) - dependabot[bot]
88adcbc Bump sentry-sdk from 1.42.0 to 1.43.0 (#2964) - dependabot[bot]
1e37eba Bump coverage from 7.4.3 to 7.4.4 - dependabot[bot]
96f5303 Merge pull request #2958 from python-discord/de... - shtlrs
ee39702 Bump azure/k8s-deploy from 4 to 5 (#2965) - dependabot[bot]
GitHub Actions run 8437565063 succeeded.
f863875 Allow arbitrary strings when adding invite filters - mbaruh
854980d Add phishing detection and handling - mbaruh
157ac23 Don't handle discord invites as domains in phis... - mbaruh
fa4f233 Make the moderator the author of the compban fo... - mbaruh
d4d8e6d Merge branch 'main' into phishing_button - mbaruh
[python-discord/bot] branch deleted: phishing_button
Connected!
We removed this functionality in https://github.com/python-discord/bot/pull/2968. IF we were to add this back, we should offer users to opt-out of the DMs.
Part of the idea behind DMing authors when they open a help thread was to provide a way for them to look back on past threads they've opened, which is an issue that forum channels didn't really help with.
It's not vital since there are other ways of finding your threads (e.g. searching for pinned messages sent by you in...
[python-discord/bot] branch deleted: remove-helpcog-dm-features
GitHub Actions run 8438618877 succeeded.
GitHub Actions run 8438632262 was cancelled.
Connected!
I think it was mentioned in the discussion after this was posted, but the reason we don't do this is that discord doesn't expose an andpoint that allows invalidating tokens.
The only way to do this (afaik) would be to upload tokens to GitHub and rely on GitHub's secret scanning to remove them, which has a few issues:
- If GitHub doesn't remove them immediately uploading them to GitHub could make things worse.
- It's a bit dodgy to upload peoples tokens to a 3rd part service.
- It would ...
The main benefit of ignores I can think of is when just searching for a user ID to try and get an overview of their actions - ignoring events which already have matching logs makes the result a bit easier to read through.
That said, if there's a use case where having the events would be useful I'd have no problem with adding them back in this case.
e96413f Capture cog load times using sentry performance... - ChrisLovering
[python-discord/bot] New branch created: capture-cog-load-times
I ran this once locally to make sure it all worked, and it looks great https://python-discord.sentry.io/performance/?project=2724195&statsPeriod=14d
GitHub Actions run 8440395515 succeeded.
GitHub Actions run 8440429147 succeeded.
Nice, I'd thought about using this for commands, but figured it would be too noisy given some commands wait for user responses etc.
This seems good though.
GitHub Actions run 8440721452 succeeded.
GitHub Actions run 8440741906 succeeded.
Discord seem to have fixed the bug that allowed user accounts to send embeds. Things that make me think this:
- I can't find a valid triggering of the filter in over 2 years
- This reddit post says they patched it https://www.reddit.com/r/Discord_selfbots/comments/sa0hc2/discord_embeds_patched/
This makes the rich embed filter no longer necessary. It's had quite a few bugs (mostly relating to twitter) and gives some false positives, so it would be helpful to have it removed.
f9328d2 Capture cog load times using sentry performance... - ChrisLovering
5f2f10c Add sentry performance spans to news cog - ChrisLovering
6caeae9 Add sentry performance spans to subscribe cog - ChrisLovering
059fb00 Add sentry performance spans to thread bumper cog - ChrisLovering
726c16c Merge pull request #2976 from python-discord/ca... - wookie184
[python-discord/bot] branch deleted: capture-cog-load-times
Connected!
With PR #2316 , the bot will now ask for confirmation when banning members with elevated roles.
Based on feedback from staff, it has been suggested to change the button labels to "Ban" (in red) and "Cancel" (in gray) since the current colour scheme might be a bit confusing.
[python-discord/bot] New branch created: super-sentry-config
ae44e59 Remove sentry sample rates and add asyncio inte... - ChrisLovering
GitHub Actions run 8441157368 succeeded.
7c5064e Change color of cancel button from green to gray - Robin5605
[python-discord/bot] New branch created: Robin5605-patch-1
79b2844 Remove sentry sample rates and add asyncio inte... - ChrisLovering
[python-discord/bot] branch deleted: super-sentry-config
GitHub Actions run 8441197365 succeeded.
Connected!
GitHub Actions run 8441231844 succeeded.
"""Callback coroutine that is called when the "Ban" button is pressed."""
or
"""Callback coroutine that is called when the button labelled "Ban" is pressed."""
[python-discord/bot] New branch created: init-sentry-after-event-loop-creation
288cc09 Move sentry initialisation to after the event l... - ChrisLovering
This is required for the sentry asyncio integration
GitHub Actions run 8441823138 succeeded.
Connected!
Connected!
[python-discord/bot] New branch created: vivek/fix-phishing-button
b38d8a2 Fix case sensitivity bug in phishing button - vivekashok1221
This PR addresses a bug introduced in the implementation of PR #2669.
The bug prevented moderators from adding guild invites of the form 'https://discord.gg/aBcDeFgH' (starting with "https://" AND has uppercase characters in the invite part) to the denylist by clicking on the phishing button (invite links of the type discord.gg/aBcDeFgH still worked).
GitHub Actions run 8443810199 succeeded.
GitHub Actions run 8443970018 succeeded.
The view class was intentionally designed to be generic, able to be used to request confirmation for any infraction. Consequently, it was named InfractionConfirmationView. This change, while a change for the better IMO, restricts the class to ban infractions.
Can we please rename the class to BanConfirmationView at least?
Connected!
Connected!
422c5fe Fix navbar dropdown toggle for touchscreens usi... - hedyhli
[python-discord/site] New branch created: fix/safari-touch-toggle-dropdown
Fixes #1208.
All the discussion/details regarding implementation can be found in the linked issue.
It'd be best if you have a target device to test it on, but if not, take a look at this stackoverflow answer.
GitHub Actions run 8446629716 succeeded.
GitHub Actions run 8447123594 succeeded.
Hey @Anonymous4045, are you still planning to work on this?
I agree with wookie that allowing five topics simultaneously is a little too much, perhaps 3 could do. If a topic is approved in the repo, they should already be considered plausible topics. Keep in mind that people also like to reference the topic embed when replying to the topic. Having too many topics to choose from in that embed can lead to fragmented conversations, which one might say defeats part of the purpose of this `.top...
LGTM, just some suggestions for readability here.
I'm fine either way, but why not remove the :*: - hint in the comments (previously used for the much less descriptive escape sequences) since they're now determined by the settings of the constants?
These emoji constants previously had aligned comments but it's now misaligned. Perhaps consider either removing the extraneous space before # for START_EMOJI or re-align the comments?
We could similarly use Emojis.cross_mark here.
GitHub Actions run 8450468718 succeeded.
Sounds good to me. I can start working on this and see how it feels.
GitHub Actions run 8452157065 succeeded.
Description
Add more trivia questions.
Using a format i can copy and paste into a python script to generate the json.
list[tuple[str, list[str], Optional[str]]] = [(question, [answer1, answer2], hint)]
Python
[
("What common operation does this function implement?\n```py\nmystery = lambda *args: map(lambda *x: x, *args)\n```", ["zip"], None),
("What common operation does this function implement?\n```py\ndef f(a):\n b = []\n for b[len(b):] in a:3\n return ...
The fixed questions all look good. Feel free to open a PR with them.
I like the regex idea, that would be cool. I think it would be good as it's own category. Feel free to open a (separate) PR with that if you want (you can also break the idea out into another issue if you think there are any details about behaviour/implementation to discuss first).
The graph idea also sounds cool, though I think it would require a bit more discussion first - I think it would be good to open a separate ...
GitHub Actions run 8460017580 succeeded.
Without this, the phishing button would suggest adding "example.com/abcdef" to the comp-filter-list even if "example.com/aBcDeF" is already present in the filter list.
GitHub Actions run 8462936555 succeeded.
42558cf Bump markdownify from 0.11.6 to 0.12.1 (#2983) - dependabot[bot]
c25d832 Bump emoji from 2.10.1 to 2.11.0 (#1490) - dependabot[bot]
GitHub Actions run 8463037863 failed.
Connected!
Connected!
Suspect Issues
This pull request was deployed and Sentry observed the following issues:
- โผ๏ธ **ExtensionFailed: Extension 'bot.exts.info.python_news' raised an error: ResponseCodeError: Status: 500 Response: **
bot.bot in load_extensionView Issue
<sub>Did you find this useful? React with a ๐ or ๐</sub>
GitHub Actions run 8466607660 succeeded.
Connected!
GitHub Actions run 8477592444 succeeded.
GitHub Actions run 8477651292 failed.
94c29ba Bump ruff from 0.3.2 to 0.3.3 - dependabot[bot]
5f103ef Merge pull request #1260 from python-discord/de... - Xithrius
f1d3a72 Timeline: Fix Liechtenstein postcard image (#1261) - hedyhli
f1a8477 Bump sentry-sdk from 1.42.0 to 1.43.0 - dependabot[bot]
76b7889 Merge pull request #1264 from python-discord/de... - Xithrius
GitHub Actions run 8478050658 succeeded.
GitHub Actions run 8478061918 succeeded.
Yes, I think I'll agree that applying this hierarchical layout for category pages will be out of scope for this issue for now. Although it would be great to see at a glance just what pages/guides we have when clicking on the "Content" navbar item, it can be pretty overwhelming and we could just have this issue apply to particular content pages that might benefit from this (or all pages?) such as the contributing guides.
Looks very good to me, thank you for the hard work!
I have a few tiny nitpicks, after that it looks good to merge to me. Thank you again!
winner. The top 5 will be featured in a special video on our <a href="https://www.youtube.com/channel/UCQsrA4xo6jvdgsJZhKaBL6w" target="_blank" rel="noopener">YouTube channel</a>.
<p>Pablo Galindo, the 3.11 Python Release Manager and CPython Core Developer, walked through the release process and a number of guests joined to talk about the exciting new features to be found in 3.11. At the end of the release we also hosted a Q&A session.</p>
Hmm, I'm not sure if this is necessary from a grammatical perspective, but I feel it reads more smoothly this way:
Python language. As of 2020, we are excited to say that we are officially partnered with PyWeek to co-run these
What do you think?
This was copied from the current description on our events page, but I agree! It's a good suggestion -- it sounds better.
b72f457 Use proper logos and better positioning in the ... - hedyhli
3bf2e7e Merge branch 'main' into fix/footer-logo-filtering - hedyhli
b4bb7a0 Footer: Adjust baseline positioning to prioriti... - hedyhli
9ea7c1b Footer: Crop linode image to fit text and adjus... - hedyhli
88a0c2e Footer: Use text-only Bulma logo for automatic ... - hedyhli
[python-discord/site] branch deleted: fix/footer-logo-filtering
This too, our current page sure has some grammatical errors. Thanks!
ece9c315
Also fixed another instance of this content on the annual events gallery.
I do think that the less manual labor we have with updating the events page, the better. I think the repeated occurrences of the page becoming outdated only for some "batch update" much later to bring it back into the current year showcase the benefits of the API-based solution very well.
There is one more problem that I can think of. If we go the database-backed approach, then contributors who set up the site will not have the same events on the events page than the live site has. More, it ...
GitHub Actions run 8480068689 succeeded.
51bfa2c Events: Initial redesign - hedyhli
0918051 Events: Update content and remove fillers - hedyhli
0e24047 Events: Consistent PyWeek capitalization and ... - hedyhli
1d3d8d6 Events: Fix title sizing and hidden-on-mobile g... - hedyhli
117ead5 Events: Use Masonry layout for gallery of events - hedyhli
[python-discord/site] branch deleted: feat/events-redesign
[python-discord/site] branch deleted: fix/safari-touch-toggle-dropdown
GitHub Actions run 8480094204 succeeded.
GitHub Actions run 8480094087 was cancelled.
GitHub Actions run 8480095371 was cancelled.
More, it will become more complicated for them to update any entries of the events page locally.
Hmm, update the entries in what sense? This proposal intends to allow updates to the entry via bot commands, so contributors do not need to do anything in the repo. If those commands are mod/events-lead/admins-only, they can simply mention any changes required over on discord and someone with the perms who sees it can action it immediately.
There is one more problem that I can think of. ...
For now, one way I can think of (without running bot simultaneously) is including a file similar to init.sql that prefills some dummy events, so some content can show up on the events page for them to preview any changes to the CSS/HTML they are making.
Yup, I think this would be the way to go if we end up choosing this approach.
GitHub Actions run 8480698910 succeeded.
GitHub Actions run 8480702599 succeeded.
GitHub Actions run 8480705959 succeeded.
GitHub Actions run 8480775834 failed.
[site] Branch dependabot/pip/djangorestframework-3.15.1 was force-pushed to `aa18d1b`
[site] Branch dependabot/pip/djangorestframework-3.15.1 was force-pushed to `9f5f314`
GitHub Actions run 8480913212 succeeded.
940d88c Support running tests with --keepdb option - jchristgit
[python-discord/site] New branch created: support-test-keepdb
Allow faster local tests by skipping the database re-setup. Only two cases were dependent on hardcoded IDs and already existing data, they have been adjusted appropriately.
GitHub Actions run 8481007495 succeeded.
d757301 Reference the /tag slash-command instead in tag... - hedyhli
[python-discord/bot] New branch created: fix/tags-list-footer
GitHub Actions run 8481074270 succeeded.
Description
Created from discussion in #1491.
Me:
A question I thought would be fun is generating a random directed graph and asking people to find the shortest path between two randomly selected nodes. Variations could be solving TSP, and so on. Would need to send images though, which would require some modifications to a lot of code.
@wookie184 :
The graph idea also sounds cool, though I think it would require a bit more discussion first - I think it would be good to open a ...
Why is this no longer needed/wanted?
2759a2a Bump pip-licenses from 4.3.4 to 4.4.0 (#1493) - dependabot[bot]
Connected!
GitHub Actions run 8484718314 succeeded.
0f9213b Bump lxml from 5.1.0 to 5.1.1 (#1494) - dependabot[bot]
64a5ce0 Bump pip-licenses from 4.3.4 to 4.4.0 (#2985) - dependabot[bot]
Connected!
GitHub Actions run 8484815837 succeeded.
Connected!
GitHub Actions run 8484841097 succeeded.
Connected!
Connected!
GitHub Actions run 8484897710 succeeded.
Connected!
Works nicely. Can't wait to get this one merged ๐คฉ
GitHub Actions run 8486293401 succeeded.
GitHub Actions run 8486312034 succeeded.
Connected!
Connected!
DRF will generate validators for unique constraints on its own now: https://www.django-rest-framework.org/community/3.15-announcement/#primary-support-of-uniqueconstraint Hence also the adjusted error message in the test.
edff2a8 Bump dev deps to latest - ChrisLovering
4b09c30 Ensure project root is on sys path before impor... - ChrisLovering
301d15c Lint repo with new ruff rules - ChrisLovering
578b221 Remove the requirement for <3.12 for fakeredis - ChrisLovering
7a3d134 Add changelog entry for fakeredis 3.12 support - ChrisLovering
[python-discord/bot-core] branch deleted: bump-deps
[python-discord/bot-core] New tag created: v11.1.0
GitHub Actions run 8490210064 succeeded.
forcepushes were a bumping to the full 11.1.0 release of bot-core, and a rebase onto main.
[python-discord/sir-lancebot] branch deleted: python-3.12
Connected!
[python-discord/bot] New branch created: bump-bot-core
I originally intened to split up the bot core & Python bump into two PRs, but none of bot-core's breaking changes from v11.0.0 affected the bot, so just put it in one PR instead.
GitHub Actions run 8491146420 succeeded.
Connected!
GitHub Actions run 8492857645 succeeded.
[python-discord/bot] New branch created: jb3/voice-gate-log-2922
This PR adds a new #voice-log type for passing and failing the voice gate.
The conditions used are the same that the user will receive in their failure message.
Icons are re-used from DEFCON, as they are pretty and apply to what the voice gate is! As a result though, the constant names are the same, do we care about this? Shall I add duplicate entries to the Icons constants area? I ...
GitHub Actions run 8493256452 succeeded.
GitHub Actions run 8493339463 failed.
GitHub Actions run 8493352965 succeeded.
GitHub Actions run 8493440230 succeeded.
GitHub Actions run 8493460835 succeeded.
GitHub Actions run 8493570785 succeeded.
Connected!
3dbdb93 Work around DRF 3.15 regression - jchristgit
[python-discord/site] New branch created: fix-filterlists-endpoint-drf-3.15
Manually define the fields on the FilterSerializer due to a bug in DRF 3.15 reported upstream at
https://github.com/encode/django-rest-framework/issues/9345. Once that issue is fixed, we can remove the custom field code again. A new test case is also added to ensure that we don't run into this issue again.
GitHub Actions run 8496504227 failed.
[python-discord/site] branch deleted: fix-filterlists-endpoint-drf-3.15
This doesn't work as expected. Let's roll back the version until an upstream fix is available.
[python-discord/site] New branch created: revert-1271-dependabot/pip/djangorestframework-3.15.1
ab57b18 Revert "Bump djangorestframework from 3.14.0 to... - jchristgit
Reverts python-discord/site#1271, see python-discord/site#1277
GitHub Actions run 8496561290 succeeded.
GitHub Actions run 8496593173 succeeded.
f7b342b Add test case for DRF 3.15 regression - jchristgit
[python-discord/site] New branch created: add-test-case-drf-3.15-regression
9717773 Set elidable on RunPython operations in migrations - jchristgit
[python-discord/site] New branch created: set-elidable-on-run-python-operations-in-migrations
Any RunPython operation that only migrated existing data (that is, did not create data) can be safely elided by Django when we run squashmigrations.
GitHub Actions run 8496655151 succeeded.
GitHub Actions run 8500196710 succeeded.
GitHub Actions run 8500665225 succeeded.
GitHub Actions run 8500770695 succeeded.
Works nicely, I agree that there's no need to rename or duplicate the icon constants.
[python-discord/bot] branch deleted: jb3/voice-gate-log-2922
Connected!
GitHub Actions run 8502072942 succeeded.
Connected!
ccf4627 Don't propagate the status received from Discor... - jb3
[python-discord/site] New branch created: jb3/github-webhook-no-status
When we received a bad request exception from Discord (which is not actually representative of an error here), we were propagating this back to GitHub.
Instead, we should always return a success request if we have been successful in the proxy attempt, and return the downstream status code as a part of the response body.
This prevents GitHub Webhook Bad Requests being logged to site logs.
GitHub Actions run 8502213222 failed.
GitHub Actions run 8502290722 succeeded.
GitHub Actions run 8502473601 succeeded.
657a7c3 Create new command to adjust game uptime. Incre... - swfarnsworth
[python-discord/sir-robin] New branch created: games/uptime_command
I was finding the current uptime to be too brief.
GitHub Actions run 8502573308 failed.
Connected!
GitHub Actions run 8502686912 failed.
GitHub Actions run 8502695701 succeeded.
I can't test it right now but it looks good
657a7c3 Create new command to adjust game uptime. Incre... - swfarnsworth
3ea9d7a &games scores: Sort team scores descending (h... - swfarnsworth
89b3549 Merge branch 'main' into games/uptime_command - swfarnsworth
e78d65b Fix typo in checking min_time > max_time - hedyhli
39327e0 Apply ruff changes - hedyhli
[python-discord/sir-robin] branch deleted: games/uptime_command
Connected!
How does GH know it has to look in this nested structure now instead of the root?
We don't need to do this anymore, right?
GitHub Actions run 8504388622 failed.
Connected!
Connected!
73809cc Suppress not found errors on reaction clear - jchristgit
[python-discord/sir-robin] New branch created: suppress-404-on-msg-delete
[python-discord/sir-robin] Checks Successful on PR: #118 Suppress not found errors on reaction clear
GitHub Actions run 8505442919 succeeded.
Connected!
83bca58 Pass exception value into Sentry - jchristgit
[python-discord/sir-robin] New branch created: pass-exc-value-for-sentry
Sentry could use the extra information, see for instance 1, we may not need to unwrap this into error.__cause__ since Python on its own should already expand that.
GitHub Actions run 8505506205 succeeded.
Beloved Chris!
Sadness overcame me when I noticed the neglect this pull request has received from the other DevOps team members.
My sadness only grew when I noticed the immense effort that went into authoring this PR from your side.
Chris, Sir Robin would be nowhere close to where it is today without your unforgiving, hard work. Python Discord would be nowhere close to where it is today without your unforgiving, hard work.
Please get in touch with Leon Sandรธy from the Department Of ...
GitHub Actions run 8506718950 succeeded.
This was added to make sure it uses the short output by default. Without this pre-commit run output is very long
Didn't bump this to latest as there are breaking changes in v11.0.0 that I don't want to think about in this PR
[python-discord/sir-robin] New review comment on pull request #119: Pass exception value into Sentry
I don't understand why this is needed, log.exception automatically pulls exc_info from sys.exec_info() if not passed explitily. Is sys.exec_info() not available from listeners like this?
This is great! And I have not found any autoconf scripts with interesting new features. Impressive, Chris! Even better than last time!
[python-discord/sir-robin] branch deleted: bump-versions
Approving anyway, so this can be merged if needed
Connected!
86a86db Update Python version requirements in contribut... - wookie184
[python-discord/site] New branch created: update-contributing-python-versions
04672bb Update Python version requirements in contribut... - wookie184
[python-discord/site] branch deleted: update-contributing-python-versions
GitHub Actions run 8507574773 failed.
346d570 No need to remove headers in GitHub Filter Endp... - jb3
8af39fb Allow extra channels to be ignored by the duck ... - ChrisLovering
[python-discord/bot] New branch created: allow-for-extra-channels-to-be-ignored-by-duck_pond
We want to be able to expand the list of channels ignored by duckpond, without having to add the entire list of default channels first.
GitHub Actions run 8507638593 succeeded.
It doesn't -- but it doesn't need to, GitHub stores all response details for us to browse, it doesn't do any processing of this response. I'm going to add a sanity log on our side though to mark when we get a 400 from downstream (but without logging sensitive info).
GitHub Actions run 8507650353 succeeded.
GitHub Actions run 8507670436 failed.
d9ab46f Allow extra channels to be ignored by the duck ... - ChrisLovering
[python-discord/bot] branch deleted: allow-for-extra-channels-to-be-ignored-by-duck_pond
GitHub Actions run 8507714878 failed.
Connected!
GitHub Actions run 8507742497 succeeded.
Connected!
[python-discord/bot] New branch created: update-sync-cog
This updates the sync cog to also sync user's display_names.
This PR also moves the initial sync to 10 seconds after cog start up, to give other cogs a chance to start up.
[python-discord/site] New branch created: jb3/api-user-display-name
GitHub Actions run 8508088967 failed.
Add the display name from Discord to the user model, updating API routes to accept this new field for the syncer from bot.
@dependabot ignore this minor version
[python-discord/sir-robin] New review comment on pull request #119: Pass exception value into Sentry
No, it does not seem to be. My theory is that it's not done within a except, so sys.exc_info() doesn't know about it. See the Sentry issue.
5d01a07 Don't propagate the status received from Discor... - jb3
d0e9469 Update GitHub Filter endpoint tests for new res... - jb3
02787cd No need to remove headers in GitHub Filter Endp... - jb3
3d04acc Log failed webhook attempts to stderr in GitHub... - jb3
5d4e729 Merge pull request #1281 from python-discord/jb... - jb3
[python-discord/site] branch deleted: jb3/github-webhook-no-status
GitHub Actions run 8508332838 succeeded.
Small request. Otherwise LGTM.
Does this need a concurrent merge with bot?
Please pass elidable=True, as we don't need this migration when squashing (I'm planning to squash migrations soon, see also #1280)
migrations.RunSQL("UPDATE api_user SET display_name = name;", elidable=True),
[python-discord/bot] New branch created: fix-test-warning
b1b0fb1 Make pure-SQL line in api_user.display_name mig... - jb3
Fixes this warning
D:\bot\tests\bot\test_constants.py:13: PytestCollectionWarning: cannot collect test class 'TestEnvConfig' because it has a __init__ constructor (from: tests/bot/test_constants.py)
class TestEnvConfig(
Pytest tries to collect any class beginning with Test as a test.
I'd like to enable failing tests with warnings to catch things like this, but we'll need to wait for https://github.com/Rapptz/discord.py/issues/9477 first.
GitHub Actions run 8508426102 succeeded.
GitHub Actions run 8508434760 succeeded.
GitHub Actions run 8508446387 was cancelled.
Truncating original logs can result into important context/logs being burried/removed.
This paginates the logs instead
GitHub Actions run 8508456640 succeeded.
GitHub Actions run 8508478196 succeeded.
GitHub Actions run 8508500730 succeeded.
Shouldn't this be Guild | None?
I think we should save this task somewhere. Unless I'm mistaken, this may be garbage collected and die.
Which other cogs do we depend on? Or is it just to prevent ratelimits?
[python-discord/site] branch deleted: jb3/api-user-display-name
only so many tasks can be ran at a time, so this just allows other cogs to startup instead of the syncing cog taking up all processing power. No dependencies.
[python-discord/bot] branch deleted: update-sync-cog
Connected!
hmm, it shouldn't make much of a difference given the sync cog would mostly be waiting on network tasks so other things can run, are we sure this actually helps?
GitHub Actions run 8508825490 succeeded.
Should this be at the end of cog_load to ensure self.help_forum_channel is set first?
Yea good point, lets do that just to be safe. Updated.
GitHub Actions run 8508871059 succeeded.
[python-discord/bot] branch deleted: use-tasks-over-scheduler
a1041e7 Bump lxml from 5.1.1 to 5.2.0 (#1496) - dependabot[bot]
Connected!
Connected!
d9ab46f Allow extra channels to be ignored by the duck ... - ChrisLovering
7d6c071 Wait 10 seconds before syncing the guild & users - ChrisLovering
f7e75b5 Also sync the user's display_name in the user s... - ChrisLovering
0b8f0b0 Update syncer tests - ChrisLovering
094e76e Correct type hint in the syncer cog. - ChrisLovering
[python-discord/bot] branch deleted: fix-test-warning
GitHub Actions run 8508933993 succeeded.
Connected!
c27c59d Show warnings when running tests in GH Actions - wookie184
[python-discord/bot] New branch created: wookie184-show-warnings-in-actions-tests
[python-discord/bot] branch deleted: wookie184-show-warnings-in-actions-tests
GitHub Actions run 8509150254 succeeded.
Connected!
b99979d Fix coroutine never awaited warning in sync tests - wookie184
[python-discord/bot] New branch created: fix-warning-in-sync-tests
type(self.cog.sync()) is just coroutine so I added an extra check that it's actually the function we want (It could be done more robustly with a bunch more mocks but I think this is fine).
Also closed a coroutine so a warning isn't raised.
GitHub Actions run 8509527816 succeeded.
Currently when the hangman command times out it doesn't tell you what the word was:
This is annoying if you were still playing but were just slow thinking of a letter or got stuck and wanted to wait for it to be revealed.
Instead, it should reply to the original message saying that you lost, the game timed out, and what the word was.
The code is here: https://github.com/py...
Allowing a command in DMs needs to be done explicitly now, and we have not done that. Iโll be closing this issue.
We did kind of break minesweeper because it uses a command in DMs instead of just a message like battleship. We could either do what we do in battleship and have it listen to messages not commands, or we move it onto the server and delete the invocation to reduce spam. That can be tracked in a separate issue though.
_Originally posted by @HassanAbouelela in https://github.co...
Description
This error is raised when running the reddit command with a custom subreddit, e.g. .reddit top r/python
2024-04-01 16:57:14 \| ERROR \| bot.exts.core.error_handler \| Unhandled command error: 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://www.reddit.com/subreddits/search.json?q=r/python')
I've not investigated this further yet.
Would you like to implement a fix?
***Note: For high-priority or critical bug...
Presently, when the homepage view is opened, it will sometimes fetch new repository metadata from GitHub and update this information in the database.
When data is newly fetched, this is pretty slow. The question is: Do we want to run it separately?
Benefits of running it separately:
- the view will always run quickly (as long as the cronjob to refresh data runs)
Drawbacks of running it separately:
- more components that can break, more things to monitor
- might complicate dev se...
e50c8a1 Prefetch the filter_list field in the FilterLis... - jb3
[python-discord/site] New branch created: jb3/filterlist-perf-improvements
We were experiencing an issue in production where the api:bot:filterlist-list view was taking several seconds to process, upon enabling query logs and monitoring for this we found it was making a query for every filter in the database.
Prefetching the filter_list field solves this and greatly reduces the query count, optimising the route.
GitHub Actions run 8511601137 succeeded.
[python-discord/site] branch deleted: jb3/filterlist-perf-improvements
[python-discord/site] New branch created: upsert-tags-in-three-queries
009c528 Upsert tags in three queries - jchristgit
Connected!
GitHub Actions run 8511905959 succeeded.
GitHub Actions run 8511932154 succeeded.
3a4c2e3 Return BytesIO as fp for mocked HTTP errors - jchristgit
[python-discord/site] New branch created: return-bytes-io-from-http-errors
Prevent spurious test failures on Solaris systems.
GitHub Actions run 8512157948 succeeded.
[python-discord/site] branch deleted: return-bytes-io-from-http-errors
My main feedback on this is that without code blocks the logs become harder to read? How does this look if we move the logs into a code-block within the embeds?
be37067 Test that infraction reason sent to database is... - wookie184
[python-discord/bot] New branch created: improve-infractions-tests
GitHub Actions run 8512518882 succeeded.
My main feedback on this is that without code blocks the logs become harder to read? How does this look if we move the logs into a code-block within the embeds?
Good point, we could do inline formatting.
Here are some examples.
Code blocks looks like this
Inline formatting looks like this

I could make a team-patriotic change request to swap the lists to tuples, though ๐คฃ
At roughly this time, with scores of 1700/1586/1201, it should switch probabilities to approximately 28.7%, 30.7%, and 40.6%, respectively, from equal ~33%
GitHub Actions run 8517011434 succeeded.
Connected!
9edf309 Trivia: Fix misleading category description embed - hedyhli
[python-discord/sir-lancebot] New branch created: fix/trivia-help-text
The current formatting for the .quiz help command is misleading, where the spaces causes the wrong categories descriptions to be matched.
GitHub Actions run 8517602922 succeeded.
64a5ce0 Bump pip-licenses from 4.3.4 to 4.4.0 (#2985) - dependabot[bot]
9f24075 Bump lxml from 5.1.0 to 5.1.1 (#2984) - dependabot[bot]
a83912c Bump sentry-sdk from 1.43.0 to 1.44.0 (#2986) - dependabot[bot]
0254200 allow timeout edits - shtlrs
a57cbef do not edit discord timeout for users who left ... - shtlrs
GitHub Actions run 8517605613 succeeded.
GitHub Actions run 8517974970 succeeded.
Description
Trivia question 423 is "What is the name for unicode codepoints that do not fit into 16 bits?", with the supposedly correct answer being "surrogates". This is wrong.
At some point in the past what is now UTF-16 was occasionally called "Unicode", especially in the Windows and Java world. To encode codepoints outside the Basic Multilingual Plane UTF-16 uses surrogate characters, which are part of Unic...
In the embed for .quiz help, the spacing between categories is smaller than the spacing between each category name and description:
It would make more sense to put the category name and description closer together, which may come in the form of changing the display format entirely.
Relevant code is here: https://github.com/python-discord/sir-lancebot/blob/a1041e76cb19a92707...
Sounds good. Removing it is fine, unless you can think of a good way to rephrase it. Feel free to open a PR
Agreed, it is pretty ugly currently. We could even put the category name on the same line as the description.
Whoever wants to PR can play around and see what looks good.
Hello @n0Oo0Oo0b I noticed this today too, I've opened a PR at #1500 already ๐
I'll take this over. If the response is redirected I'll just keep the old behaviour of mentioning the user.
GitHub Actions run 8522474734 succeeded.
I think @hedyhli's proposed solution to https://github.com/python-discord/bot/issues/2022 is a better approach. Along with this, as this has quite a few merge conflicts, is stale, and there are still some existing bugs, I'm going to close the PR and suggest anyone wanting to work on #2424 makes a new one.
[python-discord/bot] New comment on issue #2022: Incorrect handling of tags by the `!source` command
@hedyhli I agree that your proposal sounds more robust. Lets do it. Were you planning to do the PR for it?
[python-discord/bot] New comment on issue #2022: Incorrect handling of tags by the `!source` command
Sure, I'll see to it once I'm free within the next week or two.
I'm going to close this as it's been stale for a while and I don't think it's close to merging. Given my second comment:
Also, looking at https://github.com/facebook/react/issues/new/choose it seems the option to create a blank issue is pretty hidden away. If we want to add a template for this I think we'd have to add ones for normal usage too.
I think this would need to go along with https://github.com/python-discord/bot/issues/1599 so I'd consider this something that should be solve...
db7c0d1 Trivia quiz: Fix question about surrogate codep... - L3viathan
[python-discord/sir-lancebot] New branch created: L3viathan-fix-surrogate-question
Closes #1501.
I decided to just rephrase the question, but I can also scrap it. I just didn't feel like renumbering a bajillion IDs.
GitHub Actions run 8523355454 succeeded.
3a4c2e3 Return BytesIO as fp for mocked HTTP errors - jchristgit
cf36f01 Merge pull request #1288 from python-discord/re... - jb3
3e41c8a Bump ruff from 0.3.4 to 0.3.5 - dependabot[bot]
ad60d02 Merge pull request #1289 from python-discord/de... - Xithrius
996353e Merge branch 'main' into upsert-tags-in-three-q... - jb3
[python-discord/site] branch deleted: upsert-tags-in-three-queries
The phrasing looks good, thanks
Connected!
[python-discord/sir-lancebot] branch deleted: L3viathan-fix-surrogate-question
Connected!
Since the conflicts are due to the entire snekbox.py file being split up, as this PR is fairly small, I'm just going to start over on a new branch.
[python-discord/bot] New branch created: reply-to-eval
Closes #2402
Some small changes were required to the mock helpers to ensure the attributes of MockContext are consistent with each other.
If the original message is deleted, the response message will still be sent with a mention or reply. I could make it send a mention in this case, but since it's an edge case I don't think it really matters.
GitHub Actions run 8527468373 succeeded.
# The command was redirected so a reply wont work, send a normal message with a mention.
GitHub Actions run 8527516501 succeeded.
Looks good, though do you think it would be neater to have the description on the same line as the category name, since most of the category descriptions are pretty short? I've not tried it so i'm not sure though.
Connected!
GitHub Actions run 8527722166 was cancelled.
GitHub Actions run 8527779488 succeeded.
Connected!
04672bb Update Python version requirements in contribut... - wookie184
5d01a07 Don't propagate the status received from Discor... - jb3
d0e9469 Update GitHub Filter endpoint tests for new res... - jb3
02787cd No need to remove headers in GitHub Filter Endp... - jb3
3d04acc Log failed webhook attempts to stderr in GitHub... - jb3
Connected!
GitHub Actions run 8527796677 succeeded.
f7b342b Add test case for DRF 3.15 regression - jchristgit
04672bb Update Python version requirements in contribut... - wookie184
5d01a07 Don't propagate the status received from Discor... - jb3
d0e9469 Update GitHub Filter endpoint tests for new res... - jb3
02787cd No need to remove headers in GitHub Filter Endp... - jb3
[python-discord/site] branch deleted: set-elidable-on-run-python-operations-in-migrations
b7363c3 Replace docker-compose with docker compose ... - wookie184
[python-discord/site] New branch created: docker-compose-to-docker-compose
Assuming it's just a drop in change
GitHub Actions run 8527989186 succeeded.
I experimented with that format but decided on this one because that way makes the list quite spaced out. This way is easier to scan from top to bottom.
I can definitely change it if there's a very good reason you see why putting it on the same line is better.
The other two formats, for reference:
<img width="500" alt="image" src="https://github.com/python-discord/sir-lancebot/assets/50042066/c0034103-90bc-4047-8a59-c9f2e2f5bac8">
<img width="500" alt="image" src="https://github.com/python-discord/sir-lancebot/assets/50042066/050eac6f-7eaf-4a86-aadc-7159d2c19487">
af982ac Add feature to append additional text to nomina... - Esther-Goldberg
[python-discord/bot] New branch created: append-nominations
Implements changes discussed for #2937
f863875 Allow arbitrary strings when adding invite filters - mbaruh
854980d Add phishing detection and handling - mbaruh
157ac23 Don't handle discord invites as domains in phis... - mbaruh
fa4f233 Make the moderator the author of the compban fo... - mbaruh
2ddb62f Bump ruff from 0.2.2 to 0.3.0 (#2940) - dependabot[bot]
GitHub Actions run 8532269612 was cancelled.
GitHub Actions run 8532271412 succeeded.
ea9afc7 Add feature to append additional text to nomina... - Esther-Goldberg
98d68a8 Merge branch 'append-nominations' of https://gi... - Esther-Goldberg
GitHub Actions run 8532894848 succeeded.
what happens here if the nominator has not previously nominated them? This would be the case when old_reason is None.
[python-discord/sir-lancebot] Pull request review submitted: #1458 Use botcore command error manager
A few preliminary comments - still need to do a deeper review.
Thoughts about using @typing.override for these? It makes it more explicit that this is an override, and it helps type checkers. But if we don't use a type checker then it could be argued that this would just clutter the code.
The default value of a function is None. If a function can return, but has no explicit return value, then this annotation should be None.
NoReturn means it does not return i.e. control flow of the program is interrupted before it returns. I've only seen this used for functions that always throw an exception, like an abstract method that raises NotImplemented. Also, this was superceded (?) in 3.11 by Never.
@wookie184 Just deleting the file will do it? I am unable to find any other reference to the filter.
fixed some 2 typos discussed in #2583
GitHub Actions run 8537617817 succeeded.
@wookie184 Just deleting the file will do it? I am unable to find any other reference to the filter.
Yes, that should be all that's required. (the filter's settings will need to be deleted from the database before merging but I can do that using the !filter delete command)
b28530e Fix coroutine never awaited warning in sync tes... - wookie184
[python-discord/bot] branch deleted: fix-warning-in-sync-tests
Connected!
GitHub Actions run 8544432652 failed.
[python-discord/snekbox] New branch created: shenanigansd-patch-1
4662751 Bump fishhook eval dep - shenanigansd
44044c1 Use xargs over find -exec to ensure exit code i... - ChrisLovering
[python-discord/snekbox] New branch created: update-eval-deps-script
Previously when running this command via docker compose run, the exit code was always 0. This is because find always returns a 0 exit code unless an error occurred while traversing the directories.
This caused CI to always report a success when isntalling deps, even when pip failed.
[python-discord/snekbox] branch deleted: shenanigansd-patch-1
[snekbox] Branch update-eval-deps-script was force-pushed to `083fbba`
The edit_nomination_reason function can handle the case when the nominator doesn't already have a nomination. From that function:
try:
nomination = await self.api.edit_nomination_entry(nomination_id, actor_id=actor.id, reason=reason)
except ResponseCodeError as e:
match (e.status, e.response_json):
case (400, {"actor": _}):
await ctx.send(f":x: {actor.mention} doesn't have an entry in this nomination.")
...
19f4432 Bump pillow from 10.2.0 to 10.3.0 (#1504) - dependabot[bot]
Connected!
GitHub Actions run 8548798949 was cancelled.
GitHub Actions run 8548800697 succeeded.
Connected!
Connected!
Connected!
GitHub Actions run 8548808945 was cancelled.
Connected!
Hello @n0Oo0Oo0b I noticed this today too, I've opened a PR at https://github.com/python-discord/sir-lancebot/pull/1500 earlier today ๐
My bad, I only checked issues for duplicates. I'll make sure to check PRs as well in the future :+1:
No worries, it's good to have an issue to link.
Looks like we already have some code regarding filtering DMs https://github.com/python-discord/bot/blob/577c8da66e618666891eaf237c4e0ca33750230f/bot/exts/filtering/_settings_types/validations/filter_dm.py but it looks like this isn't being used except in a test.
GitHub Actions run 8549590864 succeeded.
GitHub Actions run 8549594616 succeeded.
GitHub Actions run 8549704709 succeeded.
GitHub Actions run 8558878162 succeeded.
GitHub Actions run 8558859999 was cancelled.
245694d Timeline: Migrate to Markdown source files - in... - hedyhli
1132779 Merge branch 'main' into feat/timeline-from-yaml - hedyhli
5693ec1 Timeline: Remove files from old implementation - hedyhli
f85ef86 Timeline: Move the new timeline.css in and have... - hedyhli
07f7c0a Timeline: Use pydis blurple as default icon bac... - hedyhli
[python-discord/site] New branch created: feat/timeline-from-yaml
- The rest of the existing entries are yet to be converted once the source files format is finalized
- Timeline is now its standalone app that reads the source files on startup
- Each entry now supports links (jump to entry) as a side-benefit of this feature
- Everything should look the same
GitHub Actions run 8578849653 failed.
GitHub Actions run 8578892210 succeeded.
da1c12e Fix showing !source on tags when tags cog is ... - hedyhli
[python-discord/bot] New branch created: fix/source-command-for-tags
Closes #2022
TLDR
Invoking !source should now work even after the tags cog is reloaded.
Long description
Previously the source command checks for the source object's class after getting it from the SourceType converter. When the tags cog is reloaded, TagIdentifier is redefined. We were checking whether the old TagIdentifier class (the type() of an instance of the old TagIdentifier) equals the newly defined TagIdentifier class. This returns false ...
GitHub Actions run 8579610245 succeeded.
One alternative approach that might be a bit hacky but would likely be the easiest to implement: we could start a background thread using threading that would do the updating after we've returned the response.
I would strongly favor not using a job queue such as Celery since I've had very bad experiences with it, and for this single use case it would feel kind of overblown. Additionally, implementing it would require a lot of additional monitoring, deployments, and introduce a lot more...
Maybe a bit hacky as well, but another option that we have would be to use Django's asynchronous support to create an async task that should run after the request. I think to make that fully work we would have to run under an ASGI server though, and transform all the views to properly run with it.
[snekbox] Branch update-eval-deps-script was force-pushed to `765f419`
forcepush was to reword the commit description to be clearer.
no breaking changes no problem
Should we also check that it's executable?
or not binary_path.is_file()
or not binary_path.stat().st_mode & 0o100 == 0o100
Should we move the resolve().as_posix() calls above so the pathlib calls below can make use of it? Or do they mutate the internal object (source of eldritch horrors)
[python-discord/bot] branch deleted: fix/tags-list-footer
Thanks for the PR!
Could you please remove the merge commit from the history? We try to keep a clean git history. As an example, you can run git rebase -i HEAD~2, then specify to drop the merge commit, and finalize the rebase, then force push your changes.
Connected!
Connected!
@classmethod
async def paginate(
cls,
lines: list[str],
ctx: Context | discord.Interaction,
embed: discord.Embed,
prefix: str = "",
suffix: str = "",
What about passing prefix='```\n', suffix='\n```' to the paginator? I feel that would heavily improve readability.
GitHub Actions run 8582185330 succeeded.
How come we don't make use of *args, **kwargs here? From my understanding we only update the emojis?
We only update the emojis indeed, but I prefer being explicit on what's being passed down as arguments.
What about passing
prefix='```\n', suffix='\n```'to the paginator? I feel that would heavily improve readability.
We could, and will, I just don't know which of the output samples I gave are more appreciated.
316f39e Use xargs over find -exec to ensure exit code i... - ChrisLovering
[python-discord/snekbox] branch deleted: update-eval-deps-script
My concern here is that this binds our own function's definition to discords function definition, and future updates in the library may break here without us noticing.
We could, and will, I just don't know which of the output samples I gave are more appreciated.
I like the first one more, but I would strongly prefer if all the messages were wrapped in a single codeblock, therefore the prefix and suffix suggestion.
This signature hasn't changed in ages.
I see your point, but the main changes needs to happen in bot-core as the downstream's method signature doesn't allow for extra arguments.
We could do that in a separate PR if you'd like ?