Release Notes for 12/01/2020
2020.12.01
After 2 months since the last update, this release brings a rewrite of MoodleAPI package and several improvements in the bot.
[ GENERAL ]
- Rewrite of MoodleAPI package.
- Started tests for MoodleAPI.
- Started music feature to play videos from YouTube platform.
- Implemented timeout for commands that needs user input.
- Improved moodle
Cog performance by five times.
- Added new administrator commands.
- Changed output messages styles and added new formats.
- Added support for different educational institutions on Moodle API.
- Implemented urls shortener.
- Added prefix support to different severs.
- Added pre and post database functions to setup the bot.
[ COMMANDS ]
- Added support for Moodle on the profile
command by using the Moodle's username.
- Added reputation for Discord profile in profile
command.
- Separated assignments and classes on check
command.
- Added a customized message when there is no scheduled events.
- Fixed bugs in reminder
command.
- Added moodleUpdate
to force the update of moodle_events
table.
- Added reload
with no parameters which reloads all cogs.
- Added loopTime
to change the refresh rate of getData coroutine.
- Added prefix
to change the server's prefix.
- Added register
to add server's information into bot_servers
table.
- Added loopChannel
to select the channel for getData loop.
- Added moodleConfig
to setup the server's institution Moodle.
- Added autoRole
to select the default server's role.
- Added setCourseToken
that creates a column in bot_servers
to add the token for the respective class.
- Added group
command, responsible to create and manage student's group.
[ MOODLEAPI ]
- Init: changed latest and stable version to 4.5.0.
- Reworked all backend structure, aiming improvements on performance.
- Added global functions importing to all __init__.py
modules.
- Created base
module that contains parent classes and responsible to manage the data.
- Created core
module to interact data preprocessing and security.
- Created utils
module for support functions and consult settings.
- Created exceptions.py
that contains all types of exceptions.
- Created mdl.py
which is the main class for Moodle purpose use.
[ BASE ]
- Created moodle.py
which Mdl
class inherits from.
- Created process.py
that redirect the data for each available Moodle function.
[ CORE ]
- Calendar: added file for each Moodle function.
- Calendar: rewrite upcoming.py
for clean and prepare the data for export.
- Calendar: created tools.py
to store all support functions for calendar module.
- Course: rewrite professor.py
improving the performance.
- Course: created simple_contents.py
responsible to get personal assignments information.
- Export: created connect.py
to create the database connection pool.
- Export: created database.py
that return the query for each table.
- Export: created generic.py
liable to create and export low amount of data.
- Export: created helper.py
to verify and create the requested table if it doesn't exist.
- Profile: created get_profile.py
to request and return user's Moodle profile.
- Security: rewrite cryptography.py
improving the cryptography method and their safety.
- Security: rewrite token.py
increasing the performance and security.
[ UTILS ]
- Created settings.py
to store default information.
- Created support.py
that contains support functions.
- Rewrite version.py
changing the returning value.
[ TESTS ]
- Created directory for tests, which contains unit, integrations and acceptance tests.
- Created unit tests for calendar
, export
and utils
modules.
- Created TESTS.md
to describe the three methods of testing (PT/BR).
[ MISC ]
- Improved commenting on the entire codebase.
- Added new information in README.md
file.
- Added new libraries to requirements.txt
.
- Added files to .gitignore
.
Music rework coming soon...