Purpose
Since the 3.0 release, Ralph has many optional dependencies depending on its usage: library (with backends support), CLI or LRS. It's not obvious to make dependency-management straightforward both for project developers and end-users.
Proposal
To simplify the various flavors of the project, as suggested by @sampaccoud in #218, we propose to implement a plugin management system that will simplify project maintenance and extensibility!
References:
- https://packaging.python.org/en/latest/guides/creating-and-discovering-plugins/
- https://setuptools.pypa.io/en/latest/userguide/entry_point.html
Purpose
Since the 3.0 release, Ralph has many optional dependencies depending on its usage: library (with backends support), CLI or LRS. It's not obvious to make dependency-management straightforward both for project developers and end-users.
Proposal
To simplify the various flavors of the project, as suggested by @sampaccoud in #218, we propose to implement a plugin management system that will simplify project maintenance and extensibility!
References: