Code Monkey home page Code Monkey logo

thatkitebot's People

Contributors

antek1234l avatar caraffa-git avatar cuprum77 avatar dependabot[bot] avatar diminddl avatar ghostdog98 avatar thatredkite avatar woo200 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

thatkitebot's Issues

Reg: Info list for Electronics

Here's a better-ordered list for "electronics help" channels:
If you want to start learning:

  • Afrotechmods
  • GreatScott!
  • ElectrBOOM
  • Element14 Workbench Wednesdays
  • W2AEW
    Good source of entertainment and education:
  • EEVBlog
  • DiodeGoneWild
  • Marco Reps
    DIY projects with good explanations:
  • Electronoobs
  • Bitluni
  • Leo's Bag of Tricks
    Slightly more in-depth:
  • Sam-Ben Yaakov

add a simple RC filter

should be possible to generate a simple rc filter with +filter r= c=
if possible it would be nice if it returned a bodeplot as well but thats more complicated

math is F_cutoff = 1/RC

Fix Listener Cog

Listener doesn't catch commands.CheckFailure exception. I noticed this because of the check in SlashCommandGroup from #104 (info.py:209)

@commands.Cog.listener()
async def on_command_error(self, ctx: commands.Context, error):

Fix starboard_blacklist command

/app/thatkitebot/cogs/starboard.py:148: RuntimeWarning: coroutine 'PermissonChecks.can_change_settings' was never awaited
     if not pc.can_change_settings(ctx):

For this reason, user can bypass the permission check

Add vote mode

Simple +vote command replied to a message adds reacts for a vote. Make it a per channel feature.

Bot does not properly identify international IRIs

The regex within the uwu-ifier command does not detect IRI as per RFC3987 despite the fact that these are, in fact, valid URL's that can be embedded. For example, https://en.wiktionary.org/wiki/Ῥόδος is an entirely valid IRI that is able to be embedded, but your regex only detects up until the US-ASCII characters.

Clearly this means we should work on replacing this regex, as it is a crucial functionality of kitebot's uwu-ifier command, and we shouldn't ever let any remote possibility of a user embedding an IRI when they shouldn't be allowed to, so clearly we should work on fixing this.
Here is a working sample of what I have found to be the best regex for validating both URLs and IRIs, in PCRE regex (PHP < 7.3):

%^(?:(?:(?:https?):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\x{00a1}-\x{ffff}][a-z0-9\x{00a1}-\x{ffff}_-]{0,62})?[a-z0-9\x{00a1}-\x{ffff}]\.)+(?:[a-z\x{00a1}-\x{ffff}]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$%iuS

nb: credit for this regex goes to diegoperini
A test of this regex is available here: https://regex101.com/r/fgihQ1/1

Image commands do not properly work with new discord embed system

Recently discord added a feature where you can add multiple photos with a single message, such as below:
image
However, if we are to use any of the kitebot commands for manipulating images on these messages, it only applies to the first attached image:
image
This is the same for all of the image commands I tested (only 3).

Fix decorative permission checks

e.g. starboard.py line 92

 # command for adding a global threshold starboard
    @commands.check(pc.can_change_settings)
    @bridge.bridge_command(name="starboard", aliases=["sb"], description="Set the starboard settings for this guild")
    async def starboard(self, ctx: bridge.BridgeContext, threshold: int, channel: discord.TextChannel, emoji: str):
        if not await pc.can_change_settings(ctx):
            return

@commands.check(pc.can_change_settings) isn't triggered at all

Update README

Docker installation needs adding their apt repository:

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Simple sudo apt-get install docker-ce docker-ce-cli containerd.io doesn't work, at least on freshly installed Debian.

Someone who wants to put up a server with a bot should know how to install the docker so it seems to me that the installation instructions are not needed anyway, I guess it should be just written out in the requirements.

EDIT: Also, to run docker-compose it needs to be installed as separate package.

Finish music bot

It was requested a while ago and would be pretty cool. Role based with cool redis data types.

Re work the settings cog

Re work the settings cog... It's a bit confusing. And add docs regarding how the settings work.

Fix the automatic caption outline

The current implementation is very unstable, makes very thick outline way to often, maybe abandon the outline and calculate if the text should be black or white based on the background.

Fix inconsistancy on `+` and `/` commands

This is quite confusing, for example, the info command only works if you do /info but not +info, but the help command only works if you do +help but not if you do /help command!?!?!?

(p.s. this isn't me just bitching, it's also kinda a todo list for if i wanna do stuff for kitebot :trollface:)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.