#dev-log

1 messages · Page 57 of 1

regal archBOT
#

running pipenv run lint, should just tell you whats wrong, not change it?
Actually some of the hooks will try to fix the errors, in this cases you are missing an empty line at the end of your json file, it seems like.

@Vthechamp22 you should run pipenv run precommit to make sure that your code will get linted before every commit. Also, it seems like your working on your master branch, which isn't advised, but it is fine for this one, just make sure that if you want to work on anothe...

regal archBOT
regal archBOT
#

Users sometimes like to spam, with having previous activity on the server such as actually contributing to conversations.

In these situations it's not ideal to ban them completely. This would be especially useful if a user is spamming across multiple channels.

I'd like to integrate this. I may need some help as I'm not completely familiar with the ins and outs of this bot.

regal archBOT
#

I'm unsure if I'd have used a mute on a member had I known they left even if it did work, instead seeing a reason to provide an appropriate infraction that actually can impact them now that they left (tempban) and as a response/increase in infraction from purposely avoiding taking responsibility for whatever they were about to be muted for. However, if other mods feel differently, then I'm not about to push hard against the tool being added. The only thing I'd ask is that, in the case they di...

ebon magnetBOT
#

Build 20201024.1 succeeded

Requested by

GitHub

Duration

00:01:06

Build pipeline

Seasonal Bot

regal archBOT
north knotBOT
ebon magnetBOT
#

Build 20201024.2 succeeded

Requested by

GitHub

Duration

00:02:54

Build pipeline

Seasonal Bot

night lilyBOT
#
SeasonalBot

Connected!

regal archBOT
#

It's only fine if out linter passes it, as you can see in the tests under, it doens't pass.
running pipenv run lint, should just tell you whats wrong, not change it?

Before I run pipenv run lint, git status returns:

On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   bot/exts/...
north knotBOT
ebon magnetBOT
#

Build 20201024.3 succeeded

Requested by

GitHub

Duration

00:03:03

Build pipeline

Seasonal Bot

night lilyBOT
#
SeasonalBot

Connected!

regal archBOT
ebon magnetBOT
#

Build 20201024.4 failed

Requested by

GitHub

Duration

00:00:48

Build pipeline

Seasonal Bot

ebon magnetBOT
#

Build 20201024.5 succeeded

Requested by

GitHub

Duration

00:00:57

Build pipeline

Seasonal Bot

regal archBOT
ebon magnetBOT
#

Build 20201024.1 succeeded

Requested by

GitHub

Duration

00:02:28

Build pipeline

Site

regal archBOT
regal archBOT
#
jb3

Looking good!

Some minor things on the CTA.

For whatever reason Safari is not picking up the font information in the SVG file. Maybe we should bake this into the SVG as curves instead if we cannot guarantee browser compatibility.

It does work on Chrome, Edge, etc. fine.

Is it possible to make the white take up the whole of the button when hovering instead of leaving a blurple slither at the end, it works for the neutral state with the white but less so with the blurple.

ebon magnetBOT
#

Build 20201024.2 succeeded

Requested by

GitHub

Duration

00:02:10

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201024.3 succeeded

Requested by

GitHub

Duration

00:02:26

Build pipeline

Site

regal archBOT
#
jb3

e5355de Add wave-style hero, 100K promo, timeline card. - scragly
5552b33 Merge branch 'master' into frontpage-100k - scragly
235abfd Use local svgs for wave elements. - scragly
a971b36 Add a message section to replace hero section f... - scragly
6437abe Override notice bottom margin, use new class in... - scragly

#
jb3
[python-discord/site] branch deleted: frontpage\-100k
north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201024.4 succeeded

Requested by

Joseph Banks

Duration

00:04:15

Build pipeline

Site

regal archBOT
#

The thing about users who leave, is that whether we apply a mute or a ban, they will know of neither, because the DM will fail, and if they choose to come back after being muted, they will still be muted, and currently won't even be able to verify. So I think it would be nice to have the mute succeed either way and call it a done deal.

Like I mentioned in the original post, we can add information on the success message for whether the user is in the server or not, so a moderator will sti...

regal archBOT
#
jb3

This is not yet necessary.

YTDL still exists and is available for download, even if the source is not on GitHub. I don't think we need to document that.

Right now, there is a lot of uproar against this and I would not be surprised if the YouTube-dl team submit a counter notice to the DMCA claim received from RIAA.

Let's hold off on this for a couple of months and reassess then what the situation with YouTube-dl is. The existing tag still conveys useful information.

#
jb3

Reopening since myself and AG seem torn on this issue.

YouTube DL is the biggest problem that we see in our server, if we want to generalise then I'm fine with the proposal of adding a "or any similar software" clause or something, but I think that ultimately the tag is built to target a specific problem we see within Python Discord.

north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201024.5 succeeded

Requested by

Joseph Banks

Duration

00:03:55

Build pipeline

Site

regal archBOT
#
north knotBOT
#

Postgres backup completed!

regal archBOT
#

Sentry Issue: SEASONALBOT-16

TypeError: Invalid variable type: value should be str, int or float, got None of type 
  File "yarl/_url.py", line 920, in _query_var
    raise TypeError(
  File "yarl/_url.py", line 905, in _query_seq_pairs
    yield quoter(key) + "=" + quoter(cls._query_var(val))
  File "yarl/_url.py", line 942, in _get_str_query
    query = "&".join(self._query_seq_pairs(quoter...
regal archBOT
night lilyBOT
#
SeasonalBot

Connected!

regal archBOT
ebon magnetBOT
#

Build 20201025.1 failed

Requested by

GitHub

Duration

00:00:59

Build pipeline

Seasonal Bot

#

Build 20201025.2 succeeded

Requested by

GitHub

Duration

00:01:04

Build pipeline

Seasonal Bot

regal archBOT
ebon magnetBOT
#

Build 20201025.3 succeeded

Requested by

GitHub

Duration

00:00:58

Build pipeline

Seasonal Bot

ebon magnetBOT
#

Build 20201025.4 succeeded

Requested by

GitHub

Duration

00:01:04

Build pipeline

Seasonal Bot

#

Build 20201025.5 succeeded

Requested by

GitHub

Duration

00:01:04

Build pipeline

Seasonal Bot

regal archBOT
regal archBOT
regal archBOT
#

https://github.com/python-discord/bot/blob/afe84f425d244c05993c9a0922877fb70fa33104/bot/exts/help_channels.py#L218

The !close command removes the cooldown role from the person who issued the command, but as staff members are able to close any help channel it is not guaranteed that the person issuing the command is the claimant.

This call should be changed to look up who the claimant is and remove the role from them.

regal archBOT
#

Currently, we store a dictionary which maps channels to their claimants. Should we iterate through this dictionary to find a claimant's channel? Or should we be redundant and have another dictionary which maps claimants to channels?

I would say it's a question of performance vs resource usage, but neither of those should matter here since there would only be 32 help channels open at our maximum capacity.

regal archBOT
regal archBOT
#

Currently, we store a dictionary which maps channels to their claimants. Should we iterate through this dictionary to find a claimant's channel? Or should we be redundant and have another dictionary which maps claimants to channels?

A search is not necessary. The command must always be invoked in the channel being closed, so the claimant may be retrieved with await self.help_channel_claimants.get(ctx.channel.id).

north knotBOT
#

Postgres backup completed!

regal archBOT
#

So I think it would be nice to have the mute succeed either way and being able to call it a done deal.
.. we can add information on the success message for whether the user is in the server or not, so a moderator will still be able to elevate the infraction if they so choose.

I don't really agree, since I don't want to unnecessarily add two infraction entries for one event. Things like this is why infraction counts, even when broken down into types, are not really representative of h...

ebon magnetBOT
#

Build 20201026.1 succeeded

Requested by

GitHub

Duration

00:01:04

Build pipeline

Seasonal Bot

regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: code\_message
regal archBOT
#
[python-discord/branding] New branch created: decorator\-factory\-\-duck\_bike
#

Here's a significantly shorter version of the !code message, arrived at by committee in the #organization channel. The goal is to just hit the key point, namely how to format Python code in the here and now, and then get back to the ongoing discussion or help session.

Lemon suggested that we write our own page on where the backtick key is located and we can switch the link out should that ever be completed.

ebon magnetBOT
#

Build 20201026.1 succeeded

Requested by

GitHub

Duration

00:02:54

Build pipeline

Bot

regal archBOT
regal archBOT
#
  • Created special base template that all other templates that is in events app must extend.
  • Created events app that have 2 views: Static index view and dynamic page view. All event pages is located under events app directory in pages folder.
  • When requested page is directory, then this look for _index.html inside this directory.
  • Covered views with tests
  • Migrated Summer Code Jam 2020 base page and rules page to this system.
  • Also migrated Jams part of static events index page....
regal archBOT
#

One of the issues we're facing in terms of moderating the community is that we see people entering the community just to troll or be obnoxious in other ways. This includes dumping NSFW imagery in high activity channels like #python-general and posting spam links.

Junior Developers

A suggestion that has been made a couple of times, both by regular community members as well as staff members, is restricting permissions for new members of the community. Basically, new members (defined ...

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201026.1 succeeded

Requested by

GitHub

Duration

00:02:35

Build pipeline

Site

ebon magnetBOT
#

Build 20201026.2 succeeded

Requested by

GitHub

Duration

00:02:36

Build pipeline

Site

regal archBOT
#

This sounds like a great idea, I have a few suggestions.

Not sure if this has been said before but maybe like a rep system? If somebody's helps you then you give them a rep, if the reach a certain ammount they get the role.

Another suggestion (which is quite basic) is a 1 week to get the role, you could also make it so you need a certain ammount of msgs in a help channel.

This last one might be difficult, but some sort of machine learning algorithm to work out who's actually talking ...

regal archBOT
regal archBOT
regal archBOT
#
jb3
[python-discord/site] New branch created: metricity/add\-activity\-blocks
#
jb3

Voice gate has been a success (in general)!

One downside we have observed is users spamming in order to meet the 50 messages threshold, this is dissatisfactory and will not be tolerated!

This PR introduces a new response in the metricity data endpoint to show how many 10 minute intervals the requested user has been active in. This means how many blocks of 10 minutes has the user sent at least one message in.

A threshold for this has not been decided on for this yet, but this will all...

ebon magnetBOT
#

Build 20201027.2 succeeded

Requested by

GitHub

Duration

00:02:15

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201027.3 failed

Requested by

GitHub

Duration

00:01:31

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201027.4 failed

Requested by

GitHub

Duration

00:01:31

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201027.5 succeeded

Requested by

GitHub

Duration

00:01:54

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201027.6 succeeded

Requested by

GitHub

Duration

00:02:23

Build pipeline

Site

regal archBOT
north knotBOT
#
Auto-deployed: metricity
regal archBOT
north knotBOT
#

Postgres backup completed!

regal archBOT
#

merger -> merged

Previously it was "Do You Even Python and PyDis merger", in the timeline Google Doc it's "merge", but looking at the other items, "merged" seems better, so it's changed to that.

  • Found this error while reading through the timeline, and I thought the description didn't mention anyone in particular that merged the two servers (because "merger"), so I guess that was a typo.
  • I thought that this is a super minor change so I just commit online from GitHub directly, wi...
ebon magnetBOT
#

Build 20201027.7 succeeded

Requested by

GitHub

Duration

00:02:32

Build pipeline

Site

regal archBOT
regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201027.1 succeeded

Requested by

GitHub

Duration

00:03:16

Build pipeline

Bot

#

Build 20201027.2 succeeded

Requested by

GitHub

Duration

00:03:17

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201027.3 succeeded

Requested by

GitHub

Duration

00:03:16

Build pipeline

Bot

ebon magnetBOT
#

Build 20201027.4 succeeded

Requested by

GitHub

Duration

00:02:31

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201027.5 succeeded

Requested by

GitHub

Duration

00:03:17

Build pipeline

Bot

regal archBOT
#

This sounds quite a good idea.
I have a few ideas that could mimic MEE6. I personally think the "leveling" system can work well. However, as you addressed people could spam.

So to clarify, these are the general ideas for the basic plan of the "level" system

  • People gain "experience" if they talk

  • To counter spam, make it have a cooldown like MEE6 (e.g. it only adds experience points every 1 minute you make a message)

  • To make what messages the bot counts as actual conversation,...

#
[python-discord/bot] branch deleted: code\_message
north knotBOT
ebon magnetBOT
#

Build 20201027.6 succeeded

Requested by

GitHub

Duration

00:04:21

Build pipeline

Bot

oak estuaryBOT
regal archBOT
#

In board terms, I think we're looking for a simple system that just adds a bit of a barrier for trolls, not an extensive reputation/leveling system. This means that we want to have simple criteria that we use to determine that someone should have those permissions.

I'm currently leaning towards a system that combines:

  • Membership date (accept date)
  • Message total
  • Message spread (to prevent spam there could be a requirement that members should have been active in at least 3 differe...
regal archBOT
#

Yes, we can make it so the bot checks all of the user's sent and undeleted messages, (excluding the non-conversation channels,) when the "command" is used. I'm pretty sure you could do that without keeping track of the "levels" in a database/file. (Statbot is able to do that, you could probably allow the bot to do that with Intents or smth like that)

@Brocoliman There shouldn't be any need for another bot, we have Metricity, which keeps trac...

#

This sounds quite a good idea.
I have a few ideas that could mimic MEE6. I personally think the "leveling" system can work well. However, as you addressed people could spam.

So to clarify, these are the general ideas for the basic plan of the "level" system

  • People gain "experience" if they talk
  • To counter spam, make it have a cooldown like MEE6 (e.g. it only adds experience points every 1 minute you make a message)
  • To make what messages the bot counts as actual ...
regal archBOT
#

There are still a few unresolved comments from previous reviews. I also have more concerns about the regular expressions. I analysed the GitHub one and made some points below, but the other regular expressions likely have similar problems.

  1. A repo may be called "blob", or the organisation/user. This can be fixed by using a more limited character set. Specifically, problems arise because it's currently matching /. A / is not even a valid character in a repository name (nor is it presu...
regal archBOT
north knotBOT
ebon magnetBOT
#

Build 20201027.7 succeeded

Requested by

GitHub

Duration

00:04:45

Build pipeline

Bot

oak estuaryBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
#

Addresses point 1 in #654. I planned to wait with this one, but we use this combination of commands so often I decided it's worth to add it even if gets partially rewritten by a future PR.

As explained in the issue, we use !user and !infr search so often we might as well have a reaction leading from one to another.

Implementation

  • The main issue here was to make the information on whether a user has infractions accessible from the user_info function.
    • I wasn't a fan of...
ebon magnetBOT
#

Build 20201027.8 succeeded

Requested by

GitHub

Duration

00:03:05

Build pipeline

Bot

regal archBOT
regal archBOT
#

When a domain like cookies.com is added to the blacklist, websites with domains containing cookies are triggered as well, for example, deliciouscookies.com. (can't link actual example because it's NSFW)

Maybe some special casing can be implemented to prevent deliciouscookies.com from triggering? I know that you can do http://cookies.com and https://cookies.com, but this particular website was linked without the protocol.

regal archBOT
ebon magnetBOT
#

Build 20201028.1 succeeded

Requested by

GitHub

Duration

00:02:19

Build pipeline

Site

ebon magnetBOT
#

Build 20201028.2 succeeded

Requested by

GitHub

Duration

00:02:15

Build pipeline

Site

ebon magnetBOT
#

Build 20201028.3 succeeded

Requested by

GitHub

Duration

00:02:32

Build pipeline

Site

ebon magnetBOT
#

Build 20201028.4 succeeded

Requested by

GitHub

Duration

00:02:16

Build pipeline

Site

ebon magnetBOT
#

Build 20201028.5 succeeded

Requested by

GitHub

Duration

00:02:30

Build pipeline

Site

north knotBOT
#

Postgres backup completed!

ebon magnetBOT
#

Build 20201028.1 failed

Requested by

GitHub

Duration

00:01:05

Build pipeline

Bot

#

Build 20201028.3 succeeded

Requested by

GitHub

Duration

00:03:07

Build pipeline

Bot

regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201028.6 succeeded

Requested by

GitHub

Duration

00:02:13

Build pipeline

Site

regal archBOT
#

@scragly Well if it's not a feature we have a consensus on I obviously won't try implementing it.

That said, I'm actually a bit hesitant about allowing longer mutes to go through automatically. If we compare it to bans we have several things to take into account here:

  • Longer temporary bans don't automatically go through, only permas.
  • Mutes are more common than bans, which brings a higher chance of an accident.
  • Once a user is given a tempban, they're out of the server. Any addition...
north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201029.1 succeeded

Requested by

GitHub

Duration

00:01:03

Build pipeline

Seasonal Bot

#

Build 20201029.2 succeeded

Requested by

GitHub

Duration

00:01:03

Build pipeline

Seasonal Bot

#

Build 20201029.3 succeeded

Requested by

GitHub

Duration

00:01:02

Build pipeline

Seasonal Bot

regal archBOT
#

So basically I just saw this error pop up when I added a word right before the winner announcement. At the end of the announcement, it resets the message and when I add a reaction to a word right before the announcement, while it is iterating over the dictionary, the dictionary changes (gets reset) and raises a RuntimeError. At least that's what I think. I am not able to reproduce error though. So shall I delete it?

regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: mbaruh/defcon
regal archBOT
ebon magnetBOT
#

Build 20201030.1 succeeded

Requested by

GitHub

Duration

00:03:04

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201030.2 succeeded

Requested by

GitHub

Duration

00:03:13

Build pipeline

Bot

regal archBOT
#
[python-discord/snekbox] New branch created: decorator\-factory\-\-import\-lark
ebon magnetBOT
#

Build 20201030.1 failed

Requested by

GitHub

Duration

00:00:35

Build pipeline

Snekbox

north knotBOT
#

Postgres backup completed!

regal archBOT
ebon magnetBOT
#

Build 20201030.2 succeeded

Requested by

GitHub

Duration

00:02:00

Build pipeline

Snekbox

regal archBOT
ebon magnetBOT
#

Build 20201030.1 succeeded

Requested by

GitHub

Duration

00:02:41

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201030.2 succeeded

Requested by

GitHub

Duration

00:02:38

Build pipeline

Site

regal archBOT
regal archBOT
north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201030.3 succeeded

Requested by

GitHub

Duration

00:02:40

Build pipeline

Snekbox

regal archBOT
regal archBOT
oak estuaryBOT
regal archBOT
#
[python-discord/bot] New branch created: Hemlock/voice\-gate\-ping
regal archBOT
#
jb3

44ffb80 Set logging level for async-rediscache to warning - Numerlor
4d1c204 Remove unnecessary getLogger call - Numerlor
afe84f4 PR #1248: Set async-rediscache logging level to... - kwzrd
4610483 Made the message significantly shorter - swfarnsworth
8acd7e1 link to a page about finding the backtick key o... - swfarnsworth

ebon magnetBOT
#

Build 20201030.3 succeeded

Requested by

GitHub

Duration

00:02:51

Build pipeline

Bot

regal archBOT
#

For the Winter Code Jam, we created a highlights video, which you can find here:
https://www.youtube.com/watch?v=8fbZsGrqBzo

The video consists of footage from the 10 finalists, a voiceover by yours truly, an intro sequence, and some lowerthirds created in After Effects.

Creating a video like this can be a bit labor intensive, so we're looking for contributors who are willing to help out with part of this process. The most immediate need is the recording of footage for the video.

I...

#
jb3

This seems pretty overcomplicated and could be simplified, there are no other features that have been discussed which would benefit from this.

I think this could be simplified to drop the while loop and instead do something along the lines of:

if is_mod_channel():
    try:
        # wait for reaction
    except asyncio.TimeoutError:
        # No reaction added in time, log
    finally:
        # Remove all reactions and perform infraction search
#

Do we have any approximate length that we'd like the video to have? Generally on YouTube, these are my observations and data from previous research regarding optimal video length and time:

  • Total: 11 min (±3 min)
  • Intro: 1 min 10 s (±20 s)

Something like this would probably be quite good for this as well. We should also try to add some fun or almost surprising elements at times. This will help keep the interest up.

#
jb3
[python-discord/site] branch deleted: metricity/add\-activity\-blocks
ebon magnetBOT
#

Build 20201030.3 succeeded

Requested by

GitHub

Duration

00:02:48

Build pipeline

Site

ebon magnetBOT
#

Build 20201031.1 succeeded

Requested by

Joseph Banks

Duration

00:04:33

Build pipeline

Site

north knotBOT
regal archBOT
north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201031.2 succeeded

Requested by

Joseph Banks

Duration

00:04:35

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201031.1 succeeded

Requested by

GitHub

Duration

00:03:14

Build pipeline

Bot

regal archBOT
north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201031.3 succeeded

Requested by

Joseph Banks

Duration

00:04:29

Build pipeline

Site

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201031.2 succeeded

Requested by

GitHub

Duration

00:03:10

Build pipeline

Bot

ebon magnetBOT
#

Build 20201031.1 succeeded

Requested by

GitHub

Duration

00:01:05

Build pipeline

Seasonal Bot

north knotBOT
#

Postgres backup completed!

ebon magnetBOT
#

Build 20201031.2 succeeded

Requested by

GitHub

Duration

00:00:57

Build pipeline

Seasonal Bot

#

Build 20201031.3 succeeded

Requested by

GitHub

Duration

00:01:00

Build pipeline

Seasonal Bot

#

Build 20201031.4 succeeded

Requested by

GitHub

Duration

00:00:51

Build pipeline

Seasonal Bot

regal archBOT
ebon magnetBOT
#

Build 20201031.5 succeeded

Requested by

GitHub

Duration

00:03:28

Build pipeline

Seasonal Bot

regal archBOT
#

I have relocked straight to 1.5.1 (2fa29e3) which seems to circumvent the Member converter issue (d.py now fetches what's needed automatically). I think this essentially means that we don't need the Member intent, so I have disabled it in 59a9811. My testing indicates that the converter works fine:

![evidence_of_my_selfless_work](https://user-images.githubusercontent.com/44734341/97778455-93d1f200-1b77-11eb-8fad-75ca854a...

regal archBOT
ebon magnetBOT
#

Build 20201031.6 succeeded

Requested by

GitHub

Duration

00:01:13

Build pipeline

Seasonal Bot

regal archBOT
ebon magnetBOT
#

Build 20201031.7 succeeded

Requested by

GitHub

Duration

00:01:11

Build pipeline

Seasonal Bot

regal archBOT
#
jb3
[python-discord/seasonalbot] branch deleted: discordpy\-15
north knotBOT
ebon magnetBOT
#

Build 20201031.8 succeeded

Requested by

Joseph Banks

Duration

00:03:24

Build pipeline

Seasonal Bot

night lilyBOT
#
SeasonalBot

Connected!

ebon magnetBOT
#

Build 20201031.9 succeeded

Requested by

GitHub

Duration

00:01:03

Build pipeline

Seasonal Bot

north knotBOT
ebon magnetBOT
#

Build 20201031.10 succeeded

Requested by

Joseph Banks

Duration

00:03:27

Build pipeline

Seasonal Bot

night lilyBOT
#
SeasonalBot

Connected!

regal archBOT
night lilyBOT
#
SeasonalBot

Connected!

#
SeasonalBot

Connected!

#
SeasonalBot

Connected!

regal archBOT
regal archBOT
#
jb3
[python-discord/bot] New branch created: voicegate/activity\-blocks
#
jb3

This PR introduces a new check for the voice gate to ensure that a users activity comes from a larger period of time rather than a burst all at once. This should deter spammers.

The way that the check works is that user activity is chunked up into 10 minute blocks which are then counted.

For example:

[16:05] User A: Hello!
[16:06] User A: Hello world!

This is one activity block because it all happened within the 16:00-16:10 block.

[16:05] User B: Hello!
[16:15] User B: Hello w...
ebon magnetBOT
#

Build 20201031.3 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201101.1 succeeded

Requested by

GitHub

Duration

00:03:08

Build pipeline

Bot

regal archBOT
#
[python-discord/bot] New branch created: listcomps\-rewrite
north knotBOT
#

Postgres backup completed!

regal archBOT
ebon magnetBOT
#

Build 20201101.2 succeeded

Requested by

GitHub

Duration

00:03:10

Build pipeline

Bot

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201101.3 succeeded

Requested by

GitHub

Duration

00:03:00

Build pipeline

Bot

regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: 23d4acfe
#
[python-discord/bot] branch deleted: 23d4acfe
regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201101.4 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

regal archBOT
#

I think this feature is very useful, as we often do use the combo of "user -> infr search". However, my main issue with that combo is the sheer space it takes up. My personal preference would be to have the infraction search embed replace the user info embed with the infraction search embed.

That would make the "infraction embed" a menu option of the information embed, instead of an additional embed.

regal archBOT
#

Please also keep in mind that this is something we aim to do twice a year, so let's try to come up with a format and a process that isn't a ton of work so that we can keep it up consistently.

Which is to say - don't wear yourself out, and look for ways to generalize an approach. Maybe we can make some lower thirds with duckies in them that can be reused for all videos. Maybe we can make some nice ducky transitions that we can re-use. A good template for the script. Sound effects, music, .. l...

#

@SebastiaanZ that would be a fairly simple change, the issue is that information from the user embed can still be helpful even after pulling up the user's infractions to see the whole picture, and this behavior might cause mods to avoid using the feature.

Keep in mind that @scragly is currently working on making the infractions embed a lot more compact, so this issue won't be that severe in the long term. In terms of vertical space this feature already makes a slight improvement.

As I s...

#

I don't see it, but if that's what the majority thinks then alright. In fact, I think it's the opposite - if we only want such a feature if it replaces the user embed, then there is no point in having it, as I think we will often find ourselves bringing up the user embed afterwards.

We could make it a paginator where the first page is the user embed and the other pages is the list of infractions, but I'm not sure if that's a good feature.

regal archBOT
ebon magnetBOT
#

Build 20201101.5 succeeded

Requested by

GitHub

Duration

00:03:10

Build pipeline

Bot

regal archBOT
#
[python-discord/bot] branch deleted: listcomps\-rewrite
regal archBOT
#
[python-discord/bot] New branch created: listcomp\-rewrite
regal archBOT
north knotBOT
regal archBOT
ebon magnetBOT
#

Build 20201101.1 succeeded

Requested by

Joseph Banks

Duration

00:04:15

Build pipeline

Site

regal archBOT
#
[python-discord/bot] branch deleted: voicegate/activity\-blocks
north knotBOT
ebon magnetBOT
#

Build 20201101.6 succeeded

Requested by

GitHub

Duration

00:04:42

Build pipeline

Bot

oak estuaryBOT
regal archBOT
#

We've set some rough deadlines now for this task:

  • First draft of script should be done by 8th of November, handled by @gustavwilliam
  • Voiceover + music should be done by 15th of November, handled by @lemonsaurus
  • Rough cut of video should be finished by 22nd of November, handled by @janine9vn
  • Polish and sound effects should be done by 29th of November, @lemonsaurus will take the lead but we'll handle this as a group.
regal archBOT
#

Here are a few of the things we discussed earlier today.

Video ideas

  • Order projects "last to first" in the rank they got
  • Include "honorable mentions" projects as well
  • Start with a hook that wants them to watch until the end
  • Presentations of projects should generally be < 1 minute, but should vary based on the size and interest of each project
  • Duckies "sprinkled into the project" and as transitions
  • Sharp transitions and title screens to keep it interesting

About t...

regal archBOT
regal archBOT
#

closes #1172

This PR uses the new API endpoints and features implemented in https://github.com/python-discord/site/pull/410

Commands/Functionality the Cog provides:

  • [x] Create a new user event.
  • [x] Delete user event.
  • [x] Schedule a user event.
  • [x] Cancel scheduled user event.
  • [x] Open/Close user events voice channel.
  • [x] Announce during event start by tagging all event subscribers.
  • [ ] Modify user event description.

How does this work?

  • Whenever a ne...
ebon magnetBOT
#

Build 20201102.1 succeeded

Requested by

GitHub

Duration

00:03:04

Build pipeline

Bot

north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201102.1 succeeded

Requested by

GitHub

Duration

00:02:31

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201102.2 succeeded

Requested by

Joseph Banks

Duration

00:04:32

Build pipeline

Site

regal archBOT
regal archBOT
regal archBOT
regal archBOT
north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
regal archBOT
regal archBOT
#

Instead, basic idea is like this.
When a user triggers the verification command, the bot will check how many messages the user sent in the conversation channels, either since they joined, or in the past. If the user has been automodded or muted for things like spam or by moderators in the past month, then they will not be eligible for verification.

@Brocoliman I think we are against having a verification command, because as @SebastiaanZ said:

Personally, I think the "new member" -...

regal archBOT
regal archBOT
regal archBOT
#

Which filters would we want to include here? Looking through it the token and webhooks removers, and antimalware are the ones that will benefit the most, but the everyone ping filter and invite filters also feel like they could be triggered accidentally without knowledge of the removals from the bot.

The current process I was thinking of is to delete the user message then check if the user has open DMs:

  • If they are open, send the current in channel notification and their original mess...
north knotBOT
#

Postgres backup completed!

regal archBOT
#

I think they should both be given. Having one United role for all verified members seems optimal, and the "New Member" role would simply add additional restrictions. If it's simply above the "Developers" role in rank, we can change the permissions for the users. It would of course also allow us to modify the bot's behavior if we wanted to, while still having a "verified member" role (Developers).

regal archBOT
ebon magnetBOT
#

Build 20201104.1 succeeded

Requested by

GitHub

Duration

00:01:22

Build pipeline

Seasonal Bot

regal archBOT
regal archBOT
#

I think they should both be given. Having one United role for all verified members seems optimal, and the "New Member" role would simply add additional restrictions. If it's simply above the "Developers" role in rank, we can change the permissions for the users. It would of course also allow us to modify the bot's behavior if we wanted to, while still having a "verified member" role (Developers).

The role hierarchy should be irrelevant for what we want to achieve.

If a lower role ha...

regal archBOT
ebon magnetBOT
#

Build 20201104.1 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201104.1 succeeded

Requested by

GitHub

Duration

00:02:30

Build pipeline

Site

ebon magnetBOT
#

Build 20201104.2 succeeded

Requested by

GitHub

Duration

00:02:55

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201104.3 succeeded

Requested by

GitHub

Duration

00:02:18

Build pipeline

Site

ebon magnetBOT
#

Build 20201104.2 succeeded

Requested by

GitHub

Duration

00:03:06

Build pipeline

Bot

regal archBOT
#
[python-discord/bot] New branch created: moderation/user\-from\-metricity
regal archBOT
regal archBOT
north knotBOT
#

Postgres backup completed!

regal archBOT
ebon magnetBOT
#

Build 20201105.1 succeeded

Requested by

GitHub

Duration

00:03:08

Build pipeline

Bot

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

ebon magnetBOT
#

Build 20201105.2 succeeded

Requested by

GitHub

Duration

00:05:34

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201105.3 succeeded

Requested by

GitHub

Duration

00:03:24

Build pipeline

Bot

oak estuaryBOT
ebon magnetBOT
#

Build 20201105.1 succeeded

Requested by

GitHub

Duration

00:02:26

Build pipeline

Site

ebon magnetBOT
#

Build 20201105.5 succeeded

Requested by

GitHub

Duration

00:03:07

Build pipeline

Bot

ebon magnetBOT
#

Build 20201105.6 succeeded

Requested by

GitHub

Duration

00:03:14

Build pipeline

Bot

regal archBOT
#

This PR's purpose is to ping new users in the voice_verification channel so that they can figure out why they aren't able to talk. Currently, we have a lot of people confused about the new system. There are multiple people popping in and out of the voice channel thinking that there's something wrong with their connection or thinking they got specifically suppressed.

By pinging the user in the voice_verification channel (along with a little explanation on how to use it), this should redu...

#

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

ebon magnetBOT
#

Build 20201105.7 failed

Requested by

GitHub

Duration

00:01:07

Build pipeline

Bot

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201105.8 succeeded

Requested by

GitHub

Duration

00:03:19

Build pipeline

Bot

north knotBOT
#

Postgres backup completed!

regal archBOT
ebon magnetBOT
#

Build 20201106.1 succeeded

Requested by

GitHub

Duration

00:03:00

Build pipeline

Bot

regal archBOT
#

https://github.com/python-discord/seasonalbot/blob/44bc2efb37702758594f7218ae998fd725394773/bot/exts/evergreen/wolfram.py#L28

Keep track of how many uses we've had of the wolfram commands. The max usage should be listed in their documenation, and the daily user & guild cooldown should reflected on how much we have left in total divided by how many days until the next year.

This can be achieved with a simple cache that resets with a bot restart, or a more persistent storage like json/db...

regal archBOT
#

I don’t quite like this, if we ever change the message and the first 45 characters aren’t the same for any reason, the code will break. Also, a user could spam the channel using the same 45 characters. What I think should be done is not deleting messages in on_message if the user is a bot, and instead handle deletion were the message is created, you’d just have to delete the message sent line 147 in the same function.

#

Writing False into the cache feels a little hacky to me. How would you feel about writing a -1 or similar to signify that there's no message to be removed? It's not an ideal solution, ideally we'd want a set of pinged user IDs, but I think that's not currently possible with our wrapper, so "abusing" the keys sort of makes sense.

#

This races with _async_init. There is no guarantee that the task has completed, so the attr may not yet exist. You can await the task, or simply get rid of _async_init, await the guild ready event here, and grab a fresh instance every time. I also think that attrs that are not set in the __init__ should be explicitly annotated or assigned a placeholder None at init time, so that you don't have to worry about the potential AttributeError

ebon magnetBOT
#

Build 20201106.2 succeeded

Requested by

GitHub

Duration

00:02:30

Build pipeline

Site

regal archBOT
ebon magnetBOT
#

Build 20201106.2 succeeded

Requested by

GitHub

Duration

00:03:12

Build pipeline

Bot

#

Build 20201106.3 succeeded

Requested by

GitHub

Duration

00:02:57

Build pipeline

Bot

ebon magnetBOT
#

Build 20201106.4 succeeded

Requested by

GitHub

Duration

00:04:17

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201106.5 succeeded

Requested by

GitHub

Duration

00:04:45

Build pipeline

Bot

regal archBOT
regal archBOT
#

With the current implementation on the bot side, the subscriptions field is used as a write-only field.

The current implementation

The bot adds a reaction on the event message and, reacting the reaction toggles subscription.
During the event start, the reacted users are synced as subscriptions with the site.

Conclusion

The subscriptions field can be removed as it does not serve any purpose.

ebon magnetBOT
#

Build 20201106.6 succeeded

Requested by

GitHub

Duration

00:03:22

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201106.7 succeeded

Requested by

GitHub

Duration

00:03:08

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201106.8 succeeded

Requested by

GitHub

Duration

00:05:00

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201106.3 succeeded

Requested by

GitHub

Duration

00:02:23

Build pipeline

Site

ebon magnetBOT
#

Build 20201106.9 succeeded

Requested by

GitHub

Duration

00:03:01

Build pipeline

Bot

#

Build 20201106.10 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

#

Build 20201106.11 succeeded

Requested by

GitHub

Duration

00:02:57

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201106.12 succeeded

Requested by

GitHub

Duration

00:03:29

Build pipeline

Bot

regal archBOT
regal archBOT
#

Looking good, thanks for addressing all the feedback.

We no longer need many of the else clauses here because of having adjusted the logic to return early. Due to the rewrite, we could have just e.g.:

if member.voice is None:
    ...
    return

in_cache = ...

if in_cache:
    ...
    return

verified = ...

The early return helps us avoid the deep indentation, which is difficult to follow.

ebon magnetBOT
#

Build 20201106.13 succeeded

Requested by

GitHub

Duration

00:03:17

Build pipeline

Bot

oak estuaryBOT
regal archBOT
#
[python-discord/bot] New branch created: sebastiaan/bugs/codeblock\-language\-detection
#

The highlighting package Discord uses, highlight.js, has a couple of language specifiers that include the characters -, +, and .. One example is a Python-related language specifier: python-repl. However, the regex pattern we used to detect codeblocks did not account for these characters and, as such, did not detect that codeblocks using language specifiers that included these characters had a language specifier.

This PR changes the character set we use to match language specifier...

ebon magnetBOT
#

Build 20201106.14 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

regal archBOT
#

Closes #1192

Moderators are now able to use the !user command to see more information on themselves and others.

Verification times, messages sent, and 10-minute activity block counts are viewable by moderators in mod channels. Regular users will not be able to see this new data.

This will be especially useful in channels such as #mod-alerts, where a moderator can identify a user's intentions by seeing the metrics of their activity across the server.

Inside mod channels:
![ima...

ebon magnetBOT
#

Build 20201107.1 failed

Requested by

GitHub

Duration

00:02:47

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201107.1 succeeded

Requested by

GitHub

Duration

00:02:24

Build pipeline

Site

north knotBOT
#

Postgres backup completed!

ebon magnetBOT
#

Build 20201107.2 succeeded

Requested by

GitHub

Duration

00:02:53

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201107.3 succeeded

Requested by

GitHub

Duration

00:02:54

Build pipeline

Bot

regal archBOT
#

I think there's room for improvement at the end of the voice state listener. Although it doesn't fail in an observable way, it suffers from two issues:

  • We always attempt to delete the message after 60 seconds with no regard for whether it was already deleted by the on_message
  • Once the listener deletes it, it does not write this information into the cache, so the on_message will still attempt to delete it

Both of these issues are relatively easy to resolve. Instead of the "fire an...

regal archBOT
regal archBOT
regal archBOT
#
[python-discord/bot] branch deleted: bug/ci/cache\-continue\-on\-error
ebon magnetBOT
#

Build 20201107.4 succeeded

Requested by

GitHub

Duration

00:04:58

Build pipeline

Bot

regal archBOT
#

@kwzrd could you describe the series of operations you made that led to the bug? From the screenshot it seems the status command showed that it's set to 0 days, while the notifier still sees the value of 1, even though they're both referring to the same attribute. I didn't manage to replicate such a scenario when I tested it before.
Either way a cog unloader sounds fine to me, but I'm wondering what caused this.

I agree with the other two proposed changes.

ebon magnetBOT
#

Build 20201107.5 succeeded

Requested by

GitHub

Duration

00:03:10

Build pipeline

Bot

#

Build 20201107.6 succeeded

Requested by

GitHub

Duration

00:03:02

Build pipeline

Bot

ebon magnetBOT
#

Build 20201107.7 succeeded

Requested by

GitHub

Duration

00:03:03

Build pipeline

Bot

ebon magnetBOT
#

Build 20201107.8 failed

Requested by

GitHub

Duration

00:01:02

Build pipeline

Bot

ebon magnetBOT
#

Build 20201107.9 succeeded

Requested by

GitHub

Duration

00:03:17

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201107.10 succeeded

Requested by

GitHub

Duration

00:04:35

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201107.11 succeeded

Requested by

GitHub

Duration

00:03:08

Build pipeline

Bot

oak estuaryBOT
regal archBOT
ebon magnetBOT
#

Build 20201108.1 succeeded

Requested by

GitHub

Duration

00:02:32

Build pipeline

Site

north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201108.1 succeeded

Requested by

GitHub

Duration

00:03:06

Build pipeline

Bot

regal archBOT
#

To expand on this: we want the if-condition to hold only if the member ID is not in the cache. If we get with a None default, in_cache being None means that the member wasn't there, and NO_MSG means that it was there but the message is deleted. But we need to check for the None explicitly, because both are falsey. If we use a NO_MSG default we cannot tell whether the ID was there or not, so it doesn't make sense for a default value.

Ultimately this should probably just be:

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201108.2 succeeded

Requested by

GitHub

Duration

00:03:19

Build pipeline

Bot

regal archBOT
#

Writing False into the cache feels a little hacky to me. How would you feel about writing a -1 or similar to signify that there's no message to be removed? It's not an ideal solution, ideally we'd want a set of pinged user IDs, but I think that's not currently possible with our wrapper, so "abusing" the keys sort of makes sense.

regal archBOT
#

I'm spying a race issue here, when users might run into the pathological case when discord repeatedly spam joins/leaves the voice channel. This can result in over 6 joins/leave events per second, and while I'm not sure if the issue is fixed and do not have a way to reproduce it under my control, I think we should be careful and address that case.

At the moment, the user-ping lockout in the cache is split over a send message and a wait-ready event, which makes it especially prone to getting...

regal archBOT
ebon magnetBOT
#

Build 20201109.1 succeeded

Requested by

GitHub

Duration

00:02:58

Build pipeline

Bot

regal archBOT
#
[python-discord/bot] branch deleted: sebastiaan/bugs/codeblock\-language\-detection
north knotBOT
ebon magnetBOT
#

Build 20201109.2 succeeded

Requested by

GitHub

Duration

00:04:44

Build pipeline

Bot

oak estuaryBOT
north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
#

@bast0006 You're definitely right that there's still plenty of opportunity for racing, both with concurrent voice events and the on_message too. I'd consider it pathological because I wasn't able to create such a situation myself, but one needs to consider that in the production environment the event loop is busier, which I imagine creates larger "windows" of opportunity for things to go wrong.

Would it be reasonable to have a sentry "sending message" value to set into redis while we w...

regal archBOT
#
[python-discord/django-simple-bulma] New tag created: v2\.1\.0
regal archBOT
ebon magnetBOT
#

Build 20201109.1 succeeded

Requested by

GitHub

Duration

00:01:22

Build pipeline

Seasonal Bot

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201109.3 succeeded

Requested by

GitHub

Duration

00:03:20

Build pipeline

Bot

regal archBOT
regal archBOT
#

At the moment, the only way to edit a blacklist entry is via the api, or by removing, then adding an entry. If someone only wants to add a reason or change a specifier, it's error-prone and has (trivial) gaps in coverage to alter an entry, especially if you're just adding onto the reason why something is in the blacklist.

!blacklist edit

Should work just fine for this, although it might want its own API route in the backend.

regal archBOT
#

When verifying users reports and when searching for information about an issue, it's helpful to be able to take a discord ID and get relevant information from it. All discord ID's encode their date+time of creation within them, so this can be used to date a dm channel's creation, a DM's timing, and in some cases can be used to jump directly back into a channel to find the actual conversation a deleted message was present in by manually constructing a channel/message link (as discord's default...

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201109.4 succeeded

Requested by

GitHub

Duration

00:03:07

Build pipeline

Bot

regal archBOT
#

Not sure if this has been said before but maybe like a rep system? If somebody's helps you then you give them a rep, if the reach a certain ammount they get the role.

I agree with this also, something like if and when a user has received help from the new developer, the person that received help could then choose to give that user XP because again, it proves that they can be trusted with extra permissions.

I do not know how this will work though if a user creates or uses alternative a...

north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
#

Thank you for this contribution! I have viewed the pngs and they look good. Do we need all of these sizes, though?

I see you've added the same files in multiple places. I think it would be nice to have the same file in only one place, so it's easier to maintain. Since I both assume we won't be modifying this later on and appreciate having them accessible in both logical places, I won't request changes on this. It's more of a general comment about having it in multiple places and mentioning t...

ebon magnetBOT
#

Build 20201110.1 succeeded

Requested by

GitHub

Duration

00:03:50

Build pipeline

Bot

regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201110.2 failed

Requested by

GitHub

Duration

00:00:37

Build pipeline

Bot

ebon magnetBOT
#

Build 20201110.2 failed

Requested by

GitHub

Duration

00:00:35

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201110.3 failed

Requested by

GitHub

Duration

00:00:34

Build pipeline

Bot

ebon magnetBOT
#

Build 20201110.4 failed

Requested by

Sebastiaan Zeeff

Duration

00:00:38

Build pipeline

Bot

regal archBOT
north knotBOT
#

Postgres backup completed!

regal archBOT
regal archBOT
#
[python-discord/bot] New branch created: kwzrd/ci\-test
ebon magnetBOT
#

Build 20201111.1 failed

Requested by

GitHub

Duration

00:00:35

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.2 failed

Requested by

GitHub

Duration

00:00:40

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.3 succeeded

Requested by

GitHub

Duration

00:04:16

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.4 failed

Requested by

GitHub

Duration

00:00:38

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.5 succeeded

Requested by

GitHub

Duration

00:04:20

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.6 succeeded

Requested by

GitHub

Duration

00:03:42

Build pipeline

Bot

ebon magnetBOT
#

Build 20201111.1 succeeded

Requested by

GitHub

Duration

00:01:24

Build pipeline

Seasonal Bot

#

Build 20201111.2 succeeded

Requested by

GitHub

Duration

00:01:29

Build pipeline

Seasonal Bot

regal archBOT
regal archBOT
regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201111.3 failed

Requested by

GitHub

Duration

00:01:17

Build pipeline

Seasonal Bot

ebon magnetBOT
#

Build 20201111.4 succeeded

Requested by

GitHub

Duration

00:01:22

Build pipeline

Seasonal Bot

regal archBOT
north knotBOT
ebon magnetBOT
#

Build 20201111.7 succeeded

Requested by

GitHub

Duration

00:06:03

Build pipeline

Bot

oak estuaryBOT
ebon magnetBOT
#

Build 20201110.3 failed

Requested by

GitHub

Duration

00:00:33

Build pipeline

Bot

ebon magnetBOT
#

Build 20201111.8 succeeded

Requested by

GitHub

Duration

00:03:05

Build pipeline

Bot

regal archBOT
ebon magnetBOT
#

Build 20201111.9 succeeded

Requested by

GitHub

Duration

00:03:08

Build pipeline

Bot

regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201111.10 succeeded

Requested by

GitHub

Duration

00:02:52

Build pipeline

Bot

regal archBOT
#

Okay, I believe that this PR should no longer be prone to race conditions. The voice state listener performs two primary actions:

  • Send the newcomer notification, if appropriate
  • Delete the notification after the configured delay, if it hasn't been deleted yet

This first part suffered from a dangerous race condition, as pointed out by @bast0006. This has been addressed in 4b60c21 by making the whole procedure an atomic transaction. The second part was then prone to racing with the `!...

regal archBOT
regal archBOT
regal archBOT
ebon magnetBOT
#

Build 20201112.1 failed

Requested by

GitHub

Duration

00:02:49

Build pipeline

Bot

north knotBOT
#

Postgres backup completed!

regal archBOT
#
[python-discord/bot] New branch created: remove\-selenium
ebon magnetBOT
#

Build 20201112.2 succeeded

Requested by

GitHub

Duration

00:03:14

Build pipeline

Bot

regal archBOT