diff options
author | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2021-06-10 14:25:30 +0000 |
---|---|---|
committer | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2021-06-10 14:45:56 +0000 |
commit | da7740aa6dbf2505a8c72ad7b01e1b21851277e4 (patch) | |
tree | 868a1d821fb60fec6defd6db545e5d56fdf92026 | |
parent | 9074b47edabebe0a3e2ef263d4800f9e5ad81152 (diff) | |
download | ports-da7740aa6dbf2505a8c72ad7b01e1b21851277e4.tar.gz ports-da7740aa6dbf2505a8c72ad7b01e1b21851277e4.zip |
devel/py-lml: Add py-lml 0.1.0
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 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.
WWW: https://github.com/python-lml/lml
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/py-lml/Makefile | 20 | ||||
-rw-r--r-- | devel/py-lml/distinfo | 3 | ||||
-rw-r--r-- | devel/py-lml/pkg-descr | 16 |
4 files changed, 40 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index af38e957f5ec..9d50dc313f5f 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -4646,6 +4646,7 @@ SUBDIR += py-llfuse SUBDIR += py-llvmcpy SUBDIR += py-llvmlite + SUBDIR += py-lml SUBDIR += py-lockfile SUBDIR += py-logan SUBDIR += py-logbook diff --git a/devel/py-lml/Makefile b/devel/py-lml/Makefile new file mode 100644 index 000000000000..f6dc7d0de43d --- /dev/null +++ b/devel/py-lml/Makefile @@ -0,0 +1,20 @@ +# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org> + +PORTNAME= lml +PORTVERSION= 0.1.0 +CATEGORIES= devel python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Load me later, a lazy plugin management system + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= python:3.3+ +USE_PYTHON= autoplist concurrent distutils + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/devel/py-lml/distinfo b/devel/py-lml/distinfo new file mode 100644 index 000000000000..7e5687486655 --- /dev/null +++ b/devel/py-lml/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1622213918 +SHA256 (lml-0.1.0.tar.gz) = 57a085a29bb7991d70d41c6c3144c560a8e35b4c1030ffb36d85fa058773bcc5 +SIZE (lml-0.1.0.tar.gz) = 42010 diff --git a/devel/py-lml/pkg-descr b/devel/py-lml/pkg-descr new file mode 100644 index 000000000000..0e292e5b87c9 --- /dev/null +++ b/devel/py-lml/pkg-descr @@ -0,0 +1,16 @@ +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 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. + +WWW: https://github.com/python-lml/lml |