Is it possible to create a VCS plugin module? #8890
-
|
I've been trying to create a plug-in module for the JJ VCS, but after digging through the Git and Mercurial code, it looks like a lot of the functionality needed may not be exported. Versioning Utils and Versioning core are both internal-only and used extensively in the Git and Hg code. VCSSystemProvider also seems to not be exported for use. Is it even possible to build a VCS plugin without all these libraries available for use in modules? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
|
Just looked into the git integration code quickly. Core is not used there (at least there are no references to packages from Versioning Core). The SPI is provided by Versioning, and that is exported API (ok, in this case exported SPI). The Versioning Support Utils module does seem to provide common implementations used by git, svn, hg, but not necessarly required to be used. It makes sense to share these in tree, exporting is a different level of support requirements. As NB is now licenses ALv2, you are free to copy the implementations. So given the cloudy question, I give a cloudy answer: Yeah, most probably. |
Beta Was this translation helpful? Give feedback.
Just looked into the git integration code quickly. Core is not used there (at least there are no references to packages from Versioning Core). The SPI is provided by Versioning, and that is exported API (ok, in this case exported SPI).
The Versioning Support Utils module does seem to provide common implementations used by git, svn, hg, but not necessarly required to be used. It makes sense to share these in tree, exporting is a different level of support requirements. As NB is now licenses ALv2, you are free to copy the implementations.
So given the cloudy question, I give a cloudy answer: Yeah, most probably.