Closed steffen-wilke closed 6 years ago
Hi @steffen-wilke. Thanks for your contribution. My issue with this PR is that is sort-of changes the spirit of how RepoCop was designed. The idea was that there is a "Core" for the actual evaluation (Silverseed.RepoCop.csproj
; a DLL) and multiple executable implementations that decide on their own how they retrieve the data. The one implementation that currently exists is in the "Console" folder (Silverseed.RepoCop.Subversion.csproj) targets Subversion and uses SharpSvn to retrieve the metadata.
You are now introducing a new/different way how to retrieve the data (via svn command line tools instead of SharpSvn). In my opinion this could and should simply be a second executable project (instead of replacing the existing one).
Same as this: if at some point this project will target different repositories, there will be a new executable that targets that repository type (next to the executable for Subversion). It will not replace the Subversion executable.
So in my opinion, Console
should be renamed to something like SubversionSharpSvn
and your new executable could go in a folder SubversionCLT
(CLT = command line tools).
Does that make sense?
Yes, I was also thinking about that option yesterday but it was a carefully taken decision and I decided against it for the following reasons:
SharpSVN
whenever they update it (if even). I only see the necessity for additional maintainance work when keeping the SharpSVN
implementation without any benefit for the user whatsoever.
If you still want me to provide a separate implementation, I can do so.
Due to incompatibilities with
SVN 1.10.x
and slow development on theSharpSVN
library, I've removed this external dependency from this library and replaced it by the usage of the default SVN toolsvnlook.exe
.