[Glass] [Metacello] Name not found: 'OB-Metacello'

Johan Brichau johan at yesplan.be
Sat Jun 21 02:53:55 PDT 2014


Thanks Dale. 

I already feared there was not so much to do about this one (in general, that is). 

As you say: it *is* an invalid reference but I fear it’s a nasty problem that will pop up more and more in the context of locked projects and evolving configurations.
Seaside has this problem as well. The scenario is similar: 
- I have locked my images to Seaside 3.0.10 and I am loading the newest version of the ConfigurationOfSeaside3 to upgrade to Seaside 3.0.13
- Other configurations reference Seaside #stable version with a group that is defined for Seaside 3.1.x but not for Seaside 3.0.x
- The load breaks with a ‘name not found’ because I have locked Seaside to 3.0.10 and the configuration that references #stable references a name in the 3.1.x version of Seaside

I don’t see how I would want these things solved either, except maybe that Metacello would ignore such errors in the presence of locked versions (since I am not going to load the new referenced version anyway).
But I guess that would not be the whole story… and is probably more than a tough nut to crack...

In the end, the problem is evolution of configurations and the resulting incompatibilities :-(

cheers
Johan

On 21 Jun 2014, at 04:34, Dale Henrichs <dale.henrichs at gemtalksystems.com> wrote:

> So Johan, this reference to OB-Metacello is basically a configuration error ... it is no longer valid to reference the package OB-Metacello from GLASS once you have loaded a newer version of Metacello into the image that no longer manages OB-Metacello ... and I think that all that is necessary is that 'Metacello Tools' be removed from the 'Dev' group and 'Bob should be your uncle' ...
> 
> 
> Is there a reason that you are using GLASS 1.0-beta.9? I would be inclined to create a 1.0-beta.9.2 with this change ... but you'd probably need to upgrade ... the alternative to that would be to create a 1.0-beta.9.0.1 (??) that has this change ...
> 
> BTW, I think I've seen your "many more configurations and packages are being loaded" and I'm looking into it ...
> 
> Dale
> 
> 
> 
> 
> On Tue, Jun 10, 2014 at 2:45 PM, Johan Brichau <johan at yesplan.be> wrote:
> It’s raining Metacello load problems today… well, actually mine is a MetacelloPreview issue with a twist ;-)
> And I might have found what’s wrong with this one so I want to check on what to do next…
> 
> - In a standard GLASS-1.0-beta.9 (GS 3.1), with MyProject loaded, I upgraded to the MetacelloPreview. 
> - The ConfigurationOfMyProject references GLASS 1.0-beta.9 as a prerequisite.
> - I load an updated #development version of MyProject using the MetacelloPreview scripting API and I am denying all project upgrades/downgrades/conflicts
> - Everything works as expected but a subsequent (identical) load of ConfigurationOfMyProject will fail as follows:
> 
> --transcript--'DENIED: a MetacelloAllowProjectDowngrade occurred (notification 2741) Metacello (1.0-beta.32.1)->Metacello (1.0-beta.32)'
> --transcript--'Project: Metacello Tools 1.0-beta.32'
> ERROR 2318 , a UserDefinedError occurred (error 2318), reason:halt, Name not found: OB-Metacello (UserDefinedError)
> 
> What (I think) happens here is this:
> - The Metacello registry says ConfigurationOfMetacello is 1.0-beta.32.1 from http://seaside.gemstone.com/ss/metacello (only after the first load with the MetacelloPreview!)
> - The ConfigurationOfMyProject references GLASS 1.0-beta.9 which references the package ‘OB-Metacello’ in Metacello 1.0-beta.32
> - The (loaded) version 1.0-beta.32.1, however, does not have the package ‘OB-Metacello’ in its spec.
> - Because I deny all upgrades/downgrades, the loading still tries to find ‘OB-Metacello’ in the 1.0-beta.32.1 version of Metacello
> 
> I have two solutions:
> - not reference GLASS in ConfigurationOfMyProject until it references the latest Metacello (or MetacelloPreview)
> - not use MetacelloPreview (If I revert to using Metacello 1.0-beta.32 and I erase the registry, it works again)
> 
> I also noticed that if I load my project in a clean image using the MetacelloPreview, many more configurations and packages are being loaded than using the ‘standard’ Metacello.
> I do all loads using the Metacello scripting api.
> 
> Could it be that MetacelloPreview goes on walking the referenced projects even if you deny an upgrade? I have that impression… but I will try to demonstrate it more.
> 
> Johan
> 
> -- 
> You received this message because you are subscribed to the Google Groups "Metacello" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to metacello+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups "Metacello" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to metacello+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20140621/7579d211/attachment-0001.html>


More information about the Glass mailing list