Cog-Creators / Red-DiscordBot

A multi-function Discord bot
https://docs.discord.red
GNU General Public License v3.0
4.81k stars 2.31k forks source link

Reorganize General cog #5126

Open RheingoldRiver opened 3 years ago

RheingoldRiver commented 3 years ago

What component of Red (cog, command, API) would you like to see improvements on?

General Cog

Describe the enhancement you're suggesting.

Currently, General cog is a bunch of "fun" commands plus serverinfo. I would like to propose that serverinfo is moved to mod and general is renamed to fun. This way there is no ambiguity about the kinds of commands that are in the cog formerly known as general cog, and bots that don't want "meme" commands but do want serverinfo can simply choose not to install fun.

Anything else?

No response

Flame442 commented 3 years ago

I doubt we will rename as that would be potentially confusing for existing users for not a whole lot of gain. However, I do agree that moving the command to mod would be a good idea, especially considering [p]userinfo is already in mod. This would need to occur in a major update (3.X.0) as it is a breaking change.

palmtree5 commented 3 years ago

I also doubt a rename would happen as it would be confusing. I disagree with sticking [p]serverinfo in Mod though as it isn't really a command useful in moderation imo (whereas [p]userinfo is)

RheingoldRiver commented 3 years ago

I think a rename is important because miscategorizations like one single "useful" command along with a bunch of "fun/useless" commands are a symptom of a name like "general" that provides no semantic value. It's hard to understand what belongs in a cog like this, and so you end up with situations where you have a lot of mismatches of what's where.

phenom4n4n commented 3 years ago

I think a rename is important because miscategorizations like one single "useful" command along with a bunch of "fun/useless" commands are a symptom of a name like "general" that provides no semantic value. It's hard to understand what belongs in a cog like this, and so you end up with situations where you have a lot of mismatches of what's where.

Renaming the cog would break existing Cog/module-based settings such as Downloader, Permissions, CustomHelp etc.

Jackenmen commented 3 years ago

General cog does not store any settings.

Kowlin commented 3 years ago

I am very skeptical of renaming the cog as a whole. Personally I do not see a need for it. Besides the above stated issues. The general cog is a good place overall to add in new commands where it isn't a strong addition to any other cog.

While a lot of the stuff in General is absolutely dated. There isn't any need to remove them. They work, and they won't break in their current state. So removing them would not accomplish anything. As there is no need to remove what isn't broken.

RheingoldRiver commented 3 years ago

The general cog is a good place overall to add in new commands where it isn't a strong addition to any other cog

This is an antipattern in software. Names like general or misc or util etc as dumping grounds for things that don't fit elsewhere make for bad end user experience, confusing documentation, hard-to-find commands, etc. Again, why should serverinfo be in the same cog as hug? One of them gives useful information about a server, and the other is for users to spam in chat.

If a command is added, and there's truly no good place to categorize it at present, then perhaps a new cog should be created. Otherwise the end state is one of large confusion for users.

As for compatibility, I guess it would be a separate ticket, but if renaming cogs is this impossible, that seems like a reasonable enhancement unrelated to this suggestion - cog creators should be able to rename cogs if needed, by supplying the previous name in info.json, and Downloader, Permissions, etc should recognize this and update themselves on the next load accordingly?

Dav-Git commented 3 years ago

At least splitting off Serverinfo makes total sense to me. It might fit better in admin than in mod, but it certainly doesn't fit in with the other commands in the General cog.

I think renaming general to fun would be beneficial for the sake of clarity but i can see why this might not be the optimal choice.