Cog-Creators / Cog-Creators/Red-DiscordBot

Inconsistent behavior between [p]repo add and other commands

Open
#6,371 3 comments 0 reactions 1 assignee Claimed by @Jackenmen View on GitHub
Category: Cogs - Downloader Status: In Progress Type: Bug
Dominant language
Python
Stars
5.7k
Forks
2.5k
Avg merge
6d 16h
Merged PRs (30d)
1

Description

### What Red version are you using?

3.5.9

### Cog name

Downloader

### Command name

repo

### What happened?

When running `[p]repo add`, if the name used is the same as an already installed repo but with different casing, the bot says a repo with that name already exists. When running `[p]repo del`, the correct casing must be used, or the bot will say a repo with that name does not exist. It is confusing that a repo can be stated to exist with one command, but not exist with another. Similar case-sensitive parsing happens with `[p]cog install`, and likely other commands.

### How can we reproduce this error?

1. `[p]repo add test https://github.com/Flame442/FlameCogs`
2. `[p]repo add TEST https://github.com/Flame442/FlameCogs` -> already exists
3. `[p]repo del TEST https://github.com/Flame442/FlameCogs` -> does not exist

### Anything else?

Downloader stores repos in folders that should be interpreted case insensitively. The `Repo` converter should be updated to be able to match an existing repo regardless of the specific casing used.

`[p]repo add` eventually reaches this function, which checks if the path exists case insensitively, rather than just if the repo exists in `._repos`.
https://github.com/Cog-Creators/Red-DiscordBot/blob/975c0007fe3da1f0607799c3672a2f57c32a6e8e/redbot/cogs/downloader/repo_manager.py#L187-L189

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.