Closed mystique09 closed 2 months ago
pph-help
pph-define <word>
pph-exchange <amount> <from> <to>
pph-currencies
/anon forums <commands>
/announce
/shout
/welcomer
/help-solver
/responder add
/forum-assist new
/forum-assis list
/forum-cleanup schedule
/trivia channel setup
Description
The proposed project structure has been implemented,
bot/
,cogs/
,ui/
, andutils/
has been moved insidesrc/
. Thedatabase/
has been renamed todata/
and moved insidesrc/
. Also, files in each directory has been group by related feature.The
cogs/
no longer usesGuildInfo
like a constant as it has been passed as a dependency in theProgphil
class in the main.py file.Decorators now don't depend on GuildInfo to get the staff_roles, instead it fetches the staff_roles via
interaction.client.config.guild
orctx.client.config.guild
sinceconfig
was passed as dependency in the Progphil instance from the start.Config class from
config.py
has been refactored to use pydantic module to parse config file instead of using a metaclass.Database pool creation, and database migration has been moved to
main()
.Lint workflow has been updated to crawl the
src/
directory.Github deploy workflow has been for the new project structure.
Dockerfile has been updated to properly build the project.
Project config file(pyproject.toml) has been updated to include the src directory during packaging, I also added a script
poetry run progphil
which invokes therun()
function in the main file.Testing
An attempt on testing the discord API has failed, there are limitations to the dpytest library, prefix command can be tested but struggles on embed response. Also struggles when the command depends on a third-party library, I hit the monthly limit of currency API and after that the bot won't start(because the Converter cog calls the currency api at init to get currency data and crashes because reponse is 403) lmao.
Dependency updates:
Resolves #162
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Test Configuration:
Checklist: