> On 24 Aug 2015, at 16:18, Thierry Goubier <[email protected]> wrote:
> 
> 
> 
> 2015-08-24 16:13 GMT+02:00 Thierry Goubier <[email protected]>:
> 
> 
> 2015-08-24 16:07 GMT+02:00 Thierry Goubier <[email protected]>:
> Hi Nicolai,
> 
> I think you're right. But why irregular errors?
> 
> Ok, for that particular method, with Zinc smalltalkhub repo open and 
> Zn-Tests.231 selected (this forces a read of the mcz definitions in the 
> image), what I have is:
> 
> ZnEntityTests>>#testUnspecifiedEncoding -> old version.
>   ok
> MCMethodDefinition cachedDefinitions at: 
> ZnEntityTests>>#testUnspecifiedEncoding -> new version
>   ok
> ZnEntityTests>>#testUnspecifiedEncoding asRingDefinition -> old version
>   ok
> ZnEntityTests>>#testUnspecifiedEncoding asRingDefinition asMCMethodDefinition 
> -> new version
>   not ok.
> 
> Wrong result to sameAsMCDefinition:
> 
> (ZnEntityTests>>#testUnspecifiedEncoding) asRingDefinition 
> sameAsMCDefinition: (MCMethodDefinition cachedDefinitions at: 
> ZnEntityTests>>#testUnspecifiedEncoding)
>     true
> (ZnEntityTests>>#testUnspecifiedEncoding) asRingDefinition sourceCode = 
> (MCMethodDefinition cachedDefinitions at: 
> ZnEntityTests>>#testUnspecifiedEncoding) source
>     false
> 
> Ok, have a look at that:
> 
> sameAsMCDefinition: anMCMethodDefinition
> 
>       ^ anMCMethodDefinition selector = self selector 
>                       and: [ anMCMethodDefinition className = self className
>                       and: [ anMCMethodDefinition classIsMeta = self 
> isMetaSide 
>                       and: [ anMCMethodDefinition category = self protocol ]]]
> 
> ... no comment.
> 
> 
> Changing that to:
> sameAsMCDefinition: anMCMethodDefinition
>       ^ anMCMethodDefinition selector = self selector
>               and:
>                       [ 
>                       anMCMethodDefinition className = self className
>                               and:
>                                       [ 
>                                       anMCMethodDefinition classIsMeta = self 
> isMetaSide
>                                               and:
>                                                       [ 
>                                                       anMCMethodDefinition 
> category = self protocol
>                                                               and: [ 
> anMCMethodDefinition source = self sourceCode ] ] ] ]
> 
> (source code comparison added).
> 
> solves loading Sven test packages.

Yes, I can confirm that that patch makes the loading work again. Great work !

> Marcus, can you try on yours?
> 
> Thierry
>  
> Thierry
> 
> 
> Thierry
> 
> 2015-08-24 15:37 GMT+02:00 Sven Van Caekenberghe <[email protected]>:
> 
> > On 24 Aug 2015, at 15:31, Nicolai Hess <[email protected]> wrote:
> >
> > Can someone look at
> >
> > RGMethodDefinition>>#asMCMethodDefinition
> > I think this method uses one cache
> > (MCMethodDefinition cachedDefinitions)
> > even for both, methods from the MCPackage and methods from the image 
> > package,
> > of course, they should not be equal. But they are index by the 
> > compiledMethod
> > and this is always the compiled method of the existing method in the image 
> > (RGMethodDefinition>>compiledMethod)
> >
> > But if this is the cause of this bug, I would guess we see much more 
> > strange errors.....
> 
> Well, Stef reported a problem a couple of days ago, then Marcus another one, 
> and now mine. All with versions, changes, code loading.
> 
> > 2015-08-24 15:06 GMT+02:00 Martin Dias <[email protected]>:
> >
> > On Mon, Aug 24, 2015 at 3:03 PM, Thierry Goubier 
> > <[email protected]> wrote:
> >
> >
> > 2015-08-24 14:43 GMT+02:00 Sven Van Caekenberghe <[email protected]>:
> > I have to concur, something very strange is wrong.
> >
> > #50265
> >
> > Load Zinc-Tests-SvenVanCaekenberghe.231 from 
> > http://mc.stfx.eu/ZincHTTPComponents
> >
> > ZnEntityTests>>#testUnspecifiedEncoding should have today as latest version 
> > and it simply does not (the code is wrong too), I can't imagine how that is 
> > possible.
> >
> > And this is with loading code ... seems quite dangerous.
> >
> > Fun: copying Zinc-Tests-SvenVanCaekenberghe.231 to a filetree repo, then 
> > loading from the filetree is correct, at least for 
> > ZnEntityTests>>#testUnspecifiedEncoding
> >
> > #50265
> >
> > Strange. Once the MCDefinitions are loaded (repository type dependent, 
> > that), the code path is repository-independent, no?
> >
> > Strange. Does this happen for all changed methods, or only some of them?
> >


Reply via email to