Roassal2 breaks Pharo 7

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Roassal2 breaks Pharo 7

alistairgrant
Hi Everyone,

Loading Roassal 2 in Pharo 7 with:


Gofer it
    smalltalkhubUser: 'ObjectProfile' project: 'Roassal2';
    configurationOf: 'Roassal2';
    loadStable.


makes the image unusable due to changes in NewValueHolder.

Roassal adds:

NewValueHolder>>announcer

^ announcer


which is fine in Pharo 6 because NewValueHodler is a subclass of
Object and initialises announcer in #initialize.

In Pharo 7 NewValueHolder is a subclass of Model and relies on lazy
initialisation of announcer in the corresponding accessor method
inherited from Model.

But... since Roassal is overriding the accessor method, announcer is
never initialised, with the result that errors similar to:

UndefinedObject(Object)>>doesNotUnderstand: #announce:

are triggered (often enough that the image is largely unusable).

I think the solution is to modify the packaging so that
NewValueHolder>>announce is moved in to a separate package that is
only loaded in Pharo 6 and earlier.

Thoughts?

Thanks!
Alistair