The patch is included here:
http://216.121.112.228/browse/NH-2392
I will write tests this week to specifically test that the settability works
as advertised (something which I have already verified in our own code), but
I'm in the middle of a work emergency today.
All the existing unit tests for composite types have already been updated
and still pass. The only part I was particularly concerned about was the
use of "session.Factory" to get the mapping.
Hope this works out.
Patrick Earl
On Mon, Oct 25, 2010 at 5:00 AM, Fabio Maulo <[email protected]> wrote:
> #1 but it must be done today.
> I have to release beta2.
>
> --
> Fabio Maulo
>
>
> El 24/10/2010, a las 23:33, Patrick Earl <[email protected]> escribió:
>
> > ICompositeUserType seems to be broken when dynamic-update is true. It
> > is missing the NullSafeSet override with bool[] settable as an
> > argument. This causes it to break when there parameters that have
> > been replaced with "is null" elsewhere, and there are no parameter
> > slots to actually fill. Here are some potential fixes:
> >
> > 1. Break ICompositeUserType and add the bool[] settable argument.
> > 2. Break ICompositeUserType and add a separate method with the bool[]
> > settable argument.
> > 3. Make a new interface such as ICompositeUserTypePartialSetter and
> > add the appropriate method to that.
> >
> > Although ICompositeUserType works in most cases (obviously), I'd still
> > argue that it's fundamentally broken since types created with it will
> > break in surprising ways that the user has no control over. It
> > doesn't make sense to me as a user that my type should break suddenly
> > if dynamic-update is utilized. I'd propose that #1 is the best
> > solution from the "future user" perspective.
> >
> > Thoughts on how to undo this unfortunate brokenness?
> >
> > Patrick Earl
>