Skip to content

v4.5.0

Latest
Compare
Choose a tag to compare
@danielkauffmann danielkauffmann released this 01 Dec 21:49
· 36 commits to master since this release

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...