#dev-log
1 messages ยท Page 19 of 1
Connected!
Sentry Issue: SIR-LANCEBOT-BA
ValidationError: 1 validation error for RfcDocument
revisions
Input should be a valid string [type=string_type, input_value=1, input_type=int]
For further information visit https://errors.pydantic.dev/2.5/v/string_type
File "bot/exts/utilities/rfc.py", line 69, in rfc
document = await self.retrieve_data(rfc_id)
File "bot/exts/utilities/rfc.py", line 52, in retrie...
776776f Correctly type revisions as an int - ChrisLovering
Solves #1426 Soves SIR-LANCEBOT-BA
This was causing a pydantic validation error, was it was being passed a string.
The only place this is used internaly casts it to a string anyway, so no further changes were needed.
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?
- [ ...
GitHub Actions run 7460444940 succeeded.
I thought it would send an error embed on occasions like this rather than no output at all... I probably misremembered.
Connected!
Connected!
GitHub Actions run 7473848800 succeeded.
GitHub Actions run 7474916632 succeeded.
7984346 Bump sentry-sdk from 1.39.1 to 1.39.2 (#2882) - dependabot[bot]
44518d7 Bump sentry-sdk from 1.39.1 to 1.39.2 (#1428) - dependabot[bot]
65d5bb4 Bump more-itertools from 10.1.0 to 10.2.0 (#2883) - dependabot[bot]
Connected!
GitHub Actions run 7484475428 was cancelled.
Connected!
Connected!
GitHub Actions run 7484705540 succeeded.
GitHub Actions run 7493186821 failed.
GitHub Actions run 7498484940 succeeded.
GitHub Actions run 7498517783 succeeded.
GitHub Actions run 7498754889 succeeded.
GitHub Actions run 7499024300 succeeded.
GitHub Actions run 7500749249 succeeded.
GitHub Actions run 7501910825 failed.
GitHub Actions run 7504688503 failed.
Connected!
GitHub Actions run 7512376399 succeeded.
GitHub Actions run 7517521348 succeeded.
GitHub Actions run 7518152649 succeeded.
(Re: Hacky filtering on footer logos)
[...] and also poses a problem for implementing the dark theme
The alignment issue still exists, and it would be good if the linode logo green color is preserved, however there is no issue in dark theme caused by this ๐.
Sponsor logos are arbitrarily sized
This issue would be fixed in my dark theme PR (#1176).
https://www.pythondiscord.com/pages/tags/
The descriptions are truncated off, possibly from some word or character limit. It would be helpful if we add a ellipsis or "Read more" link at the end.
Since this is such a trivial issue I intended to fix it myself, but after a few minutes of failing to find where the description is truncated, I decided to leave it for others or later ins...
GitHub Actions run 7524918691 succeeded.
GitHub Actions run 7527288425 succeeded.
Connected!
GitHub API now provides information on whether the issue was closed as resolved or not planned via the state_reason key.
See example: https://api.github.com/repos/python-discord/bot/issues/2875
Rather than checking for a linked PR which could complicate implementation, we could maybe check for this instead and display either a purple closed icon or github's gray closed icon.
GitHub Actions run 7541810944 succeeded.
GitHub Actions run 7541894617 succeeded.
GitHub Actions run 7541984191 succeeded.
Most parts of the site that is reachable via links & buttons have been tested to look acceptable in dark mode, I'm marking this ready for review.
GitHub Actions run 7549874520 succeeded.
GitHub Actions run 7549907767 succeeded.
GitHub Actions run 7549962163 succeeded.
Elements in this image were placed in such a way so it looks the same as before (in light theme before this PR).
I changed all "black" icons in resources to use dark so they can show up correctly in dark theme. For some reason I couldn't make black icons show as white without writing the CSS manually.
The tradeoff is that they're all blurple now due to being links.
These colors were adjusted with accessibility in mind.
django-simple-bulma does not support including the default variables into per-theme variables, so those non-color related variables have to be repeated for dark theme.
It also doesn't support reusing of default Bulma variables, so we have to define it ourselves before using it (in which case I've copied Bulma's colors for it).
The sponsors section have been revamped so they can be displayed nicely readable in dark mode. This also happens to make their sizes more consistent for light mode (see #662).
Also see [relevant discord discussion](#dev-contrib message).
Read together with this comment.
GitHub Actions run 7550227304 succeeded.
GitHub Actions run 7551425653 succeeded.
GitHub Actions run 7555545390 succeeded.
GitHub Actions run 7555650848 succeeded.
GitHub Actions run 7555750168 succeeded.
GitHub Actions run 7555903875 succeeded.
GitHub Actions run 7556075902 succeeded.
GitHub Actions run 7563204023 succeeded.
This is really good! This review is just from me playing around with the site in firefox, on desktop. I'll try an have a check in chrome and on mobile when I get a chance, and have a better look at the code changes, but honestly i'm not sure i'll have much else to say since this seems great to me already!
Regarding
There is a latency in applying the current theme on page load, because this operation is only done after the page is loaded.
which causes a small flash on the page ...
Good idea.
A related improvement would be to do the truncation using css to cap it to a fixed height but avoid stopping in the middle of a line. A bit like this: https://codepen.io/Nuke66/pen/LgzRLW. That may be more complicated though, i'm not sure.
Yeah, since that exists now it's definitely the way to go. Marked as approved
cdb04b9 Bump python-frontmatter from 1.0.1 to 1.1.0 (#2... - dependabot[bot]
Connected!
Relevant erroring code is here:
https://github.com/python-discord/bot/blob/e33ec854c773f86be2b5bfb007bf87539616e9c4/bot/converters.py#L502-L519
The aim of it is to trick code editors into thinking the converters are the type they convert into so you get nicer auto completions and info on type hinting.
However, the trick only works in PyCharm last time I checked, and not VSCode, so it's not really that good.
I think we should change it to one of these options:
- Remove it complete...
The length trimming logic is in listing.js.
After spending some time debugging this in the browser, it seems it doesn't work properly in lines 20-23. Is it worth it to modify this script or would it be better to move the truncation to the backend?
A bit like this: https://codepen.io/Nuke66/pen/LgzRLW. That may be more complicated though, i'm not sure.
It looks a bit overkill, but if we're opting for it why not change the read more to an expand instead? The tags are used in the server anyway so they can't be several pages long. Tag content in the listing can then be truncated with a "expand" link/button which could expand to display the entire tag.
After spending some time debugging this in the browser, it seems it doesn't wor...
GitHub Actions run 7565288195 succeeded.
GitHub Actions run 7565334512 succeeded.
GitHub Actions run 7565379501 succeeded.
@wookie184
I think we can safely set the style sheets before the page is loaded by moving this code out of the DOMContentLoaded listener which should prevent flashing.
This is a great idea, I've applied the change, thanks!
The titles for projects in light mode are now lighter than they were before. I think this makes them harder to read as the contrast is lower.
This was actually the case for not just the project cards but almost all other box components throughout the site. ...
GitHub Actions run 7565876901 succeeded.
I think this should be handled in the template as well.
The "expand" idea is worth trying, but I also don't want to lose the direct links to tags.
GitHub Actions run 7565984823 succeeded.
GitHub Actions run 7569556890 succeeded.
I couldn't reproduce the FOUC behaviour for my devices and browsers I used, even on slower networks. However while working on my dark theme PR I noticed a lot of opportunities to improve performance.
The main ones:
- Minify large images, for smaller images the resolution can be reduced unnoticeably, and also the dimensions
- Or opt for better image formats where applicable
- This is especially problematic for images in the homepage hero. When a user visits a site for the first time ...
GitHub Actions run 7570211058 succeeded.
It's a rather weird and annoying issue that I have been experiencing for a few years.
On my iPad I can't get the "More" navbar-link item to show the dropdown, unless I long-press the word, which selects the More text, then the dropdown displays. After it is shown I can only hide it again after pressing a link. (Tapping in an empty space also fails to close it.)
Since we use Bulma I've tested this with the same device and browser on their live demo:
https://bulma.io/documentation/co...
Currently, the resources command allows to fetch certain resources with a specific topic.
The catch is: You need to know the different topics that we have.
This can be made easier by switching to a Slash command that allows auto completion whenever we input text.
Requirements
We'll need to expose an api that allows to fetch the resources and cache them, as they're not that prone to change.
If indeed we introduce a new resource to site, we can have a reload subc...
Currently resources are loaded and parsed etc. in the __init__ of the resources view here:
https://github.com/python-discord/site/blob/4ce61bddff9fd459b769305f302dcd9eb8ded395/pydis_site/apps/resources/views.py#L28-L36
I assume the intention here is for this to be run once on application startup, but in reality it seems this is run every time the /resources view is accessed. This leads to non-ideal performance. From sentry:
 - dependabot[bot]
GitHub Actions run 7577789900 failed.
Connected!
It looks a bit overkill, but if we're opting for it why not change the read more to an expand instead?
Yeah, I think the expand idea could work nicely, while keeping the individual tag pages. As for being overkill, I think it might actually be simpler to be able to replace the current listing.js logic that has to work out where to trim things with just some css to limit the size of the container so it doesn't all display.
5c805a5 Bump beautifulsoup4 from 4.12.2 to 4.12.3 (#1431) - dependabot[bot]
Connected!
Hi @minalike, are you still working on this, or has it been solved?
If it isn't, may I know whether the below is accurate and up-to-date as of writing?
How to suggest a new resource for inclusion
Opening an issue in meta repo with this link.
The review process for a new resource. Who reviews and approves these suggestions?
Is there any new in...
Now that I've read what you've said, I agree with you.
I'll close this then, thanks!
GitHub Actions run 7582439651 succeeded.
Hmm, I can't reproduce this anymore either, maybe because of #1161 or something similar?
I agree with you on the other points. I will update this issue for those
Actually skip that. I've found a reliable way to reproduce it:
- In Firefox, open devtools, then go to the network tab
- Select "Regular 2G"
- Force refresh
There should be a FUOC reproduceable using this method. Can you check?
Yes, with Firefox using Regular 2G throttling I can reproduce this. However anything above Regular 2G it does not happen. With Chrome-based browsers using network conditions equivalent to that of Firefox's Regular 2G I cannot reproduce FOUC either.
I wonder if this is less about our site performance and more about a Firefox bug.
Locally I tried out this fix, and it worked:
https://stackoverflow.com/questions/21147149/flash-of-unstyled-content-fouc-in-firefox-only-is-ff-slow-renderer
GitHub Actions run 7583911767 succeeded.
Wow, I didn't know that, but it does indeed seem to be a Firefox bug!
That's really annoying. And the fix is kind of strange... I wonder if
it's worth to include.
fda078e Bump emoji from 2.9.0 to 2.10.0 (#1432) - dependabot[bot]
d5a268d Revert "Bump emoji from 2.9.0 to 2.10.0" - wookie184
Reverts python-discord/sir-lancebot#1432
GitHub Actions run 7584546899 succeeded.
Connected!
Connected!
Connected!
Connected!
GitHub Actions run 7586241644 succeeded.
Someone leaking their bot token by accident in โ #python-discussion had gotten me thinking - would it be possible for the bot to automagically invalidate bot tokens, similar to GitHub's secret scanning, as a precautionary security measure? Putting myself in the shoes of a malicious actor, wouldn't it be trivial to run a self-bot in the server which awaits tokens, authenticates as them and performs automated malicious actions?
[Relevant discussion in #community-meta](https://discord.com/...
Firstly I believe the overall frontend performance can be improved.
Now since this fix targets specifically for firefox users on an incredibly slow connection, it's a matter of comparing the user experience for this audience:
- Blank screen, shortly after, unstyled content loads first, then some time later the styles are loaded and applied. (if we don't include the fix)
- Blank screen, a long time later the entire page loads together. (if we include the fix)
If the overall fronten...
If you have nothing set in localstorage and are on a system that prefers dark mode, the site will display in dark mode, but you have to click twice to change to light mode.
I believe this is because getCurrentTheme will return light here if there is nothing in local storage even if the current theme is dark mode because of system preference. Passing the systemPrefers argument here should fix it.
Tested this out on firefox/chrome on desktop and on firefox on my phone and all seems good. Just one minor thing I noticed then this should be good as far as i'm concerned.
This is a good catch.
Your suggested solution does fix it. However after implementing it I decided that it made the logic and integration with getCurrentTheme it little complicated.
In the switch toggle our intention is to toggle the current theme. Since the data-theme attribute is set for all of system preference changes, switch clicks, and page loads, why not check for that instead? It makes the code cleaner and more explicit IMO. And it cannot, ever, contradict what the user actu...
GitHub Actions run 7592438784 succeeded.
By the way, I am observing flash of unstyled content when I change the system preference and have the site automatically adapt to the new theme. It might have been caused by me fixing FOUC for switch toggle clicks, and FOUC on page loads.
I will probably not be fixing this for two reasons:
- No idea how to fix for now
- This feature is probably used much less often than the switch toggle, I only implemented it for completeness
If anyone has a fix though, I would gladly apply it.
Closes #494
Todo
- [ ] Finalize layout
- [ ] Get all the content to put
- [ ] Get all the assets
- [ ] Ensure content is up to date
GitHub Actions run 7592734755 failed.
GitHub Actions run 7592760864 succeeded.
GitHub Actions run 7593230585 succeeded.
GitHub Actions run 7593376356 succeeded.
GitHub Actions run 7593415059 succeeded.
GitHub Actions run 7600526805 succeeded.
GitHub Actions run 7606934461 succeeded.
GitHub Actions run 7607813333 succeeded.
GitHub Actions run 7607844617 succeeded.
GitHub Actions run 7610172520 succeeded.
GitHub Actions run 7610513378 succeeded.
GitHub Actions run 7611433017 succeeded.
GitHub Actions run 7614313105 failed.
Connected!
Connected!
GitHub Actions run 7618980932 failed.
GitHub Actions run 7619542445 failed.
GitHub Actions run 7621403650 succeeded.
GitHub Actions run 7624580120 succeeded.
Connected!
Connected!
Connected!
Connected!
Connected!
GitHub Actions run 7634199657 succeeded.
Connected!
GitHub Actions run 7634214494 succeeded.
GitHub Actions run 7635798679 succeeded.
I believe changing the regex to (https?://[^\)\s]+) will produce the desired result.
Regex101 test cases:
(https?://\S+)(original)(https?://\S+[^\)])(proposed by Senjan21)(https?://[^\)\s]+)
If no one objects, I can implement this fix.
GitHub Actions run 7638756613 succeeded.
GitHub Actions run 7640929851 succeeded.
This bumps various actions in CI, and upgrades the pre-commit version used locally.
Sounds good to me though am not an expert on regex, I assigned you for this issue so feel free to work on it. ๐
I'm not 100% sure about this. In some cases a mod may want to ban the author of a thread (in the thread) and also issue infractions or send a message to others interacting in the thread.
Automatically closing the thread would make this sort of awkward. If a mod sends another message it will reopen the thread, and then it would never close unless reclosed manually. It's also a bit confusing to have messages after the thread closed message.
If this was a common enough issue I guess it m...
pandas now uses ~60MiB just to import, so the previous max was no longer enough.
We have enough memory to spare in the production cluster for this bump
ea6c01d Bump python-dotenv from 1.0.0 to 1.0.1 (#1436) - dependabot[bot]
Connected!
9d4b4df Update URL regex in embed filter (Fix #2895) - lemonyte
GitHub Actions run 7651463708 succeeded.
GitHub Actions run 7653385874 succeeded.
GitHub Actions run 7657385511 failed.
GitHub Actions run 7657546224 failed.
GitHub Actions run 7657640314 failed.
GitHub Actions run 7657779810 succeeded.
GitHub Actions run 7662192724 succeeded.
Tested, works nicely.
Just a note for reviewers, a good test case for this is a twitter link. Not all links will produce the issue because it has to be a rich embed. I tested with this: [example](https://twitter.com/ThePSF/status/1526895412732370945)
Connected!
Description
We require Python 3.11.* now, Gitpod config should be updated to have pyenv install the correct version.
Steps to Reproduce
- Initialize env using gitpod
- Wait for poetry's incompatible version error to show.
Expected Behaviour
Successful initialization
Actual Behaviour
Incompatible version error
Known Impacted Platforms
n/a
Possible Solutions
Update .gitpod.yml to use the correct version during setup.
8cecc07 Add Spammer field to user info embed. - swfarnsworth
If the command is evoked in a mod channel, the resultant embed will display whether the user in question has been flagged by Discord as a spammer. This is potentially useful for evaluating reports of suspicious DMs.
Here it is when run in a moderator channel
And in a public channel
GitHub Actions run 7675888115 failed.
At the current state, I don't see any flaws in this PR, besides the failing test.
After that's fixed, we should be good to go.
GitHub Actions run 7676085347 succeeded.
Heya,
Can I suggest adding an interpreter embed. The amount of times we have to explain VSCode selecting interpreter / the right terminal python version activated is relatively high. All the threads "I pip installed it but the module is still not found" can be started with a link to this embed, it will explain the basics on how to set it up and pip install in the right environment. There are always a few cases where this won't be enough, but in that case we have to debug and find out more ...
While I agree that it is a common issue, I think adding a tag for it might not be helpful because 1) the solution can vary a lot based on circumstance, and 2) many details would have to be cut for it to fit in a tag.
You could try guiding them to an external resource which goes into more detail since length is less of an issue (such as this one that I wrote a while back), but you should keep in mind that it won't cover e...
Hi @hedyhli. This PR is absolutely beautiful work, and it's maybe one of the best PR descriptions I've ever seen in my entire career of managing software developers. Bravo. ๐๐ผ ๐๐ผ
The code is well documented, well implemented, and you've been extremely thorough. I have notes, but they are all cosmetic notes and everything in this PR is more or less perfectly implemented already.
The colors
My main complaint is simply that I'm not a big fan of the colors.
Darker background
...
As it turns out, the spammer flag can't be relied upon.
Really appreciate this @lemonsaurus. โค๏ธ
I agree on some of your points. I didn't have much confidence in the colors in this PR; partly due to it being my first time designing for dark mode and also due to the worry of the code being a bit too messy if I customize for dark mode too much (because of Bulma's limitations). However, I am glad you included suggested colors.
I think the background should be darker, and there should be more contrast between the background and the cards, for e...
GitHub Actions run 7682426829 succeeded.
The site uses premium icons, but not all icons we use are premium.
Sometimes it is helpful for us to get a sense of how the icons look like, for free icons, when developing locally. This is especially so in PRs that involve colors or adding icons, such as #1210. My workaround is to change the fontawesome_token setting myself, but this is annoying when having to commit multiple changes together (especially when a change in settings.py is involved as well) -- to stage by-patch.
I propos...
All done now!
I won't be accepting any more suggestions unless they are blatantly obvious and uncontroversial. Should be ready to merge.
GitHub Actions run 7685395121 succeeded.
Approval for good luck
:shipit:
GitHub Actions run 7685579332 succeeded.
I may be misremembering but I think our font awesome license is from a former staff member that hasnโt been on the server for a while. Shouldnโt we then maybe instead try to use free icons (possibly not from FA)?
Switch button in light mode
lemon pointed out in the initial dark theme PR that the background color for the switch in light mode doesn't really fit that well.
Although, I personally think it's not too bad, and I'm not sure what a better color could look like.
Timeline icon pastel colors
The icons in the timeline use pretty bright pastel background colors. We could adapt them for the dark mode, such as this example given by lemon:
 - wookie184
3f499d3 Fix pydantic warning in test due to deprecated ... - wookie184
0cf5a72 Bump lxml from 5.0.0 to 5.1.0 (#2881) - dependabot[bot]
7984346 Bump sentry-sdk from 1.39.1 to 1.39.2 (#2882) - dependabot[bot]
65d5bb4 Bump more-itertools from 10.1.0 to 10.2.0 (#2883) - dependabot[bot]
GitHub Actions run 7687939617 succeeded.
The changes you're making seem reasonable to me, but I the thing I don't understand is why the tests that were run in the CI here don't include this fixed one. I mean, you're not adding the test, it should've been running even on main, right? It just wasn't a good test yet. So what am I missing? Cause I looked at the CI run and I don't see it there.
The changes you're making seem reasonable to me, but I the thing I don't understand is why the tests that were run in the CI here don't include this fixed one. I mean, you're not adding the test, it should've been running even on main, right? It just wasn't a good test yet. So what am I missing? Cause I looked at the CI run and I don't see it there.
I don't think CI outputs each test that was run, just some dots: https://github.com/python-discord/bot/actions/runs/7371282307/job/200584997...
Guess I just missed it, sorry. ๐ง ๐ ๐งโโ๏ธ ๐ช
Closing in favor of recreating within a new PR.
Closing in favor of recreating within a new PR.
Closing in favor of recreating within a new PR.
4d1ba10 Capitalize "Discord" in header; Change print st... - swfarnsworth
96038fd Rewriting of non-code sections. - swfarnsworth
36f1aa2 New tag to explain why == True et al are wrong. - swfarnsworth
8f5a763 Bump rapidfuzz from 3.6.0 to 3.6.1 (#2870) - dependabot[bot]
0ff5fad Revert 'Code goes here on a new line' to 'Hello... - swfarnsworth
GitHub Actions run 7689167881 succeeded.
792163e Add 'n' alias and 'nom' root alias to 'nominate... - TizzySaurus
b37c18d Bump rapidfuzz from 3.0.0 to 3.1.1 (#2634) - dependabot[bot]
a5ee8de Bump pydis-core from 9.6.0 to 9.7.0 (#2638) - dependabot[bot]
0091e1e Bump pytest from 7.3.1 to 7.3.2 (#2636) - dependabot[bot]
4b3e42c Bump pydantic from 1.10.8 to 1.10.9 (#2635) - dependabot[bot]
Connected!
GitHub Actions run 7689178313 failed.
GitHub Actions run 7689198580 succeeded.
I haven't used contextlib in a bit. Would it be acceptable to do something such as
with contextlib.suppress(Forbidden):
await handle_forbidden_from_block(e_val, message)
return
Yeah, I think that would be good.
The behaviour of handle_forbidden_from_block is pretty confusing, so I think it would be good to clear things up with a comment.
with contextlib.suppress(Forbidden):
# Attempt to handle the error. This reraises the error if's not due to a block,
# in which case the error is suppressed and handled normally. Otherwise, it was
# handled so return.
await handle_forbidden_from_block(e_val, message)
...
GitHub Actions run 7689399748 succeeded.
f10aea9 Handle adding reactions to messages from users ... - TizzySaurus
Connected!
GitHub Actions run 7691655357 succeeded.
GitHub Actions run 7695849614 succeeded.
GitHub Actions run 7695858032 succeeded.
GitHub Actions run 7695869093 succeeded.
6ba1588 Fix test code that was doing nothing - wookie184
3d28a85 Update URL regex in embed filter (#2896) - lemonyte
2e49e1b Merge branch 'main' into fix-incorrect-test - wookie184
88f020a Merge pull request #2871 from python-discord/fi... - wookie184
f10aea9 Handle adding reactions to messages from users ... - TizzySaurus
GitHub Actions run 7698465174 succeeded.
Connected!
GitHub Actions run 7701688589 succeeded.
GitHub Actions run 7701799750 succeeded.
Connected!
GitHub Actions run 7701825371 succeeded.
Connected!
GitHub Actions run 7701959036 succeeded.
Connected!
I may be misremembering but I think our font awesome license is from a former staff member that hasnโt been on the server for a while.
I believe we switched to using the free plan so we control the token now.
The site uses premium icons, but not all icons we use are premium.
Are you sure? I thought we only have the free plan.
Anyway, this proposal sounds sensible, though I don't really understand how fontawesome works. Currently icons seem to display normally in development fo...
Some of the entries on the resources page don't have titles, for example:
It would be nice to give them a title to go alongside the icon.
Are you sure? I thought we only have the free plan.
Ah, I asked this question in dev-contrib ~years ago~ and Scale told me we use premium icons. I guess this is no longer the case.
Ref: #dev-contrib message (turns out it's just last year)
Currently icons seem to display normally in development for me, so would this be for when you want to use an icon that the site doesn't use already, and it's then that it would b...
It seems to work for localhost (what i've always used) but not 127.0.0.1. Maybe it's only localhost that we set as allowed.
I'm also not sure why we'd need to limit it. I see a list of reasons here https://blog.fontawesome.com/protecting-your-kits-with-domains/ and none of them obviously seem to apply to us. I'll try and find out who has control over it at the moment.
GitHub Actions run 7704416787 succeeded.
GitHub Actions run 7706591031 succeeded.
87e571c Bump aiohttp from 3.9.0 to 3.9.2 (#1438) - dependabot[bot]
Oops, didn't mean to re-request your review wookie. Apologies.
Connected!
GitHub Actions run 7709878539 succeeded.
Okay, so:
- I have access to the kit, and can make changes to it.
- But, there's no domain restriction for testing domains like
localhost, they are always allowed by default. - The reason it works on our website and not locally is probably because we are way over the included usage limits. we're at almost 20,000 views, only 10,000 are allowed, so then it's gonna fail "some of the time" according to FontAwesome. That explains the flakeyness we've seen in this thread.
My proposal for a ...
>>> import re
>>> print(re.search("\b tree\b", "christmas tree"))
None
>>>
``` ??
cd24680 Bump ruff from 0.1.6 to 0.1.7 (#1406) - dependabot[bot]
36a571a Bump emoji from 2.8.0 to 2.9.0 (#1407) - dependabot[bot]
3412955 Bump pre-commit from 3.5.0 to 3.6.0 - dependabot[bot]
5828147 Merge pull request #1409 from python-discord/de... - shtlrs
fda26d1 Bump pydis-core from 10.4.0 to 10.5.0 (#1408) - dependabot[bot]
GitHub Actions run 7712199264 succeeded.
Is this still up for grabs?
Is this still up for grabs?
Yep! Would you like me to assign you?
Yep! Would you like me to assign you?
Yes please!
d4ae0cd Only flag on Christmas trees - shenanigansd
d4ae0cd912e3a8c5d01e1141c4ba79313d3b824f
GitHub Actions run 7713563911 succeeded.
Updated to only react specifically to trees of the Christmas variety.
Screenshot:
Relevant Issues
Closes #502
Description
- Rewrote the riddle command to use discord's wait for function.
- Game ends when someone enters the correct answer.
Did you:
- [x] Join the Python Discord Community?
- [x] Read all the comments in this template?
- [x] Ensure there is an issue open, or link relevant d...
It looks like FA has a django plugin, which could make this quite simple https://fontawesome.com/docs/web/use-with/python-django#add-the-font-awesome-free-requirement-and-app
GitHub Actions run 7714828716 succeeded.
Connected!
GitHub Actions run 7716014695 succeeded.
Connected!
Connected!
Hello @ChrisLovering, let's get this rolling. I don't have any feedback at the moment, but I hope to provide some in the near future.
Merged and released in 10.6.0
This seems like quite a nice approach to dealing with this. One that may even be suitable for adding to D.py itself!
If you're interested in wokring on this yourself @shtlrs please do go ahead!
7d306e6 Add the a user_has_access helper function to in... - ChrisLovering
Since there can only be one winner now, there's no need for it to be a list (and since it's only used in this function it doesn't need to be a class variable)
I don't think this will work as wanted, if you keep sending incorrect answers it will reset the timeout each time and keep running.
It looks like there are some style changes unrelated to the PR, ideally these should be avoided.
the parens around the s for pluralizing "tree" are unnecessary, but it might be slightly more readable with them
I think making the trees group optional makes this match on just "christmas".
is that a problem? a christmas tree seems to a good reaction for christmas, and it's the only one present
I think making the trees group optional makes this match on just "christmas".
That's also the current behavior of the regex.
In that case there's no point mentioning tree in the regex, it can just have the christmas bit
If the role from the loaded in config can't be found, then the &aoc ct to do the initial toggle-on fails. I think it would be better to output the error somewhere visible for admins/the Event Runner to see if this occurs. It does get logged, but it wouldn't be obvious for a few minutes that something was wrong and to check the logs. I think outputting to devlog like we do for leaderboard errors makes sense.
Otherwise everything works well and as expected. I wasn't able to test the schedu...
GitHub Actions run 7721663479 succeeded.
Relevant Issues
- Closes #1437 and #916.
Description
- Use python 3.11 as required by poetry
- Fix poetry install error on workspace refresh
All relevant info is detailed in the linked issues.
Testing
- Open gitpod workspace using this repo
- Ensure auto-setup finishes successfully
- Close workspace and wait for it to reset (not sure if there's a faster way, but this means wait for about 1hr before reopening)
- Reopen workspace
- Ensure auto-se...
GitHub Actions run 7722182280 succeeded.
If the role from the loaded in config can't be found, then the
&aoc ctto do the initial toggle-on fails. I think it would be better to output the error somewhere visible for admins/the Event Runner to see if this occurs. It does get logged, but it wouldn't be obvious for a few minutes that something was wrong and to check the logs. I think outputting to devlog like we do for leaderboard errors makes sense.Otherwise everything works well and as expected. I wasn't able to test the ...
6cb0e2c Bump sentry-sdk from 1.39.2 to 1.40.0 (#1443) - dependabot[bot]
GitHub Actions run 7726200225 was cancelled.
Connected!
GitHub Actions run 7726253647 succeeded.
ac9d7eb Bump pydis-core from 10.5.1 to 10.7.0 (#1442) - dependabot[bot]
@shtlrs bot-core 10.7.0 has been released now, we can merge this once that's bumped
Connected!
Connected!
GitHub Actions run 7726966897 succeeded.
Connected!
GitHub Actions run 7727282383 succeeded.
For creating tasks we now use pydis_core.utils.scheduling.create_task , which handles creating tasks.
However, we don't use it for perpetual tasks any more, so I don't think retrying is that important for most uses, and in some cases could cause more problems that it solves. Ideally retrying logic should be as precise as possible (e.g. retrying an individual request...
GitHub Actions run 7727427934 failed.
GitHub Actions run 7727462889 failed.
GitHub Actions run 7727504022 succeeded.
You don't need to set winner to None anymore since it's a normal variable
self.current_channel = None
Works nicely, I have two minor comments
I don't think you need this if any more now it's in the check.
winner = response.author.mention
break
Works nicely, I have two minor comments
I've added the suggestions to the tree.
Looks great, thanks for the PR!
GitHub Actions run 7728253511 succeeded.
Connected!
can't test, but compared to how our other bots do it. Looks good
Please assign this to me
Please assign this to me
Done ๐
Connected!
GitHub Actions run 7729201775 succeeded.
GitHub Actions run 7729408772 succeeded.
I don't think this is an issue any more, as all the clients used are guaranteed to be created before they are used:
- For the Discord one: Extensions are loaded from discord.Client.setup_hook which is called after the client is made
- For the main bot one: It's passed in before the bot instance is even made https://github.com/python-discord/bot/blob/e5bab98908f57686a71cae91da13655d56be1f66/...
Would it be nice to have a command that tells you whether the toggle is on/off ? Or would just toggling it twice suffice ?
Yea toggling twice was my thought, since it's rarely going to happen anyway.
f8aa8e6 Allow events lead to toggle completionist task - ChrisLovering
Just realised I never gave event leads access to run this command, added a small commit to fix this.
GitHub Actions run 7738856556 succeeded.
1fc5bcf use paginator from botcore - shtlrs
The LinePaginator has been migrated to pydis_core
The changes here are simply to reuse the paginator from the core lib.
GitHub Actions run 7739471018 succeeded.
GitHub Actions run 7740005509 succeeded.
37aa77b Refactor AoC tasks to use pydis_core scheduler - ChrisLovering
2d30955 Move all AoC caches to the _caches module - ChrisLovering
7035761 Remove unused function - ChrisLovering
48be17e Add command to toggle issuing completionist role - ChrisLovering
de4de26 Fix the with_role check never returning true - ChrisLovering
Connected!
Connected!
583fc3a bump version to 1.7.0 in pyproject.toml - shtlrs
It seems we forgot to bump the version in the last release.
1546d7b bump version to 1.7.0 in pyproject.toml (#203) - shtlrs
GitHub Actions run 7741202962 succeeded.
Toggle command was aded in #112. We've decided that increase the time between checks for issuing completionist roles isn't needed anymore due to the use of the cache.
@ChrisLovering I started working on this, and one thing I'm wondering is how'd we want to register handlers ?
Do we want to do it a la discord.py ? Where we walk some modules/packages look for some method to register them ?
Or do we just register them by hand, one by one ?
If we go with option 1, I think the loading can be done synchronously since they're simple classes to setup with no equivalent of cog_load, and it's not like we'll be having millions of handlers.
I think we want it to be something that needs to be called manually, rather than walking them.
That way cogs can register error handlers, or in the setup_hook of bots we can register generic handlers.
That way cogs can register error handlers,
Do you mean like we have a cog that's responsible for registering these handlers ?
or in the setup_hook of bots we can register generic handlers.
The way I have it write now, is that the container class needs to have a default handler passed to it upon instantiation, to ensure we'll always fallback to it.
It's also there because the container exposes a register_handler method to register handlers, and I didn't want to do any non-...
I'm not sure I fully understand the proposal in this issue, but i'm not sure what the benefit of being able to have lots of error handler classes is.
Would it not be simpler to have only a base ErrorHandler cog in bot-core, and then inherit from that in individual projects to add project-specific behaviour?
I'm not sure I fully understand the proposal in this issue, but i'm not sure what the benefit of being able to have lots of error handler classes is.
The benefit is to be able to
- Deflate the error cog and extract each specific logic to its own class, making it easier to change/extend
- Being able to use the same instance of the error handling for both text command & app commands, as that's not currently possible.
Adds the "**These are backticks, not quotes.** ... message to the response for pasting code with no ticks. This message is relevant for the context and will hopefully mean the bot/helpers/other users won't have to send another set of messages to convey the difference between backticks and quotes
GitHub Actions run 7744988717 succeeded.
This also updates the URL to ignore > charaters
GitHub Actions run 7747103115 succeeded.
GitHub Actions run 7747128858 succeeded.
Connected!
Hello,
Was this discussed beforehand with a core developer, or in an issue? If not, please next time get approval from a core developer before creating a PR.
See this page on how to contribute to this repository.
Thanks!
5e9047f Bump emoji from 2.10.0 to 2.10.1 (#1445) - dependabot[bot]
Connected!
GitHub Actions run 7751983341 failed.
GitHub Actions run 7752611207 succeeded.
Tested, works as expected.
:shipit:
@sarzz2 Hey, just checking up. Will you be continuing this PR?
Thanks!
@sarzz2 Hey, just checking up. Will you be continuing this PR?
Thanks!
Yes, been a little busy with work lately. Planning to do it by next week.
GitHub Actions run 7754903562 succeeded.
Hello,
Was this discussed beforehand with a core developer, or in an issue? If not, please next time get approval from a core developer before creating a PR.
See this page on how to contribute to this repository.
Thanks!
ok my bad, should I close this?
GitHub Actions run 7758714157 succeeded.
Connected!
Connected!
An alternative solution would be to send a message whenever the author leaves the server (whether through a ban or not), but not automatically close it. Thoughts?
Just to put my thoughts here, I think sending a message would definitely be a better way to handle this without being overly-intrusive in the thread.
4d1ba10 Capitalize "Discord" in header; Change print st... - swfarnsworth
96038fd Rewriting of non-code sections. - swfarnsworth
36f1aa2 New tag to explain why == True et al are wrong. - swfarnsworth
c80e19c download pull request artifact with curl - shtlrs
1b42d90 Merge pull request #2855 from python-discord/do... - jchristgit
80d20db Use the new mailing lists API to track news (#2... - shtlrs
GitHub Actions run 7765340618 succeeded.
Are we good to go on removing the do not merge label?
Connected!
GitHub Actions run 7765816629 succeeded.
Connected!
Sentry Issue: BOT-3N1
AttributeError: 'NoneType' object has no attribute 'fetch_message'
File "bot/exts/moderation/modlog.py", line 689, in on_raw_message_edit
message = await channel.fetch_message(event.message_id)
Unhandled exception in on_raw_message_edit.
29d3da5 Fix modlog event being in a non-cached channel - ChrisLovering
Solves #2910 Solves BOT-3N1
GitHub Actions run 7766289674 succeeded.
Description
I'd like to propose that the heart emoticon currently used for Valentines be expanded to include the many other colourful hearts available.
Reasoning
Fun and a thrilling sense of risk; never knowing which heart will be used.
Proposed Implementation
It looks like the random selection of an emoticon is already implemented in the logic. This change would include simply adding the additional choices to the list.
Sentry Issue: BOT-3FF
KeyError: AtomicList(id=4, created_at=, updated_at=, name='domain', list_type=, defaults=Defaults(actions={'remove_context': RemoveContext(remove_context=True), 'send_alert': SendAlert(send_alert=True), 'infraction_and_notification': InfractionAndNotification(dm_content='Your message has been removed because it contained a blocked domain: `{domain}`.', dm_embed='', infraction_type=, i...
3e9a98b Ensure filter list is present in previously tri... - ChrisLovering
Solves #2912 Solves BOT-3FF
This check was rpeviously present, but removed in this commit https://github.com/python-discord/bot/commit/8f2f188cee48096aebf5b7aeff04d632643dc7be
GitHub Actions run 7770067632 succeeded.
f45ea54 Snekbox: truncate blocked file extensions - MarkKoz
Avoid Discord's character limit for messages.
Fix #2464
This is the same as before. I just refactored it into its own function.
GitHub Actions run 7770662000 succeeded.
If all extensions are too long then it will just show .... I think this is fine but it's also possible to completely omit : **{blocked_str}**" in such case.
Add the thrill of never knowing which heart might be used during Valentines holiday event reactions.
Relevant Issues
Closes #1447
Description
Did you:
- [x] Join the Python Discord Community?
- [x] Read all the comments in this template?
- [x] Ensure there is an issue open, or link relevant discord discussions?
- [x] Read and agree to the [contributing guidelines](https://pythondiscord.com/pages/contributing/contributing-g...
GitHub Actions run 7771242423 succeeded.
I love what you've done with the place!
formatting nit: I would align the comments -- the first two are farther out than the rest
automated malicious actions could also just get the user/bot banned
GitHub Actions run 7777137106 succeeded.
GitHub Actions run 7780182343 succeeded.
GitHub Actions run 7788736941 failed.
GitHub Actions run 7792655839 failed.
GitHub Actions run 7794078521 succeeded.
GitHub Actions run 7794418834 succeeded.
GitHub Actions run 7794412801 was cancelled.
GitHub Actions run 7794992657 succeeded.
GitHub Actions run 7797321195 succeeded.
GitHub Actions run 7797914054 failed.
Steps to Reproduce
- Run a help command in DM
- Click on the trash emoji
If we have the emoji there, users would expect it to delete the help embed, however it does not do anything currently.
Known Impacted Platforms
It's probably the same, but I only tested on iOS for now.
- Web
- Desktop
- Android App
- โญ๏ธ iOS App
Possible Solutions
If it's not possible or infeasible to actually implement this, there shouldn't be a trashcan reaction there at all. It c...
Hi @hedyhli, all of that looks good to me! I've unassigned myself from the issue, feel free to take over.
Alright! I'll work on it then.
To help track this down, when the MESSAGE_REACTION_ADD event is fired from the gateway, discord.py calls the parse_message_reaction_add
The reaction_add event is dispatched only when the user variable is not None in this line
user = raw.member or self._get_reaction_user(message.channel, raw.user_id)
Since this is a DMChannel, the user is fetched from the _users cac...
The second note in the docs mentions this behaviour with the event, so option 1 doesn't seem worth persuing
I have completely missed that :/
Yeah well, i guess we have our answer
A little update on this issue since the dark theme has been merged.
Hacky filtering to turn logos into white logos
We now have dark versions of logos for django and linode in our static assets made by lemon. It should be relatively easy to add one for Bulma.
Sponsor logos are arbitrarily sized
This issue is now fixed IMO. All sponsor logos in the first two rows take up the same height and 1/3 of the total width. Netlify and Cloudflare use the same width as others but share the...
1aab7a3 Bump sentry-sdk from 1.40.0 to 1.40.1 (#2915) - dependabot[bot]
GitHub Actions run 7811321529 succeeded.
GitHub Actions run 7811312871 was cancelled.
Connected!
Connected!
GitHub Actions run 7813062027 succeeded.
Closes #497.
Added:
- A link to open an issue in the meta repo, with appropriate issue template, for viewers.
- Docs in the readme with guidelines for the YAML files, for contributors.
Third point from the issue:
The review process for a new resource. Who reviews and approves these suggestions?
Is this necessary? Is there a review process we should document here?
GitHub Actions run 7813932293 succeeded.
GitHub Actions run 7814455275 succeeded.
Currently, under somewhat specific circumstances the bot might result in few Cogs/Extensions not being loaded if site will drop the connection or otherwise will fail to return relevant information to the bot. Most notably the bot will not load filters cog, superstarify, reminders and python_news.
This issue happens with no indication of a failure to moderators as such bot might end up in a state where filters will be disabled and mods will be none the wiser.
The bot should:
- Alert mo...
The cogs won't have been loaded because there was an unhandled error in the async cog_load function.
We should update cogs that rely on site being availalble during cog load to handle errors like this, and retry a few times, with some backoff logic, to be resiliant to temporary site outages.
If the bot still can't load the cogs after a number of attempts, we should then raise an error so that it appears in sentry and can be actioned.
GitHub Actions run 7822122092 succeeded.
Wonderful. All is good, all is well.
35a2fd3 Add additional heart emoticon options for react... - Preocts
Connected!
GitHub Actions run 7822511005 succeeded.
Connected!
GitHub Actions run 7825430625 succeeded.
GitHub Actions run 7827763759 failed.
GitHub Actions run 7827848564 succeeded.
Connected!
GitHub Actions run 7840589494 failed.
GitHub Actions run 7840607018 succeeded.
1383143 Fix modlog event being in a non-cached channel ... - ChrisLovering
GitHub Actions run 7840670538 succeeded.
Connected!
GitHub Actions run 7842835831 succeeded.
GitHub Actions run 7843657661 succeeded.
GitHub Actions run 7847611868 failed.
GitHub Actions run 7847740106 failed.
GitHub Actions run 7847776121 failed.
GitHub Actions run 7847831772 failed.
GitHub Actions run 7848015335 succeeded.
GitHub Actions run 7848612176 succeeded.
d95fedb Bump sentry-sdk from 1.40.2 to 1.40.3 (#2919) - dependabot[bot]
941979f Bump sentry-sdk from 1.40.2 to 1.40.3 (#1453) - dependabot[bot]
Connected!
Connected!
0a7b5c3 Reminders: show update timestamp - MarkKoz
There are subtleties here I'm not sure were addressed. You created a single constant in a separate file, but some of the constants it replaces aren't the same, and some of them are used in specific ways:
Here, again there are groups which aren't the same in the new constant (I think there might be an unrelated bug here anyway, this might benefit from a named group). Additionally, there are trailing slashes here because this pattern is used in a fullmatch, rather than a search or a finditer. There might be a saner way to do what this currently does, but I don't think it's handled by the change.
Here, there's a group around everything after http://, and below .group(1) is used to reference it. In the new constant, the group includes the http part. This probably creates some issues in the matching Filter subclass.
Looking back at this I'm not entirely sure what's going on. None of the filters in this list trigger on DMs.
I'd like to note that for the linked issue, the bug would happen even if we used Context. The bug happened because we tried to issue an infraction from a type of channel that was unaccounted for.
I'm ok with trying to clean this up. This was a hack I wrote because I didn't always have a Context to work with, such as in the case of on_voice_state_update. If you have a better idea I'm happy to discuss it, but the current solution is the least hacky thing I could come up with.
Connected!
This can be solved using django AppConfig.ready() method. If no one is working on it, I can patch it.
Closes #1209
Changes
Loading the resources file in the app config which runs only once per startup instead of doing it on very request send to the resources view.
GitHub Actions run 7860357408 succeeded.
Hey,
Can I continue on this issue if it's still in demand?
GitHub Actions run 7862425841 succeeded.
Quite nice, thank you !
9fb2cb0 Ensure filter list is present in previously tri... - ChrisLovering
Connected!
I was going to leave it as list[dict] but thought I might as well expand it further. Didn't want to make a full model since site might change and I don't want ot have to maintain it in two places
- There was a space after
editin the name, so that's why it failed. I only ever tested with theealias. Fixed now. - Fixed this too
I'll add this info to the user command when ran in mod channels
Yea might as well, blocked that.
There's overlapping between what errors can be returned by what endpoint, so this was the easiest, and most extensible way i could think of doing this
GitHub Actions run 7863332683 succeeded.
Sure! I've assigned you.
GitHub Actions run 7870549220 succeeded.
Perfect thanks! Almost done :)
Relevant Issues
Closes #707 if approved.
Description
- Added 4 commands to fun.py to output a string in different cases to add to the already existing .randomcase
pascalCase, CamelCase, snake_case, SCREAMING_SNAKE_CASE
.pascalcase aliases [.pascal .pcase]
.camelcase aliases [.camel .ccase]
.snakecase alias [.scase]
.screamingsnakecase aliases [.screamsnake .ssnake .screamingsnake] - Added a helper function in utils/helpers.py to attempt to strip a ...
GitHub Actions run 7871224904 failed.
GitHub Actions run 7871498326 succeeded.
This is just a code review, didn't test this yet.
All these functions are following the exact same rules to convert the text, with the exception to the conversion_func.
This counts as them all duplicating the knowledge of text cleanup/conversion, which is something we don't want to have.
You could make a private function to the cog, that takes in the ctxt, text, conversion_func as parameters, and just call it in the command callbacks with the separate conversion definitions.
GitHub Actions run 7871992672 succeeded.
GitHub Actions run 7872436504 succeeded.
Noted.
I've taken your feedback and extracted that bit of code into a function to then call the function.
I hope this is what you meant. :)
Any more feedback is appreciated.
GitHub Actions run 7873453202 succeeded.
GitHub Actions run 7878068118 succeeded.
Connected!
Talked with Robin, consensus was to put this up for grabs such that the feature would be done faster.
GitHub Actions run 7879616595 succeeded.
Now that #2580 and https://github.com/python-discord/bot-core/pull/177 is merged, is this issue still relevant, or are we still encountering it?
Discord discussion:
#dev-contrib message
The addition of dark mode prompted the need for some notes on the best practices in adding/updating colors and CSS styles in the future. This includes:
- Images for content pages (#1215)
- Resources images (#1226)
- Making use of bulma classes so light/dark mode colors can be applied based on the theme (see settings.py and CSS directory readme)
- Image assets (images directory re...
GitHub Actions run 7882672545 succeeded.
This has become quite annoying while working on my other PRs. I'll solve this myself by implementing wookie's idea if there are no further comments.
34ffbba Switch to Font Awesome django plugin - hedyhli
Closes #1213.
Motivation:
- Show icons in development
- Drop dependency on lemon's fa kit
- Ensure icons are always shown in production (due to having surpassed kit views limits)
- More control over the static assets for font awesome
GitHub Actions run 7883804782 succeeded.
In previous version of voice verification, users had to run a command which then would be deleted by the bot in order to get a voice verification. Deletion of said message would be logged in a channel, as a side effect that allowed moderators to later tell apart people that spammed in the server for sake of spamming from those that spammed to get voice verified and allowed them to take more appropriate actions.
With new implementation of voice verification, this process is silent (cannot ...
There is one more resource, PyCharm which also only contains an icon image:
<img width="784" alt="image" src="https://github.com/python-discord/site/assets/50042066/c9ed6fd2-343e-469b-954e-165e1043b764">
A curious thing I noticed was that for the jetbrains_videos item, we included another image as icon:
But the image is no longer avai...
GitHub Actions run 7886856452 succeeded.
This would throw if response.ok is False. (it needs to be adresses in the other places as well)
This looks good, but I couldn't test it the way it exactly is due to some setup limitations.
However I think there are improvements that can be done to the error handling.
What would you think about making exceptions for cases like a team isn't found, etc,
Then raise & handle those in the task's body ?
Because I tried this at first where a team in GH wasn't present in grafana, and it ended up with this
 in all the places and leave the error handler handle it
not in all cases, as even for most errors the API still returns JSON with the error included.
Sure, but that dict will later result in a KeyError down the pipe.
6ddb24d Ensure errors any are bubbled up when hitting G... - ChrisLovering
https://github.com/python-discord/king-arthur/commit/6ddb24d34163a86c6e3bdffa79a96fdd8fb5b077
This should be good now, as the error will be logged by the task error handler, or output to the user who called the command (devops) who will understand the traceback
This seems to make collecting static files quite slow for me. I think this is because a bunch of stuff is being bundled that we don't need.
Before:
python manage.py collectstatic --no-inputwith no staticfiles directory: ~3 secondspython manage.py collectstatic --no-inputwith existing staticfiles directory: ~3 seconds- Size of staticfiles directory: 12MB from ~300 files
After:
python manage.py collectstatic --no-inputwith no staticfiles directory: ~12 seconds- `pyt...
Return the number of members missing from the grafana team, and the number of members added.
Should we also be removing members from the Grafana team if they're no longer in the GitHub one?
Ah yeah, I think this can be closed now.
Thanks for doing this @RohanJnr :)
e2388a6 Bump sentry-sdk from 1.40.2 to 1.40.3 (#1229) - dependabot[bot]
GitHub Actions run 7891497249 failed.
GitHub Actions run 7891558676 succeeded.
6422a01 Refactor adding members to Grafana team to its ... - ChrisLovering
4611767 Don't keep track of the set of users added to G... - ChrisLovering
fdcb22e Add API wrapper to remove a user from a Grafana... - ChrisLovering
d7f74c4 Remove Grafana users from a team if they are no... - ChrisLovering
935140f Improve grafana sync command output - ChrisLovering
Should we also be removing members from the Grafana team if they're no longer in the GitHub one?
Yea, good idea. I've done that, among other refactors.
"""Remove a Grafana user from a team."""
Looks good, just some typos
"""Get all Grafana users."""
7d967a9 Correct typos in Grafana API wrapper doc strings - ChrisLovering
GitHub Actions run 7892927682 succeeded.
02b249f Add grafana and github secrets to config class - ChrisLovering
5e1ca0d Add API wrappers for github and grafana APIs - ChrisLovering
c53fa0a Add a cog to sync github teams to grafana teams - ChrisLovering
6ddb24d Ensure errors any are bubbled up when hitting G... - ChrisLovering
6422a01 Refactor adding members to Grafana team to its ... - ChrisLovering
GitHub Actions run 7892964040 succeeded.
Closes #65
This adds the sentry integration to king arthur, which will allow us to track exceptions better.
@python-discord/devops the sentry_dsn needs to be added to king arthur's secret's manifest.
Hmm, I hadn't noticed such a huge difference in startup for me. But having thousands of files that we don't need this way should probably be fixed - most of them are individual SVG files of the icons.
Looks like the only advantage of using this plugin as compared to copying files ourselves is to have automatic upgrades of Font Awesome through poetry/dependabot.
It would've been best if the plugin allows specifying which files to copy, unless there is a way to run scripts automatically e...
Connected!