watch and (re)load/remove nonebot plugins from a directory
Project description
nonebot-plugins-watch
hot plug and remove nonebot plugins
Installation
pip install nbplugins-watch
To validate installation
python -c "import nbplugins_watch; print(nbplugins_watch.__version__)"
0.0.6
Usage
Make a directory somewhere and place an empty __init__.py and a plugin file in it.
Monitor the directory in your nonebot runner file, e.g. in my_nonebot.py
:
import nonebot
from nbplugins_watch import nbplugins_watch
nonebot.load_builtin_plugins() # optional
nonebot.load_builtin_plugins("mature-plugin-dir")
plugin_dir_path = r"path_to_plugin_dir" # absolute or relative path
nbplugins_watch(plugin_dir_path)
# turn debug on to see what's going on
# nbplugins_watch(plugin_dir_path, debug=True)
nonebot.run()
Create a file, say fancy_plugin.py if not already there, in the directory above. Edit and test and/or remove the file fancy_plugin.py to your heart's content.
Note: if a plugin file contains syntax errors (as opposed to logic errors), you'll have to restart nonebot, in other words, nbplugins_watch will cease to work after an uncaught error. nbplugins_watch can recover from syntax errors, in other words, even when a plugin file contains syntax errors (as opposed to logic errors), it just still works.
Acknowledgments
- Thanks to everyone whose code was used
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nbplugins-watch-0.0.6.tar.gz
.
File metadata
- Download URL: nbplugins-watch-0.0.6.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.0 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f16579188d1b65a4a20cc5cc03cb7265d7c6b68bc24ae63186333a0d4c765cfc |
|
MD5 | 6f5d4eb296bdfa5fde71e84e9386f9b0 |
|
BLAKE2b-256 | 8ee6cd6c253c205fccee3ed367f5282eeb73d3bb353a22f021ca333d3b65f0c8 |
File details
Details for the file nbplugins_watch-0.0.6-py3-none-any.whl
.
File metadata
- Download URL: nbplugins_watch-0.0.6-py3-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.0 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3856a0c6c4bd49046a9e843ddba6b1a299c6d27fd470f521e410489f991fb5a4 |
|
MD5 | 6f8a815e1a3f8a1d8d80d005044df9ef |
|
BLAKE2b-256 | e5ebece2f36435509a41aeaf841a39b669b9029935fbcd2f2cb4d9a9dd136e4f |