Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposition of bot rewrite #12

Closed
wants to merge 12 commits into from
Closed

Proposition of bot rewrite #12

wants to merge 12 commits into from

Conversation

VForiel
Copy link
Contributor

@VForiel VForiel commented Aug 5, 2022

This is a proposition of code rewrite. Tell me what is good, what is not. This PR doesn't intend to be merged. It's goal is to discuss about the rewrite with some code as a support.

@ascpial
Copy link
Contributor

ascpial commented Aug 5, 2022

First thing I noticed : you should remove the plugins, and make a separated repo for the example plugin, considering that the core should be empty by default

@VForiel
Copy link
Contributor Author

VForiel commented Aug 5, 2022

(on peut parler français en fait, y'a que des français qui maintiennent le bot ^^)

Je sais pas si c'est une bonne idée de séparer les répos des plugins. On a déjà essayé de faire ça et à chaque fois ça pose surtout le problème de synchroniser les versions de chaque répo...

Le mieux selon moi c'est de garder les plugins dans le répo, mais modifier le script de démarrage de sorte à ce que si un plugin provoque une erreur, alors il n'est pas chargé, mais le bot se lance malgré tout.

De cette façon, on peut bosser sur la base du bot sans avoir à update les plugins en même temps, le tout en ayant un seul répo à gérer

@Aeris1One
Copy link
Collaborator

Aeris1One commented Aug 5, 2022

Je pense qu'il faudrais séparer les plugins dans des repos distincts. Mais pas forcément un plugin par repo, ce qui serait vite le bordel.
Je pense plus à une architecture comme les gestionnaires de paquets Linux : plusieurs dépôts, généralement un par développeur, qui contient plusieurs plugins. Par exemple le repo Gunivers/Gipsy_Plugins contiendrait tous les plugins maintenus par Gunivers, là où Aeris1One/gipsy-addons pourrait contenir ceux que je maintiens.

C'est une architecture qui a déjà fait ses preuves, et je pense qu'on peut s'inspirer du système de Red Discord Bot qui implémente exactement ça : https://github.com/Cog-Creators/Red-DiscordBot/tree/V3/develop/redbot/cogs/downloader

ça pourrait être bien plus simple pour les utilisateurs, parce qu'inclure tous les plugins dans le même repo incite plus ou moins à ne pas rechercher ailleurs, là où avoir une fonction de téléchargement des plugins depuis des repos externe incite au contraire les gens à chercher ailleurs sur Github voire créer et partager leur bot

@VForiel
Copy link
Contributor Author

VForiel commented Aug 5, 2022

Ok, ce compromis me va !

@ascpial
Copy link
Contributor

ascpial commented Aug 6, 2022

Il faudra juste trouver un moyen pour que ça soit quand même pas le bordel mais oui ça a l'air d'être une bonne idée

@VForiel VForiel closed this Aug 18, 2022
@VForiel VForiel deleted the Gipsy-V2 branch August 18, 2022 08:49
Aeris1One pushed a commit that referenced this pull request Apr 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants