#dev-log

1 messages ยท Page 6 of 1

regal archBOT
#
[python-discord/sir-robin] branch deleted: bump\-all\-deps
regal archBOT
#
[python-discord/.github] New branch created: ChrisLovering\-patch\-1
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#

This isn't a mistake or anything, but personally not a fan of name mangling. I think a single underscore is enough to indicate that this shouldn't be used from outside, and if someone really wants to they can still call this function. We also don't use double underscores anywhere else in the codebase.

Also fetch_or_create or something along those lines is probably more accurate than search.

regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/sir-robin] New branch created: aoc\-join\-slash
regal archBOT
regal archBOT
regal archBOT
regal archBOT
#

I don't understand your answer, but I think it's because my question was unclear.

Currently, the output directory is hard-coded to output. I'm wondering if it'd be possible to make that configurable by allowing a user to specify the directory name in this files_pattern glob. However, I think this could result in ambiguity regarding what should be the path snekbox creates, and what should the end-user have to manually create.

In any case, we can revisit it later. Not a blocker for t...

#

This is a comma splice. Use a semicolon or a full stop to create a separate sentence.

On each execution, the host will mount an instance-specific `tmpfs` drive, this is used as a limited read-write folder for the sandboxed code. There is no access to other files or directories on the host container beyond the other read-only mounted system folders. Instance file systems are isolated; it is not possible for sandboxed code to access another instance's writeable directory.
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
#

Main reason was my bad understanding of the interaction API, editing that view was failing since it was referencing the wrong message. And I thought I needed to workaround this by keeping a ref to the original message.

Seems like using interaction.response.edit_message works well
Fixed in both 7118c51b9b62b2a5ce0e745e4832b17f52901235 and 7976bc2af0fe49ddaebc63242b581b9eecb66132

regal archBOT
#

Sentry Issue: BOT-3BW

HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body
In embeds.0.fields.0.value: This field is required
(1 additional frame(s) were not displayed)
...
  File "bot/exts/help_channels/_cog.py", line 149, in new_post_listener
    await _channel.help_post_opened(thread)
  File "bot/exts/help_channels/_channel.py", line 127, in help_post_opened
    await send...
#
[python-discord/bot] New branch created: fix\-help\-channel\-open\-with\-no\-content
odd spireBOT
odd spireBOT
oak estuaryBOT
odd spireBOT
regal archBOT
regal archBOT
#

But that's similar to what we already have, isn't it? or did I understand that wrong?

The ones they have are highlighted in red, and the message states that just fine, e.g. Whether the role will be added or removed.

And how would they select them all in one go?

This is what I have for roles in my guilds.

image

This implementation uses a slash command to show the select menu, but it could be anything: like a button in the #roles chan...

regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/site] New branch created: issue\-809
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/site] branch deleted: issue\-809
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/bot] New branch created: update\-modlog\-for\-threads
odd spireBOT
regal archBOT
regal archBOT
#

I didn't get around to making the PR for this. I did look into it, but I couldn't actually figure out what was causing thread deletions not to be logged. I think my assumption about replacing on_thread_delete with on_raw_thread_delete was wrong. This probably need someone who understands discord.py and the bot better to look at it.

regal archBOT
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/bot] branch deleted: maybe\-fix\-help\-stats\-bug
odd spireBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#

Yeah, if a user isn't on the server then they can't send any messages of course, so it should have a similar effect.

For things like the github issue / active vote I think it's better for it to be handled manually if a user leaves so it doesn't just "disappear". We could send a message or something to let people know, although I don't think it's worth the added complexity for something so rare.

I'll close this, although thanks for thinking about this and making the issue!

regal archBOT
regal archBOT
regal archBOT
#

A fairly common problem asked in the help channels involves in-place operations like list.sort() which return None. A simple tag could be used to explain the difference in behaviour between in-place and out-of-place functions (with examples such as sorted() vs list.sort()) and how common issues involving them can be fixed.

odd spireBOT
regal archBOT
#

Relevant Issues

The Pull request resolve the Issue #1007
<!-- Link the issue by typing: "Closes #" (Closes #0 to close issue 0 for example). -->

Description

The relevent file has been updates as discussed in the Issue's comment

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 [c...
odd spireBOT
regal archBOT
#

I was about to edit the code (through AST or directly) adding import time and START_TIME = time.perf_counter() at the beginning (obviously would use a different variable name), and print("\n", time.perf_counter() - START_TIME, flush=True) at the end then reading the last line of stdout, but this is just ugly and would not work if there was an error above in the code.
However I never used timeit from command line, I'll try to use it and let you know how it goes
Thanks, closing this for...

odd spireBOT
odd spireBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#

I think we should start migrating to slash commands.
It will especially be useful for commands like !d and !rule, other than those, there are many cool commands which the server's users may not even know of, for example: !listcomp or ;) !or and so on. I think if we migrated to slash commands and added autofill for some commands, it would really help people who are helping others to pull up examples faster.

Many times, I had the issue of not knowing the exact command, for `!list-c...

odd spireBOT
regal archBOT
#

Well this would be cool, I believe with the commands !rule and !d it would be too cluttered (especially on mobile) and it would be easier to leave it as is.

there are many cool commands which the server's users may not even know of, for example: !listcomp or ;) !or

Thats why there is a !tags command, although I do agree they are still hidden.

Would love to continue this discussion, if you have any more ideas.

regal archBOT
#

Haven't looked into this fully but one potential issue could be that we use is_channel_ignored
https://github.com/python-discord/bot/blob/23f4592710853f8cb814fce2bba2f1871a508d68/bot/exts/moderation/modlog.py#L832-L837

which will ignore the post if the post isn't in the cache (get_channel would return None)
https://github.com/python-discord/bot/blob/23f4592710853f8cb814fce2bba2f1871a508d68/bot/exts/moderation/modlog.py#L546-L550

This wouldn't really explain why normal thread del...

regal archBOT
#
[python-discord/bot] branch deleted: update\-modlog\-for\-threads
odd spireBOT
oak estuaryBOT
odd spireBOT
odd spireBOT
regal archBOT
#

Suggestion: I think you there could be a small nuance for some people between setting the status for the first time (upon instantiating the client) and any other time using change_presence.
So maybe detailing that by saying that if, in a further stage, you want to change the status when the bot is running, e.g. at runtime, you can do this with change_presence

odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
#

I am going to be honest, I've been on the server for quite a long time now and I've never seen the !tags command, only now, once you've told me it exists, did I check it out. That command is very useful indeed to remember all the tags and give people formatted, clean, pretty descriptions to poythonic or general computer topics.

Though I still think the community would gain more from slash commands than suffer from the clutter on mobiles. Without a doubt the discord slash command view is te...

#
[python-discord/site] New branch created: improve\-page\-contribution\-guide
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
#

eb86541 Migrate Setting Different Statuses to Set Your ... - iamericfletcher
63c67a1 Adding extra space at end of file in response t... - iamericfletcher
eee7ace Migrate Setting Different Statuses to Set Your ... - iamericfletcher
4714b30 Merge remote-tracking branch 'origin/695-settin... - iamericfletcher
c0a15c9 Migrate Setting Different Statuses to Set Your ... - iamericfletcher

odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#

It is indeed correct that it can be used as a variable, but I think we should state that we usually only use it for variables that are not needed from return statements, iterations, etc.
I know you've mentioned later on, but here's how I think it should be
"Underscores can also be used for variable assignments, but they are generally used to store values that will not be needed."
Then you can give your detailed examples (i see you do that later down the tag) where you say how they're using...

regal archBOT
#

We already do this don't we?

https://github.com/python-discord/bot-core/blob/main/pydis_core/utils/scheduling.py#L80

I believe it was mostly added so that The below dunder works, but it should also alleviate the above issue. https://github.com/python-discord/bot-core/blob/main/pydis_core/utils/scheduling.py#L44

That's on the scheduler class, this issue is about the create_task function.

odd spireBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#

I think it would be better if we phrase it like this:
These mean that they're used in front a variable, a function or a method name, which indicates that these objects are meant to be used internally, such as _name. However, these objects can still be accessed from outside

We could also benefit from saying that the usage of these conventions is to remediate to the lack of "access modifiers" in Python, we'll let others give their opinion on this as well.

odd spireBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
#

@ChrisLovering We can use all the methods present in site's APIClient without having to rewrite the code in the new Snekbox one.
We will override the ctor and url_for for it to use the new class instance that holds the base url.

The only thing that bugs me is that it'll be coupled to APIClient, but i don't think that client will change in the future which makes me think it's fine, what do you think ?

regal archBOT
regal archBOT
#

Description & Reasoning

While it's entertaining that Sir Lancebot reacts to comments containing certain words during Halloween (more accurately, all of October), it seems mildly unfair that this feature is specific to Halloween. Surely other events - notably Christmas - deserve such entertainment as well? This issue proposes adding more events to the reaction feature.

Proposed Implementation

Implementation involves upping the number of reactable "holidays" to 7, with some having ...

odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
#

I'm really not sure, I guess since it's in memory, closing on GC should be fine.

In any case whether we close it or not is kind of pointless, it must be open when it goes into File(), and within there, discord.py explicitly disables the close() function by patching it:
https://github.com/Rapptz/discord.py/blob/799e3c5bf09cedcd9b7e2b83df733910fa11532a/discord/file.py#L106

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

oak estuaryBOT
night lilyBOT
#
Sir Lancebot

Connected!

oak estuaryBOT
thin oysterBOT
#
Sir Robin

Connected!

regal archBOT
odd spireBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/sir-lancebot] New branch created: kata
#

Relevant Issues

<!-- Link the issue by typing: "Closes #" (Closes #0 to close issue 0 for example). -->
Closes #1168

Description

Updated the CSS class that was used for the soup to find new kata items.

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](htt...
odd spireBOT
regal archBOT
regal archBOT
#

Running the .challenge command. the following issues occur:

  • Interactions edit the message but still show as failed
    image
  • The same challenge seems to be shown every time for a given query, where it should be random.

Possible Solutions

I think the failed interaction thing should be fairly simple to fix, I haven't looked at the code though.

The same challenge being show...

#
[python-discord/sir-lancebot] branch deleted: kata
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
regal archBOT
#

I'm not a fan of how this looks when inside a quote block. I also think this should be moved below the code block showing the output, which feels more consistent with other messages that conditionally appear. Any strong opinions against that?

To facilitate that change, it would be good to create separate functions to get all these different strings instead of returning a tuple.

odd spireBOT
odd spireBOT
regal archBOT
#

PEP 585 allows us to write things like list[int] directly instead of needing to do from typing import List; List[int]. With this, the typing imports are now deprecated:

The deprecated functionality may eventually be removed from the typing module. Removal will occur no sooner than Python 3.9โ€™s end of life, scheduled for October 2025.

My current understanding is that removal wont happen for a long time and isn't currently planned, although I think...

regal archBOT
#

I generally dislike repo-wide style changes. They creates huge PRs which are a chore to review, and merge conflicts for open (and yet to be opened PRs). I'm not exceptionally against it, but I think a healthier approach is to make these updates as we go in code that we're already changing. For example if we fix a bug in some function, we can update the signature while we're at it to change List to list. If we ever do hit a point where it's about to be removed from the stdlib, the repo-wide PR...

regal archBOT
#

It would be a large PR, but it shouldn't be hard to review, since it's a simple code transformation, there's not really much to review. IMO these things only end up as a pain when other issues are noticed in the process and other bits and pieces end up being added.

I don't really like unrelated changes being added into PRs. If it's new code or lines being changed that's fine, although if we only change it in those cases I don't think things would really change, especially since many people...

regal archBOT
regal archBOT
regal archBOT
regal archBOT
#
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
#

Instead of just showing ... when it's too long, can it truncate the file name e.g. 1 file (reallylongfi...)?

Also, I'm okay with the current logic of 85 chars or 5 files, but I would have just had a character limit and truncated the last filename in the list. Let's say there are 10 files, but they are under 85 chars in total. It's free real estate being given up I think.

regal archBOT
#

successful qualifier submission -> push submission ID to a MessageQueue -> sir-robin digests queue to add to CJMS using the forms API, fetching all the background info that Cam mentioned above.

After qualifier run a (new) command that spawns a persistent view with a confirm/unconfirmed button. This marks the user a confirmed in the DB.

After some time run another command that removes this view and runs the script auto-generation script against the database and returns a CSV of the sugge...

regal archBOT
#

I'm struggling to see why would snekbox wrapper contain paste service utilities, shouldn't it have its own wrapper ?

This was in the context of which modules should be ported over, so it doesn't mean that the paste utils have to be part of the snekbox wrapper.

Last thing, I don't see any Latex cog in our code base, so I wanted to make sure whether I'm missing something or not.

There used to be on in Sir Lancebot, but maybe it got removed or disabled due to issues.

I noticed ...

regal archBOT
odd spireBOT
regal archBOT
#

Alright, thanks @MarkKoz for clarifying.
In that case, here's what I'll do

  1. Start with the basic eval endpoint for snekbox
  2. Wait for Ionite's PR to finish, then port that over as part of the wrapper
  3. Open up a new issue for a new wrapper over the pasting service, and I'll take care of porting it as well (and discuss details in a separate issue)

In the meantime, I suggest the original comment that Chris has made about what should be ported over for better context to future readers

regal archBOT
#

Though interal eval does not use snekbox, there is likely still some overlap in code. I imagine we can have a base class with common features, and we can also take the opportunity to make the eval commands behave more consistently with each other.

Internal eval is used in pretty much every bot, so we can just straight up port that command over I believe (modifying it to use the base class described above). Snekbox will only ever be in one bot, so I'm not sure why this issue is named "snekb...

odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
#

Actually this reminded me, we need to do some sanitizing of file paths before attempting to upload to discord, since they only allow ascii-alphanumeric, underscores, slashes, and dots.
<img width="704" alt="image" src="https://user-images.githubusercontent.com/13956642/208638316-2fd43674-2133-4f25-a073-04c990a1fa7c.png">

Added normalization and associated unit tests since b04143c

odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/bot] New branch created: shenanigansd\-patch\-1
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/infra] New branch created: server\-bootstrap\-script
#
[python-discord/infra] branch deleted: server\-bootstrap\-script
#
[python-discord/infra] New branch created: bootstrap\-script
#
[python-discord/infra] branch deleted: bootstrap\-script
regal archBOT
regal archBOT
#
[python-discord/infra] New branch created: use\-shorturl
#
[python-discord/infra] branch deleted: use\-shorturl
#
[python-discord/infra] New branch created: Add\-sudo\-lecture
regal archBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
regal archBOT
#

@shtlrs you can feel free to work on it but I can be a backup if needed.
I've worked on similar code with the eval bookmark one and it's quite similar so I should be able to do it as well.
So I just want to save you the headache beforehand: you can't have have a context menu decorator inside of a cog. See this comment for more information.

As for making it ephemeral, I'm not sure I like making the resultant meth...

#

No I definitely see your point concerning the ephemeral part.
However, the "definition" of important here is debatable, but also the reach of the message, meaning where it was invoked.
If this were to be in py general for example, and that's because a lot of people engage there ( or in other topical channels as well)
But this can't always be the case in forum help posts, and having a random message popup could be a bit confusing (just a tiny bit IMO)
I struggle to position myself with whe...

regal archBOT
regal archBOT
#

This logic means that clicking on the topic refresh button doesn't actually output a new topic, it just uses the previous input, if the title is beyond the limit.

I think a better way to deal with this would be when a user clicks on the emoji the new topic becomes number 1 and the rest get pushed down a number.
Then, when adding the topics if the last topic would make the title go beyond 256 characters, don't add it.

This would mean the newest topic is always the number 1 topic, and th...

odd spireBOT
regal archBOT
#

I think a better way to deal with this would be when a user clicks on the emoji the new topic becomes number 1 and the rest get pushed down a number.

I considered this,but this would change the ordering of the older messages. One point of adding this feature is so that people wanting to respond to a specific topic could include the number of that topic in with their reply, e.g. someone responding to the second conversation starter could say something like "For topic 2, ...". Changing the...

odd spireBOT
regal archBOT
regal archBOT
#

I think a better way to deal with this would be when a user clicks on the emoji the new topic becomes number 1 and the rest get pushed down a number.

I considered this,but this would change the ordering of the older messages. One point of adding this feature is so that people wanting to respond to a specific topic could include the number of that topic in with their reply, e.g. someone responding to the second conversation starter could say something like "For topic 2, ...". Changi...

regal archBOT
regal archBOT
#
[python-discord/bot] branch deleted: shenanigansd\-patch\-1
oak estuaryBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/sir-robin] branch deleted: shenanigansd\-patch\-1
#
[python-discord/sir-robin] New branch created: shenanigansd\-patch\-1
#
[python-discord/sir-robin] branch deleted: shenanigansd\-patch\-1
#
[python-discord/sir-robin] New branch created: shenanigansd\-patch\-1
#
[python-discord/sir-robin] branch deleted: shenanigansd\-patch\-1
odd spireBOT
regal archBOT
#

Related: #1880

Hm, do you think we should just give a way for users to specify a -m? That would allow stuff like mypy and flake8 without adding new commands. It would just need for those modules to be added to snekbox.

!e -m mypy
# code to check with mypy
!e -m flake8
# code to check with mypy

we can continue to default the first block as main.py and append main.py to the end of the arguments

regal archBOT
#

Current working command schemes:

  • !eval -ipython
  • !e -i

Support IPython mode for eval with code blocks as "cells". Matplotlib will use a custom backend for show() which writes a png file to the output folder for upload.

This will use the ipykernel backend with full support for ipython magic commands like %%time

We can also inject custom exec tasks, imports, or custom ipython macros and magic commands via ...

odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#

I'm not sure this function had to be extracted out into it's own function. It also does more than the name implies, not only does it check if a user is permitted to bookmark, but also sends an error message.

I think we should just move the logic back into the context menu callback and original text command, since a method to build the error embed is already there:

if not permissions.read_messages:
    log.info(...)
    error_embed = Bookmark.build_error_embed(...)

    # In t...
regal archBOT
#

I think the experience for the majority of users who don't often give it a title should be prioritized.
We want it to be a simple right click > bookmark > done experience.
I'm thinking something like a button attached to the ephemeral embed that opens up a modal allowing you to further edit the title.
This way only people who want to have a title for their bookmark embed have to go through this modal and we don't force everyone to.
I offer my services for this code as it could be potentiall...

night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#

@Robin5605 Yes that's the original idea.
What you said would work, I'm thinking the user gets a text input that comes with 2 buttons, a '' submit '' one and a '' i don't want to give this a title one'' where the whole operation can be skipped.
It's just the raw idea of course, and the wording is just there as a placeholder.

@minalike when it comes to timing it, here's how i see it.
The user utilizes the context menu, and gets prompted for a title through a view that'll have the previously me...

regal archBOT
#

I don't think having a timeout would be a good idea, someone might take a little longer to type it out and then it would get cancelled.

I do like the idea of a modal with a text input though.

I think this would work best if we had an optional text input, where the placeholder is the title it would be by default.

That way a user can just submit the modal and get the bookmark with the default title, or overwrite it if they ant to.

regal archBOT
#
[python-discord/bot-core] New branch created: sync\-tree\-on\-startup
regal archBOT
#

Looks like I didn't communicate my idea well -
So a user would click on the bookmark context menu, and immediately the bookmark would be sent to their DM with the default title. The people who don't care about custom titles are happy - nothing has changed for them.

Now, there is an extra button in the ephemeral message in the channel where it was invoked "click here to change the title". This button brings up a modal where you can enter your title, and on submit, the bot would go back and e...

odd spireBOT
regal archBOT
#
[python-discord/sir-robin] New branch created: janine9vn\-patch\-1
#

Description

The proposed feature is to enable Lancebot to make queries to DeepL. This is an AI-powered translator that, although limited to few languages, performs quite well with the supported ones and vastly outperforms Google translate.

Reasoning

It would be cool, for one. Additionally, it could help some users whose English is not so great (either by allowing others to translate their messages into English, or backwards).

Proposed Implementation

I have none in mind, ...

#
[python-discord/sir-robin] branch deleted: janine9vn\-patch\-1
#

I'd like to increase the task timing for the completionist role assignment to something higher. I'm fine with any value up to 12 hours. I think maybe something every hour or 3 hours could be a good compromise.

I'd also like to create a stop/start command(s) for the completionist role that'll be role locked to Admins & Event Lead. We don't want the completionist assignment running all year.

odd spireBOT
regal archBOT
#
[python-discord/sir-robin] New branch created: moderinse\-CI
thin oysterBOT
#
Sir Robin

Connected!

regal archBOT
regal archBOT
#
[python-discord/sir-robin] branch deleted: moderinse\-CI
thin oysterBOT
#
Sir Robin

Connected!

regal archBOT
regal archBOT
#

We've already begun a slow but steady migration to using the new features. We already have a bunch of buttons in places, and we're about to start using context menus for bookmarks. Our approach to all of these is to create these new slash commands as alternatives, while keeping the text commands as they are. People can use whichever they prefer the most. I am completely in favor of creating these alternative slash commands for commands that would benefit from them (not all commands do, it's i...

odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
#

Description

When using the bookmark command, if your DMs are closed the bot warns you to enable DMs to receive the bookmark. However, you are still registered as having received the bookmark afterward.

Steps to Reproduce

  • Block Lancebot (or close DMs)
  • Run the .bm command for a reply
  • warning embed is displayed
  • Unblock Lancebot (or open DMs)
  • Click the "Receive Bookmark" button
  • *private notice is displayed that you have already received a bookmark to that messa...
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#

This PR moves the kubespray inventory, updates parts of it, and documents deployment steps.

There are a lot of files, particularly in 232f631, which have been moved up from the kubespray directory. Because that directory was a submodule, there is no real diff, however I've made minimal changes which are as follows:

  • Documented and linked docs for upstream_dns_servers in group_vars/all.yml
  • Added the credentials folder to the gitignroe
  • Combined the inventory file at the project r...
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/site] branch deleted: improve\-page\-contribution\-guide
#

63f1d78 Add tips that showcase markdown quirks. - kosayoda
7f80bdc Point showcase link to an actual example. - kosayoda
d584c7c Kaizen: Ensure consistent formatting and wording. - kosayoda
abf7a32 Merge branch 'main' into improve-page-contribut... - Xithrius
b4e2c53 Merge pull request #815 from python-discord/imp... - Xithrius

odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
#

[Link to discussion](#community-meta message)
Should the eval command !e with an inline codeblock or no codeblock at all be ran and the output printed by default? (This is similar to how the Python REPL functions:

python
Python 3.10.1 (tags/v3.10.1:2cd268a, Dec  6 2021, 19:10:37) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> "Hello, world"
'Hello, world...
regal archBOT
#

After discussing this further with @ionite34, I'm rejecting this idea in favour of #2369. While this seemed good on paper, the implementation details makes this a bad idea:

  • If the one-liner already has print() then !eval will output None ... and then the rest of the output which would be confusing
  • Statements would break (we could catch SyntaxError and try again without the implicit print call being wrapped, but that's messy)
    • Semicolons have no chance of working

And interacting...

regal archBOT
#
[python-discord/bot] New branch created: vivek/jump\-url\-infr\-log
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#

I guess infraction messages would never be deleted, would they ?
otherwise that'll be a blank jump, but i think it's unlikely for something like that to hapen.

Because what I'm thinking is, if an admin or mod expect to find the infraction message, but they don't, it could potentially be confusing.

So storing message id then fetching it would give more context, but again, i think it's almost impossible to happen

regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#

Sure, that's one way to view this.
Even though I don't fully agree, since having something that can or could've been improved doesn't mean we should do it again.
I think the conflict happened because of the migration I did on the nominations table, which has already been merged into main 2 days ago.
And the conflict happened just on the naming, and not on the model itself, and I still think it should be done on its own.

We can wait for others to see what they think about this.

oak estuaryBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/king-arthur] New branch created: rule\-refresh\-command
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: swfarnsworth\-modmail\-account\-mention
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#

How about we made these updates per package/module?
Yes it's a lot of PRs, but at least

  1. We control the range
  2. It's very easy to review and can be merged instantly
  3. Makes reverting (just in case, even thought i don't see why we'd do this) easier

The only "downside" to this if we do it per module, is that it'll result in a lot of PRs since we have a lot of modules.

regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: allow\-passing\-channel\-objets\-when\-checking\-ignore
odd spireBOT
regal archBOT
odd spireBOT