Have the same name from Windows point of view. Because of that I’m unable to merge the latests master changes into my branch (I’m trying to implement WebSocket connection). I can checkout either IQProvider or IqProvider and the second one always shows as modified. Since I’ve made some changes in gradle files to fix build I’m unable to pass through merge process.
Apart from that issue I’m not sure that this was a good idea to name two classes so similar. IqProvider is an abstract class why don’t just put ‘Abstract’ prefix. Moreover that class extends AbstractProvider class so logically breaks naming inheritance.
IQProvider is the old legacy provider for IQs, renaming it would break the existing API.
IqProvider is the new superclass for IQ providers and its name follows the code style guide of Smack (basically Google Java code style with minor modifications)
I am sorry, but in this case I think I value backwards compatibility and following the style guide over Windows compatibility.
Would you please reconsider? There might be number of developers out there, including me, using Windows as development PC. Perhaps you could refactor-rename legacy IQProvider?