[Glass] package depends on class provided by package

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

[Glass] package depends on class provided by package

Paul DeBruicker
Hi -

I’ve got an mcz file that when I attempt to load it GemStone 3.1.0.6/Glass 1.0-b9.2 I get an error saying the package depends upon a class that is provided by the mcz.  This just started happening a week ago (e.g. also was happening in 1.0-b9.1) so I think it is something to do with the mcz.    If as a test I make a branch and remove the offending class in the package then reattempt the load, another package, higher in the same class hierarchy causes the error.  

The package loads fine into Pharo 1.4 & 2.  I have not tried others yet.

How should I go about figuring out what is causing the error?


Thanks

Paul
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] package depends on class provided by package

Dale Henrichs-3
What does the class hierarchy for the provided class look like ... before (hierarchy of involved classes before load) and after (intended hierarchy after load) ... I'd also like to see more details about the error itself ... start with a stack trace so I can see what methods are involved and then after I've studied that a bit, I'll probably have more questions .... 

I don't recall touching the Monticello loader for a long time, so there must be something else causing the loader to get confused ... The loader scans the definitions and builds a list of classes (class definitions) provided by the mcz file  and it uses that plus the existing class definitions from the image to determine whether or not the package depends upon missing classes ... so for some reason GemStone is not seeing the class definition or it is not recognizing the name of the class ... you could look at the snapshot (orderedCollection of definitions) from the mcz file and write a little script to extract the classNames from the classDefinitions and see if the class is in the definition list also look for any funky looking classNames ... I don't recall whether or not the classNames are supposed to be symbols, but that would be a classic problem if somehow the classNames in the mcz are Strings or Symbols when they are expected to be Symbols or Strings  ...

Is it possible that you've got some WideStrings being produced by the Pharo images? GemStone doesn't know what to do with WideStrings embedded in mcz files ... this is another "classic problem" 

Are these mcz files written out by FileTree? If so try a classical mcz file if not try a FileTree package (FileTree write UTF8 to disk, so any non 8 bit ASCII characters can be handled correctly) ...

I guess you could also ship me the mcz file and I can put it under a microscope...

Dale


On Tue, Jun 24, 2014 at 8:59 PM, Paul DeBruicker <[hidden email]> wrote:
Hi -

I’ve got an mcz file that when I attempt to load it GemStone 3.1.0.6/Glass 1.0-b9.2 I get an error saying the package depends upon a class that is provided by the mcz.  This just started happening a week ago (e.g. also was happening in 1.0-b9.1) so I think it is something to do with the mcz.    If as a test I make a branch and remove the offending class in the package then reattempt the load, another package, higher in the same class hierarchy causes the error.

The package loads fine into Pharo 1.4 & 2.  I have not tried others yet.

How should I go about figuring out what is causing the error?


Thanks

Paul
_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass


_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: [Glass] package depends on class provided by package

Paul DeBruicker
It was a WideString.  Which the Code Critics > Grease Portability tool found in about 5 seconds.  Thanks for the tips Dale.





Dale Henrichs-3 wrote
Is it possible that you've got some WideStrings being produced by the Pharo
images? GemStone doesn't know what to do with WideStrings embedded in mcz
files ... this is another "classic problem"

Dale


On Tue, Jun 24, 2014 at 8:59 PM, Paul DeBruicker <[hidden email]> wrote:

> Hi -
>
> I’ve got an mcz file that when I attempt to load it GemStone 3.1.0.6/Glass
> 1.0-b9.2 I get an error saying the package depends upon a class that is
> provided by the mcz.  This just started happening a week ago (e.g. also was
> happening in 1.0-b9.1) so I think it is something to do with the mcz.    If
> as a test I make a branch and remove the offending class in the package
> then reattempt the load, another package, higher in the same class
> hierarchy causes the error.
>
> The package loads fine into Pharo 1.4 & 2.  I have not tried others yet.
>
> How should I go about figuring out what is causing the error?
>
>
> Thanks
>
> Paul
> _______________________________________________
> Glass mailing list
> [hidden email]
> http://lists.gemtalksystems.com/mailman/listinfo/glass
>

_______________________________________________
Glass mailing list
[hidden email]
http://lists.gemtalksystems.com/mailman/listinfo/glass