Hi Sam,

On 06/07/2011 10:12 AM, Sam Berlin wrote:
1) Where do we stop? Should we expose cglib & asm as real dependencies that can be upgraded too (real question)? That exposes the means by which Guice is doing its bytecode manipulation for grabbing line numbers & for AOP. If Guice decides to change how it does it, then people may have a false dependency/requirement on cglib & asm.

For Maven users this is a non-issue. If Guice removes a dependency and the user's code does not depend on it directly, it gets removed from their project automatically. For non-Maven users, you simply document the change of dependencies. Other libraries have done this for years and the sky didn't fall. Why is this such a big deal? As well, you need to consider that you won't be changing your dependencies very often (the minor version numbers might change but the actual libraries will not).

2) It's as if com.google.inject.internal APIs were exposed -- its something that Guice should be free to change without any user having to take any action at all, but now we're forcing them to think & act on it.

I am not proposing that com.google.inject.internal APIs be exposed. There is a world of difference between hiding Guice-specific code and hiding 3rd-party libraries that Guice links against.

3) Guice has averaged 2 year releases (for better or worse). Guava gives ~1.5 year leeway before removing any APIs Should we be forced to release a new version of Guice because a dependency changed its API? If we don't release a new one, that gets into some severe versioning hell.

This is a legitimate concern. Here's the thing: there is nothing wrong with making Guice releases more iterative. If anything, Guice users have been asking for this. I'd love to see a major release (with new APIs) every 2 years so long as you have smaller bug-fix releases along the way. Upgrading dependencies would fall under the category of bug fixing.

Gili

--
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-guice?hl=en.

Reply via email to