git: da7740aa6dbf - main - devel/py-lml: Add py-lml 0.1.0
Po-Chuan Hsieh
sunpoet at FreeBSD.org
Thu Jun 10 14:47:10 UTC 2021
The branch main has been updated by sunpoet:
URL: https://cgit.FreeBSD.org/ports/commit/?id=da7740aa6dbf2505a8c72ad7b01e1b21851277e4
commit da7740aa6dbf2505a8c72ad7b01e1b21851277e4
Author: Po-Chuan Hsieh <sunpoet at FreeBSD.org>
AuthorDate: 2021-06-10 14:25:30 +0000
Commit: Po-Chuan Hsieh <sunpoet at FreeBSD.org>
CommitDate: 2021-06-10 14:45:56 +0000
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
---
devel/Makefile | 1 +
devel/py-lml/Makefile | 20 ++++++++++++++++++++
devel/py-lml/distinfo | 3 +++
devel/py-lml/pkg-descr | 16 ++++++++++++++++
4 files changed, 40 insertions(+)
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 at FreeBSD.org>
+
+PORTNAME= lml
+PORTVERSION= 0.1.0
+CATEGORIES= devel python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= sunpoet at 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
More information about the dev-commits-ports-all
mailing list