This PR - https://github.com/apache/ant-ivy/pull/57 does changes related to generics usage. I reviewed it a while back and it looks fine overall except for one change, for which I need inputs from the rest of the team.

Ivy has a DependencyResolver interface which is the central piece of contract/interface for extending Ivy (any external usage for that matter). This PR introduces a new method on this interface[1]. I understand why that method (in favour of the other one that is marked as deprecated in that same PR) makes sense. Had this been some other relatively lesser exposed interface or had this been a change related to introducing a new feature, I think I probably wouldn't have been worried about it. However, given the nature of this interface, I think we shouldn't add this method just yet in this release. Instead, what I think we could do is add that method to the implementing class(es) internally (like the AbstractResolver - the PR does that already). Of course at some places within our code, if we want to use the newer generics based method, we will probably end up doing a type check on the resolver instance to see if it's a AbstractResolver which has that new method, but I think that should be fine for now.

I would like some inputs on how we should go about this.

[1] https://github.com/apache/ant-ivy/pull/57/files#diff-8078d19e36e6c0b7abb0690fca45db0fR191

-Jaikiran


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org
For additional commands, e-mail: dev-h...@ant.apache.org

Reply via email to