Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| be1af3ad05 | |||
| 0c8108d4d8 | |||
| bcc9b864d1 | |||
| a4c552d6f5 |
@@ -1,6 +1,6 @@
|
||||
# XtendR
|
||||
|
||||
A very basic Python 3.12 plugin system based on the K.I.S.S principle.
|
||||
A very basic Python 3.12 friendly plugin system based on the K.I.S.S principle.
|
||||
|
||||
I was in need of a new plugin system, which should meet these requirements:
|
||||
:heavy_plus_sign: Simple to use
|
||||
@@ -16,7 +16,8 @@ I didn't find anything that suited my needs, so I decided to make my own plugin
|
||||
It simply contains 2 classes, one for the plugin system and one abstraction base class for the plugins themselves.
|
||||
|
||||
At the moment only 4 functions are available:
|
||||
- Attach
|
||||
|
||||
- Attach - including call to pre-load data in plugin.
|
||||
- Run
|
||||
- Stop
|
||||
- Detach
|
||||
@@ -27,4 +28,4 @@ The Run and Stop functions are mandatory in the plugin modules.
|
||||
The system expects a folder called 'plugins', placed at the root, along side your main python file.
|
||||
Each plugin should be placed in subfolders, named as the plugin, inside the 'plugins' folder.
|
||||
|
||||
The example.py along with the plugins/example_plugin/example_plugin.py and plugins/example_plugin/example_plugin.json shows the workings of this plugin system.
|
||||
The example.py along with the plugins/example_plugin/example_plugin.py and plugins/example_plugin/example_plugin.json shows the workings of this plugin system.
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
setuptools==68.2.2
|
||||
@@ -1,9 +1,12 @@
|
||||
if __name__ == "__main__":
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
from pathlib import Path
|
||||
this_directory = Path(__file__).parent
|
||||
long_description = (this_directory / "README.md").read_text()
|
||||
|
||||
setup(
|
||||
name="XtendR",
|
||||
version="0.3.2",
|
||||
version="0.3.3.1",
|
||||
packages=find_packages(),
|
||||
install_requires=[],
|
||||
author="Jan Lerking",
|
||||
@@ -16,4 +19,6 @@ if __name__ == "__main__":
|
||||
"Operating System :: OS Independent",
|
||||
],
|
||||
python_requires='>=3.11',
|
||||
long_description=long_description,
|
||||
long_description_content_type='text/markdown'
|
||||
)
|
||||
@@ -5,7 +5,7 @@ import json
|
||||
import threading
|
||||
from xtendr.xtendrbase import XtendRBase
|
||||
|
||||
__version__ = "0.3.2"
|
||||
__version__ = "0.3.3.1"
|
||||
|
||||
class XtendRSystem:
|
||||
"""Plugin system to manage plugins.
|
||||
|
||||
Reference in New Issue
Block a user