#dev-log

1 messages ยท Page 63 of 1

regal archBOT
#

Thanks for following up with an issue. I initially suspected this was due to the processes sharing the same cgroup, but this is not the case. Each forked process gets its own cgroup which is independent of the parent process. This is fundamentally how cgroup hierarchies work.

I tried running one of your commands 5 times simultaneously and none of the processes terminated. Below you can see all the running jobs in my shell:

[1]   Running                 nsjail --config /snekbox/conf...
regal archBOT
regal archBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

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

Abstract

When the development mode is enabled, the bot should wait for the website to be up before continuing the startup process.

Rationale

With the current setup using Docker Compose, the bot will start making requests to the website before the website even starts accepting requests, which will cause the bot to fail to start.

Specification

We can have a loop trying to ping the server URL every second for a short duration before moving on. Note that the bot should fail ...

#

I agree that a system should be put in place to create an embed more easily, but I think there are some other options to consider. For instance, adding specified colors could be done with a new class of colors, rather than an entire helper function. As for the trash icon, I think that is where an embed helper could be useful. If we do not have any use cases other than that, the question is if it is worth creating an entirely new system for that, as of now.

Of course, I haven't done any w...

regal archBOT
#

I can see where you're coming from. Creating embeds that specify the color out of a set of colors is already an option today, as we have color constants in constants.py. However, it seems like you mean that we could add another layer of abstraction, similar to this:

Color constants

embed_colors = {
    "error": constants.colors.soft_red,
    "info": constants.colors.yellow,
}

This would indeed allow us to achieve something similar to what an embed helper would do, reg...

oak estuaryBOT
night lilyBOT
#
Sir Lancebot

Connected!

night lilyBOT
#
Sir Lancebot

Connected!

regal archBOT
#
[python-discord/snekbox] New branch created: feat/nsjail/74/config
regal archBOT
#
[python-discord/bot] New branch created: mbaruh/developerectomy
#
jb3
[python-discord/snekbox] branch deleted: feat/deps/63/pep8\-naming
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/bot] branch deleted: mbaruh/developerectomy
oak estuaryBOT
odd spireBOT
oak estuaryBOT
oak estuaryBOT
regal archBOT
#

That does sound like a good idea, but I'm not sure about the implementation. Calling this again is not viable as we then don't have access to the rendered length and it'll probably need separate handling for each type of tag that we'll want to handle recursively. Maybe making a class for this to share the state and the methods would be the best.

regal archBOT
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/webpack\-5\.x
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#

Fixes #74

Protobuf is used to parse the config because it's the proper way to do it and it's less maintenance than a custom parser. A Python module is generated from the protoc tool. There's a simple shell script that gets the config.proto from NsJail's GitHub and invokes protoc. The Python module only needs to be re-generated when NsJail is updated.

I realise more shell scripts go against #73, but I plan to address that issue in a separate PR. It'll also address the NsJail versi...

regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/swc\-core\-1\.x
regal archBOT
#

#dev-contrib message

running !e import pandas results in an error message:

Traceback (most recent call last):
  File "/snekbox/user_base/lib/python3.9/site-packages/pandas/__init__.py", line 29, in 
    from pandas._libs import hashtable as _hashtable, lib as _lib, tslib as _tslib
  File "/snekbox/user_base/lib/python3.9/site-packages/pandas/_libs/__init__.py", line 13, in 
    from pandas._libs.interval import ...
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/typescript\-eslint\-monorepo
regal archBOT
regal archBOT
#

Hard to say without seeing what it'd look like. It could probably get away with only showing the usage code block from the help embed - the aliases and descriptions can be omitted.

In any case, there are some situations where showing the help isn't even useful. The screenshot above perfectly illustrates that. The help message is more useful when an argument is missing or if the error message is too generic (like an invalid type).

This is just one aspect of the issue. I believe there ar...

regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/webpack\-5\.x
regal archBOT
oak estuaryBOT
odd spireBOT
oak estuaryBOT
regal archBOT
#

Then keep the message around through redis, until the user requests it or some cleanup of stale messages is done.

I don't agree with this. It should be simpler: if they have DMs enabled, send them their message. If not, too bad. Writing a command and caching messages seems overcomplicated for the amount of use I foresee the feature receiving.

The implementation for that shouldn't have much complexity, just setting/getting and some background to delete the stale data, and could possi...

oak estuaryBOT
oak estuaryBOT
regal archBOT
regal archBOT
#
[python-discord/snekbox] New branch created: bug/deps/89/isolate\-sites
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/testing\-library\-jest\-dom\-5\.x
#

Fix #89

The problem with --ignore-installed is that it also ignores packages in the target site, therefore re-installing all packages and making caching futile.

Install snekbox's dependencies to the default user site. During installation of the exposed packages, switch the user site to a custom one to ensure pip will not skip packages due to seeing them as already installed as one of snekbox's dependencies.

If pip made the --root option ignore packages outside the root, then usin...

regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/sentry\-monorepo
regal archBOT
#

Description

Removed explicit mentioned of env vars from docker compose, replaced with an env_file

Reasoning

This means users of the docker-compose workflow won't need to worry about accidentally commiting their docker-compose file which contains all their secrets!

This will pull all of the env vars from the .env file in the project root dir

Additional Details

We should probably update the contributing wiki with these changes (although I couldn't find anywhere that m...

odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/webpack\-dev\-server\-3\.x
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/snekbox] branch deleted: bug/deps/89/isolate\-sites
regal archBOT
#
        for data in (json.loads(user_data) for _, user_data in await self.messages.items()):

Making it a generator should save a bit of memory as it calculates on the fly. Given this loop can return i find it wasteful to generate a whole list of data, to discard it later.
Alternatively you can just json.loads the user_date inside the loop, and iterate the values instead

for _, user_data in await self.messages.items():
    data = json.loads(user_data)
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/font\-awesome
regal archBOT
#

Regex still isn't quite right. Again, I'm testing only for GitHub. You'll have to determine yourself what the behaviour for the other sites is. I think the blob support is the most important thing. If you can't figure out the rest then I'd be fine to merge without the other things fixed as they're edge cases.

The repo group still doesn't account for a name being "blob". Here is a regex that fixes that:

(?P[a-zA-Z0-9-]+/[\w.-]+)

With that change, it seems the GitHub r...

regal archBOT
regal archBOT
regal archBOT
regal archBOT
#

I'm looking at this now, it should be possible by checking the intersection of wrapper's co_names and the annotations.
What do you think about raising an error that can optionally be turned into a warning if there's a conflict? I'm not sure how discoverable it'd be in tests for the devs when developing a command and it completely breaks the parameter that uses the conflicting global

#

The current error is cryptic, which would be solved by a better runtime error/warning before it's reached. The test will prevent buggy code getting into production but when developing the tests have to be ran manually which probably is not the first course of action after getting a traceback while developing something new.
If discord.py fails to resolve the annotation in some way the error stops the bot's execution and looks like this https://paste.fuelrats.com/dumemageri.tex which doesn't t...

regal archBOT
#
[python-discord/logcord] New branch created: api
#
[python-discord/logcord] branch deleted: api
regal archBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/node\-14\.x
regal archBOT
regal archBOT
#

Since the scheduler shields the scheduled coroutine, I believe the following code will work. It's simpler than keeping track of attempts yourself.

Since refresh_inventory cancels all tasks at the start, I don't think it'd be possible for this to cancel anything but itself. There may be an edge case where the task scheduled by an older invocation of refresh_inventory takes a (very) long time to cancel and the new refresh_inventory invocation manages to get far enough to schedule a ne...

regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/forms-backend] New branch created: renovate/spectree\-0\.x
odd spireBOT
regal archBOT
#
[python-discord/forms-frontend] branch deleted: renovate/node\-14\.x
#
[python-discord/forms-frontend] branch deleted: renovate/webpack\-dev\-server\-3\.x
regal archBOT
regal archBOT
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
#

Description

When using a command in a non-whitelisted channel, something like the following will appear.
image

It would be nice to have a single preferred channel for bot commands, instead of listing all available channels.

Reasoning

The current embed is very long, and users have received embeds like this one in response as well:
![image](https://user-images.githubusercontent.c...

odd spireBOT
regal archBOT
#
[python-discord/sir-lancebot] New branch created: add\_voice\_chat
odd spireBOT
regal archBOT
regal archBOT
#

Currently, if a moderator issues a warning to a user in a channel that that user can't see (usually a moderator-only channel), and that user happens to not receive DMs from non-friends, the user won't know that they've been warned and the point of the warning is effectively missed.

In this circumstance, the warning should not be entered into the database and the moderator should be informed that the warning has failed.

This change should not be made until @scragly's proposed changes to ...

regal archBOT
#

Currently, if we believe that two or more accounts belong to the same person, we issue a note infraction for each account stating which other account IDs we believe to belong to that person, which requires a series of relatively similar commands that are ripe for error. It also makes it more difficult to respond to incidents pertaining to such user.

I think we need some way of documenting which accounts we believe belong to the same person and why we believe this, as well as the option of ...

regal archBOT
regal archBOT
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/webpack\-5\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/swc\-core\-1\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/sentry\-monorepo
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/font\-awesome
regal archBOT
#

We had a small discussion in #mods-tools a couple of days ago, and our general consensus was that we don't need something as complicated as creating a brand new infraction type, we could simply have an !alts [greedy user...] [reason] command that will run an !note user1 Alt of user2, user3,.... Reason for each user to avoid having to type that our manually.

That said, maybe we do want something more complicated? What does others think about that?

regal archBOT
#

In my opinion, we don't need something more complex. Maybe some would want at the top of an infraction listing something like Alts: user1, user2,..., but at this time I don't think it's necessary. Most users who have alt accounts don't have many infractions, as far as I can remember.

we could simply have an !alts [greedy user...] [reason] command that will run an !note user1 Alt of user2, user3,.... Reason
Having the alt command kind of act like an alias would work great in my o...

regal archBOT
#

@Xithrius I'm only proposing a change to warning infractions, since the warning message is the point of that infraction.

I don't think there's currently a solution for permission-reducing infractions (mutes, bans, etc.). If someone has DMs turned off, I suppose part of the trade-off they're making is that they lose the opportunity to know without inquiring why their permissions were reduced.

regal archBOT
#
[python-discord/sir-lancebot] branch deleted: add\_voice\_chat
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: renovate/eslint\-7\.x
#
[python-discord/forms-frontend] New branch created: renovate/husky\-4\.x
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: remove\-unnomiation\-reason
odd spireBOT
regal archBOT
#

Abstract

We should have an antispam rule filtering small burst of images.

Rationale

Currently, when a user posts 4 images in less than 10 seconds without any comment, the duplicates rule will trigger. While we still want to be informed when many images are posted, having the duplicates rule trigger doesn't make much sense. Besides, if different message content is given for each image, it will only trigger burst if more than 9 messages are sent in 10 seconds.

Specifi...

regal archBOT
#

Invocation

!pin [channel]
Fetches the n'th pinned message from channel, in an embed.
Optional argument channel defaults to the channel in which the command was invoked.

Rationale

As tags are generally not library specific, this command could be used as an alternative to get common issues/popular guides that are kept as pinned messages in topical channels. This would let us make tags more general, while also getting the ease of access of a tag-like command.
Moreover, regu...

regal archBOT
#
[python-discord/bot] New branch created: trashcan\-mods
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
jb3

I'm not sure that we should be worrying at people being angry for us when we DM them that they've opened a help channel.

If it was an unprompted DM, sure, we could think into whether it's worth the annoyance or not, but they are using our system and I think that the many people who will benefit from being able to jump back to help sessions greatly outweighs those who may be slightly agitated by DMs (and even then, they can disable them and things still work fine).

If we truly want to ke...

odd spireBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#
jb3
[python-discord/forms-backend] branch deleted: renovate/spectree\-0\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/husky\-4\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/eslint\-7\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/testing\-library\-jest\-dom\-5\.x
#
jb3
[python-discord/forms-frontend] branch deleted: renovate/typescript\-eslint\-monorepo
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/bot] branch deleted: remove\-unnomiation\-reason
#

At the current moment when a user deletes a message that the bot has not cached, it outputs a simple message embed including the channel and message ID, which is effectively all the discord API gives us in a message deletion context. However, now that we have Metricity running we are able to cross-check deleted messages with it.

While it's unnecessary to check it for every message, we could use this to get the original author of messages that we aren't provided one, and from that solve th...

oak estuaryBOT
odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/bot] branch deleted: feat/F4zi/CommandSuggestion
#

b3ad47a Feature: suggest command usage for misspelt com... - F4zii
adfb87e Merge branch 'master' into feat/F4zi/CommandSug... - Akarys42
dfe9dd8 Seperated tags.get_command into a function and ... - F4zii
eb01f3f Feature: suggest command usage for misspelt com... - F4zii
777088b Merge branches 'feat/F4zi/CommandSuggestion' an... - F4zii

oak estuaryBOT
odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/logcord] New branch created: ci
regal archBOT
#

Relevant Issues

Closes #127, and responds to #97

Description

Based on the original closed PR, this current version also uses the Markov model to give the user a valentines-themed poem. This time, the user is allowed to create their own rhyme scheme. For example, abab for a simple quatrain, or even using a pre-existing scheme such as the shakespearean sonnet (abab cdcd efef gg).

The cache system is improved by making the code more pythonic. A code decorator is added to the...

odd spireBOT
regal archBOT
#

With the introduction of the new command suggestions, some users noticed that suggested tags could be sent twice (or could cause an unhandled error on the bot). [Context here](#community-meta message).

This is due to the error handler not returning if it sent a tag match, and instead reinvoking the tag. The error is caused by not checking for none on the suggestion. This PR addresses both issues.

odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#
jb3
[python-discord/forms-frontend] branch deleted: form\-rendering
regal archBOT
regal archBOT
#

Currently, users get a message like this one when they get an infraction:

image

For infractions other than bans (regardless of duration), the embed should tell them to use the ModMail bot if they want to discuss or ask questions about the infraction. We might also except Superstarify infractions.

I'm not sure if this should await the redesign of the infraction system or if we can...

regal archBOT
#
[python-discord/forms-frontend] branch deleted: preview\-form\-rendering
regal archBOT
night lilyBOT
#
Sir Lancebot

Connected!

odd spireBOT
regal archBOT
#

There is also issue #539 which is similar to this. I see two good options either we send the user to the designated bot channel, or list all of the channels that they have access to post in.

I prefer the former of the two, as I agree this embed is quite big, and with it disappearing after 7.5 seconds we want it to be short so the user has time to read it.

Either implementation we decide on, I'd like to work on this if possible :)

odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#

That sounds good when the default overrides are used, as the channel the users should be trying commands in really is only the bot commands channel; but in case of overrides I think we should display all the allowed channels (or the difference if it's a superset of the default) as there may be other channels intended as the "commands" channel. I don't think there is and will be such a case but the override could also forbid the default bot command channels

regal archBOT
regal archBOT
regal archBOT
#
[python-discord/forms-backend] New branch created: dependabot/pip/flake8\-annotations\-2\.5\.0
#

Bumps flake8-annotations from 2.4.1 to 2.5.0.

Release notes
Sourced from flake8-annotations's releases.

Release v2.5.0
Changelog
[v2.5.0]
Added

#103 add --allow-untyped-nested to suppress all errors from dynamically typted nested functions. A function is considered dynamically typed if it does not contain any type hints.

Additional Details
Per #102, nested functions can fall into an interesting spot semantically for a project. They're distinct...

#
[python-discord/forms-backend] New branch created: dependabot/pip/pyjwt\-2\.0\.1
#

Bumps pyjwt from 2.0.0 to 2.0.1.

Release notes
Sourced from pyjwt's releases.

2.0.1
Changelog
Changed

Rename CHANGELOG.md to CHANGELOG.rst and include in docs #597

Fixed

Fix from_jwk() for all algorithms #598

Changelog
Sourced from pyjwt's changelog.

v2.0.1 <https://github.com/jpadilla/pyjwt/compare/2.0.0...2.0.1&gt;__
Changed

odd spireBOT
regal archBOT
#
jb3
[python-discord/forms-backend] branch deleted: dependabot/pip/flake8\-annotations\-2\.5\.0
odd spireBOT
odd spireBOT
regal archBOT
#
jb3
[python-discord/forms-backend] branch deleted: dependabot/pip/pyjwt\-2\.0\.1
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#

1447327 Improve !pep command - ks129
355c1bd Merge branch 'master' into pep-improvisations - ks129
6b6d2a7 Moved async_cache decorator from Doc cog fi... - ks129
bf26ad7 Created new task in Utils cog: refresh_peps_... - ks129 [a2f0de1](https://github.com/python-discord/bot/commit/a2f0de1c34dc320f4ee61d64a33b0d866bf41af2) Refactor pep` command, implement caching - ks129

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

This can be combined into 1. You can re-use the join logic for singular winners as well, since it wont add the join string to a single winner. You just need a condition for the difference in text, like: (Also don't need the temporary list)

names = ", ".join(f'{win[1]["name"]} ({PING.format(id=win[1]["author"])})' for win in winners)
congratulations = 'to all' if len(winners) > 1 else PING.format(id=winners[0][1]['author'])
score = winners[0][1]["score"]
await channel.send(
    f"C...
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: forms\-submitting
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#
[python-discord/bot] New branch created: bug/backend/bot\-4x/chunk\-sync\-requests
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
#
[python-discord/sir-lancebot] branch deleted: gurkancount
odd spireBOT
regal archBOT
#
[python-discord/bot] branch deleted: bug/backend/bot\-4x/chunk\-sync\-requests
oak estuaryBOT
odd spireBOT
regal archBOT
#
[python-discord/logcord] New branch created: frontend
odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#
        embed.title = leader_name
        embed.description = self.pride[leader_name]["About"]
        embed.add_field(name="Known for", value=self.pride[leader_name]["Known for"], inline=False)
        embed.add_field(name="D.O.B and Birth place", value=self.pride[leader_name]["Born"], inline=False)
        embed.add_field(name="Awards and honors", value=self.pride[leader_name]["Awards"], inline=False)

Underlines aren't needed, as the field titles and embed titles ha...

#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/typescript\-eslint/eslint\-plugin\-4\.14\.0
#

Bumps @typescript-eslint/eslint-plugin from 4.13.0 to 4.14.0.

Release notes
Sourced from @typescript-eslint/eslint-plugin's releases.

v4.14.0
4.14.0 (2021-01-18)
Features

add support for decorator metadata in scope analysis and in consistent-type-imports (#2751) (445e416), closes #2559
eslint-plugin: add object-curly-spacing rule (#2892) (32bd18d)

Changelog
Sourced from @typescript-eslint/eslint-...

#

Bumps @typescript-eslint/parser from 4.13.0 to 4.14.0.

Release notes
Sourced from @typescript-eslint/parser's releases.

v4.14.0
4.14.0 (2021-01-18)
Features

add support for decorator metadata in scope analysis and in consistent-type-imports (#2751) (445e416), closes #2559
eslint-plugin: add object-curly-spacing rule (#2892) (32bd18d)

Changelog
Sourced from @typescript-eslint/parser's changelog.

4.14.0 ...

#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/typescript\-eslint/parser\-4\.14\.0
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/typescript\-eslint/parser\-4\.14\.0
#
[forms-frontend] Branch dependabot/npm\_and\_yarn/typescript\-eslint/eslint\-plugin\-4\.14\.0 was force-pushed to `9933234`
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/typescript\-eslint/eslint\-plugin\-4\.14\.0
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#

7e00619 Help: Add handling of disabled commands to avoi... - ks129
fe4eaeb Help: Show different message for case when comm... - ks129
3081cb5 Merge branch 'master' into help-disabled-command - ks129
d2c1b27 Catch CommandError for help command can_run await - ks129
0390bb8 Fix import order of help command file - ks129

oak estuaryBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/webpack\-5\.16\.0
#

Bumps webpack from 5.15.0 to 5.16.0.

Release notes
Sourced from webpack's releases.

v5.16.0
Features

add webpack_is_included("./some-module") which returns true when the module is bundled and false when not
priorize eager shared modules over normal shared modules (with the same version), as they are loaded anyway
add library.type: "assign-properties" which merges all exports into a global variable
allow optimization.innerGraph f...

#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/webpack\-cli\-4\.4\.0
#

Bumps webpack-cli from 4.3.1 to 4.4.0.

Release notes
Sourced from webpack-cli's releases.

v4.4.0
4.4.0 (2021-01-19)
Bug Fixes

better description for --no-watch-options-stdin (#2288) (4ee8665)
double commands output in help (#2298) (efe81e9)
pass all argv to configurations when serve command used (#2345) (5070b9b)
respect --stats, --color and --no-color option for serve command (#2312) (73d3fec)
show exact package name while prompting for installati...

#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/types/node\-14\.14\.22
#

Bumps fs-extra from 9.0.1 to 9.1.0.

Changelog
Sourced from fs-extra's changelog.

9.1.0 / 2021-01-19

Add promise support for fs.rm() (#841, #860)
Upgrade universalify for performance improvments (#825)

Commits

1625838 9.1.0
76d38fc tests: fix birthtime not available on tmpfs on Linux (#861)
d409cf8 Add promise support for fs.rm() (#860)
6bffcd8 Upgrade universalify (#825)
96facaa Docs: add fse-cli to the README (#815)
See full diff in co...

#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/fs\-extra\-9\.1\.0
#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/sentry/react\-6\.0\.0
#

Bumps @sentry/react from 5.30.0 to 6.0.0.

Release notes
Sourced from @sentry/react's releases.

6.0.0
This major version release doesn't contain any breaking API/code changes.
Starting from the version 6.0.0, all SDKs that support sending sessions data will do so by default. See our Release Health docs to learn more.
As of this version, it applies to all Browser SDKs (Browser, React, Angular, Vue, Gatsby etc.). Node.js and other related Serve...

#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/webpack\-5\.16\.0
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/sentry/react\-6\.0\.0
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/fs\-extra\-9\.1\.0
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/types/node\-14\.14\.22
#
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/webpack\-cli\-4\.4\.0
#
[python-discord/forms-frontend] New branch created: dependabot/npm\_and\_yarn/webpack\-cli\-4\.4\.0
regal archBOT
#
[python-discord/forms-frontend] New branch created: fix\-sentry\-sourcemaps
regal archBOT
regal archBOT
#

Sentry Issue: BOT-KW

OverflowError: Python int too large to convert to C int
  File "dateutil/relativedelta.py", line 388, in __add__
    + datetime.timedelta(days=days,
  File "dateutil/relativedelta.py", line 405, in __radd__
    return self.__add__(other)
  File "bot/converters.py", line 352, in convert
    return now + delta
  File "discord/ext/commands/core.py", line 451, in _actual_conv...
regal archBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
jb3
[python-discord/forms-frontend] branch deleted: dependabot/npm\_and\_yarn/webpack\-cli\-4\.4\.0
regal archBOT
oak estuaryBOT
regal archBOT
regal archBOT
regal archBOT
#

Description

The battleship cog runs into an error when given lowercased input. An IndexError is caused when trying to get the matching letter from the list of letters. The bot quits the game with the error:

An error occurred. Game failed

Steps to Reproduce

  1. Start a game of battleship
  2. Send a DM containing any spot in lowercase on your turn (example: a1)
  3. The bot sends the failure message in the commands channel, the index error is raised to console

#...

regal archBOT
oak estuaryBOT
odd spireBOT
regal archBOT
#

When a user is voice banned without being a member of the server the bot still tries to move them to a different voice channel. We should gracefully handle the user not being in voice or not being in the server (the infraction still applies fine) by doing a membership check before attempting to move the user.

Sentry Issue: BOT-KT

AttributeError: 'User' object has no attribute 'move_to'
  Fil...
#

We should prevent the bot from being able to infract itself!

Thanks to @decorator-factory for... discovering this one.

We need to add checks on moderation commands to check if the target user is the current bot.

Sentry Issue: BOT-KS

AttributeError: 'ClientUser' object has no attribute 'create_dm'
(5 additional frame(s) were not displayed)
...
  File "bot/exts/moderation/infraction/_utils.p...
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#

Something strange I noticed is that the infraction won't be scheduled to expire if it doesn't have an action.

https://github.com/python-discord/bot/blob/41e861c52c5e8c3f5fb751345661d8f062976d87/bot/exts/moderation/infraction/_scheduler.py#L176-L182

I'm not sure why it was done this way, but it means that a temp voice ban will only expire when the bot restarts and infractions are rescheduled. A mute doesn't suffer from this since the type check is inside the action.

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

Hey, I appreciate the enthusiasm, but could you check in on the [dev-contrib discord channel](#dev-contrib message)? I'd just like to discuss some things.

In terms of the PR, the proper procedure would be to leave a comment on the relevant issue so you can be assigned, and to fill in the PR form here.

can you explain why my PR is not accepting should i have to assign myself first?

odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: mbaruh/sm\-stats
#
[python-discord/logcord] branch deleted: frontend
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
#
[python-discord/bot] branch deleted: fuzz\-the\-matches
oak estuaryBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
odd spireBOT
regal archBOT
regal archBOT
#
[python-discord/logcord] New branch created: deployment
odd spireBOT