Expose abstract base class for Git source plugin
Background
As discussed during the recent BuildStream Gathering, there is demand for extending the Git source plugin. Sometimes, these changes will be such that they will not belong in BuildStream core for whatever reason. In the long run, it may make sense to think about allowing plugins to be extended in general. Since that is comparatively more challenging, a short-term solution will be to provide an abstract base class for the Git plugin.
Obviously, this will only work for the Git plugin but this is kind of fine as we haven't really had many requests to extend other plugins.
Task description
-
There is a publicly available abstract base class for Git-based source plugins. -
The git
source plugin in Core is derived from the above base class.
Acceptance Criteria
Plugin developers are able to create custom Git-based plugins without having to copy-paste the git
plugin in Core.
Edited by Chandan Singh