An optional off switch is undesirable. We should either remove this change
and be fully compatible with Guice 1 or break backwards compatibility and
document clearly.
Dhanji.

On Thu, Jan 22, 2009 at 1:08 AM, nimbus <[email protected]> wrote:

>
> Hi,
>
> The change in Guice 2 that was made in order to prevent Guice 2 from
> instantiating objects with private constructors is causing us some
> issues (i.e. the change described at
> http://code.google.com/p/google-guice/issues/detail?id=72
> ).
> Essentially, it is preventing us from using Guice 2 as a "drop in"
> replacement for  Guice 1 in our product. Suspect this may also be the
> case with some other codebases out there too.
>
> In order to ensure maximum backwards compatibility with code developed
> using Guice 1, would it be possible to have a means of switching off
> this check ? i.e. So  that the new behaviour would be the default in
> Guice 2, but could be disabled for maximum compatibility with code
> bases developed against Guice 1.
>
> Some more background to this request:
> I came across the new check when testing the codebase for the product
> I'm working on against guice-snapshot20081123. There are several
> public classes with private constructors in the codebase that are
> instantiated using Guice. So, this new check means that Guice 2 is not
> a "drop-in" replacement for Guice 1 in the codebase  - i.e. to use
> Guice 2, the codebase would have to be changed so that the
> constructors are annotated with @Inject.
>
> While this change to the product codebase could be made, there is
> another issue for us. Guice is also used as part of an extension
> mechanism for the product, so that customers can extend and customize
> it to meet their own requirements. So, some customers also have public
> classes with private constructors that are instantiated via Guice 1.
> We would like to move the product on to Guice 2 in a forthcoming
> release in order to take advantage of some of the great new Guice 2
> features. However, it will greatly complicate the product upgrade
> process if we have to ask our customers to make changes to their
> codebase (i.e. add the @Inject annotation to private constructors) in
> order to take the upgrade.
>
> Note that I've also added a note on this to the issue itself (i.e. at
> http://code.google.com/p/google-guice/issues/detail?id=72).
>
> Thanks,
>
> Eoin.
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
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