I took a look at your new plugin system and it looks very nice. It seems very simple and straightforward to create a plugin.
I have ran into one problem. I'm trying to create a SVN source control based incrementor ( as you know :) ). In order to get the repository information, I need to know the location of each project file. The problem is that the BaseIncrementor.Increment()
function doesn't provide this information.
My suggestion is to either pass in SolutionItem.Filename to the Increment method as an additional parameter; or, to pass around the SolutionItem instance itself to the method - the exisiting parameters are taken from SolutionItem already as well. I
think that passing the solution item might be the best way to go as it could provide the most information to any one else who wants to implement another plugin.
I can submit a patch that passes in the FileName string. I didn't try the "passing the SolutionItem" option because the class is marked as 'internal' and I don't want to mess with your scheme of things.
Please let me know what your thoughts are on this or if you need any help. Thanks again for creating the plugin system!