lml - Load me later. A lazy plugin management system.
lml seamlessly finds the lml based plugins from your current python environment but loads your plugins on demand. It is designed to support plugins that have external dependencies, especially bulky and/or memory hungry ones. lml provides the plugin management system only and the plugin interface is on your shoulder.
lml enabled applications helps your customers [1] in two ways:
- Your customers could cherry-pick the plugins from pypi per python environment. They could remove a plugin using pip uninstall command.
- Only the plugins used at runtime gets loaded into computer memory.
When you would use lml to refactor your existing code, it aims to flatten the complexity and to shrink the size of your bulky python library by distributing the similar functionalities across its plugins. However, you as the developer need to do the code refactoring by yourself and lml would lend you a hand.
[1] | the end developers who uses your library and packages achieve their objectives. |
Installation
You can install lml via pip:
$ pip install lml
or clone it and install it:
$ git clone https://github.com/chfw/lml.git
$ cd lml
$ python setup.py install
License
New BSD
Commit History @a9aa4a58-8224-40d2-9d60-4f5189a18b8e/main
- Update standards version to 4.5.0, no changes needed. Kali Janitor 3 years ago
- Set upstream metadata fields: Bug-Database, Bug-Submit, Repository, Repository-Browse. Kali Janitor 3 years ago
- Update debian/changelog Sophie Brun 4 years ago
- Bump Standards-Version to 4.4.1 Sophie Brun 4 years ago
- Remove Python 2 module Sophie Brun 4 years ago
- Add GitLab's CI configuration file Raphaël Hertzog 4 years ago
- Configure git-buildpackage for Kali Raphaël Hertzog 4 years ago
- Update Vcs-* fields Raphaël Hertzog 4 years ago
- Update Maintainer field Raphaël Hertzog 4 years ago
- Initial release Sophie Brun 4 years ago