Skip to content

Droit v1.1.0 release

Compare
Choose a tag to compare
@jarinox jarinox released this 20 Nov 16:39

What's new about Droit v1.1?

1. Database object

A new object called Database will be now the core of python-droit. It combines the functionallity of __init__.py, tools.py, loader.py and dumper.py from Droit v1.0. You can use it to parse and dump a Database, you can load plugins into it and run useRules() and formatOut() from it. It replaces rpack as it also stores cache and history objects. The settings object was removed and replaced by so called sessions.

2. Plugins

Restructuring droit of caurse has an effect on the plugins. There are minimal adjustments that have to be done to make v1.0 plugins work with v1.1. The biggest change is that there are now two types of output plugins. On the one hand there are still those that are called using EVAL. The folder they are stored in is from now on called eval.pluginName. The new type of output plugins is similar to input plugins. Those plugins use a block() function. The TEXT and VAR blocks are no longer part of the core source code but plugins. Another new feature of plugins are so called "requirements". Each plugin can register function that to be used by other plugins.

3. DroitIO

DroitIO will be removed as it is the task of the person who writes the bot to implement a solution for input and output.There is now a ready-to-use telegram bot called telepyd.

4. Sessions

Droit v1.1 is the first version to support multiple users. Therefore so called sessions can be created. The Database object stores a DroitMultiSession object in it's parameter sessions. Using this object you can load and save sessions and switch between users. Plugins can access sessions and store data separately for each user.