[Glass] [Metacello] Name not found: 'OB-Metacello'
Johan Brichau
johan at yesplan.be
Tue Jun 24 12:39:19 PDT 2014
On 24 Jun 2014, at 16:08, Dale Henrichs <dale.henrichs at gemtalksystems.com> wrote:
> How do you get things to break in 3.1.0.6?
I created a small ConfigurationOfTest with the following baseline in a freshly download 3.1.0.6 extent.
baseline: spec
<version: '1.0-baseline'>
spec for: #common do:[
spec
project: 'GLASS'
with: [ spec
className: 'ConfigurationOfGLASS';
versionString: '1.0-beta.9.2';
repository: 'http://seaside.gemtalksystems.com/ss/MetacelloRepository'].
spec
project: 'Seaside30'
with:
[ spec
className: 'ConfigurationOfSeaside3';
versionString: '3.0.13';
loads: #('Core');
repository: 'http://www.smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main'].
spec group: 'default' with: #('GLASS' 'Seaside30')]
Next, I execute this in topaz:
"Load the MetacelloPreview bleeding edge master"
(Smalltalk at: #Metacello) new
baseline: 'Metacello';
repository: 'github://dalehenrich/metacello-work:master/repository';
load.
"Load Seaside 3.0.13"
Metacello new
configuration: 'Seaside3';
repository: 'http://www.smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main';
version: '3.0.13';
load.
"Load My project, prevent upgrades of referenced projects"
Metacello new
configuration: 'Test';
version: '1.0-baseline';
onConflict:[:ex | Transcript show: 'CONFLICT: ',ex description, ' ', ex existingProjectRegistration baseName,' (',ex existingProjectRegistration version,')->', ex newProjectRegistration baseName,' (',ex newProjectRegistration version,')'. ex disallow.];
onUpgrade: [:ex | Transcript show: 'UPGRADE: ',ex description, ' ', ex existingProjectRegistration baseName,' (',ex existingProjectRegistration version,')->', ex newProjectRegistration baseName,' (',ex newProjectRegistration version,')'. ex disallow. ];
load
The last load expression breaks as follows:
--transcript--'Loading 1.0-baseline of ConfigurationOfTest...'
--transcript--'UPGRADE: a MetacelloAllowProjectUpgrade occurred (notification 2741) GLASS (0.231)->GLASS (1.0-beta.9.2)'
--transcript--'...RETRY->ConfigurationOfGLASS'
--transcript--'...RETRY->ConfigurationOfGLASS'
--transcript--'...FAILED->ConfigurationOfGLASS'
ERROR 2710 , a MetacelloPackageSpecResolutionError occurred (error 2710) (MetacelloPackageSpecResolutionError)
This is a little different from what I see in my case but I believe it boils down to the same problem:
Because the registry still points to GLASS 0.231, a conflict occurs and Metacello starts fetching that version. In the example I mention in this email it breaks because the repository of that version 0.231 no longer exists (it is a local directory on your servers I believe). In my case, it breaks because I use repositoryOverrides which does not include the necessary packages (see load transcript below). If I leave out the repositoryOverrides, the load goes fetching _a lot_ of configurations and packages I never loaded (transitive closure of GsSeaside28, I believe).
This is the end of the transcript of a load in my full case. it shows how Metacello starts loading a configuration I am not referencing.
--transcript--'Project: Seaside Tests 3.0.10'
--transcript--'Fetched -> Seaside-REST-Core-dkh.39 --- http://dev.yesplan.be/gsreplication --- http://dev.yesplan.be/gsreplication'
--transcript--'Fetched -> Seaside-GemStone-REST-Core-topa.2 --- http://dev.yesplan.be/gsreplication --- http://dev.yesplan.be/gsreplication'
--transcript--'Fetched -> Seaside-Swagger-KrisGybels.35 --- http://dev.yesplan.be/common --- http://dev.yesplan.be/common'
--transcript--'Fetched -> CSV-AndyKellens.12 --- http://dev.yesplan.be/gsreplication --- http://dev.yesplan.be/gsreplication'
--transcript--'Fetched -> JQWidgetBox-Core-JohanBrichau.4 --- http://dev.yesplan.be/jqwidgetbox --- http://dev.yesplan.be/jqwidgetbox'
--transcript--'Fetched -> JQWidgetBox-JEditable-Core-JohanBrichau.4 --- http://dev.yesplan.be/jqwidgetbox --- http://dev.yesplan.be/jqwidgetbox'
--transcript--'Fetched -> JQWidgetBox-HoverIntent-Core-JohanBrichau.3 --- http://dev.yesplan.be/jqwidgetbox --- http://dev.yesplan.be/jqwidgetbox'
--transcript--'Fetched -> JQWidgetBox-MbMenu-Core-JohanBrichau.21 --- http://dev.yesplan.be/jqwidgetbox --- http://dev.yesplan.be/jqwidgetbox'
--transcript--'Fetched -> JQWidgetBox-TableSorter-Core-ThomasCleenewerck.9 --- http://dev.yesplan.be/jqwidgetbox --- http://dev.yesplan.be/jqwidgetbox'
--transcript--'Fetched -> SeasideDynamicSVG-Core-JohanBrichau.120 --- http://dev.yesplan.be/SeasideDynamicSVG --- http://dev.yesplan.be/SeasideDynamicSVG'
--transcript--'Fetched -> SeasideDynamicSVG-JQuery-JohanBrichau.27 --- http://dev.yesplan.be/SeasideDynamicSVG --- http://dev.yesplan.be/SeasideDynamicSVG'
--transcript--'Fetched -> SeasideDynamicSVG-DragDrop-JohanBrichau.15 --- http://dev.yesplan.be/SeasideDynamicSVG --- http://dev.yesplan.be/SeasideDynamicSVG'
--transcript--'Fetched -> Seaside-GemStone-ServiceTask-NickAger.20 --- http://dev.yesplan.be/gsreplication --- http://dev.yesplan.be/gsreplication'
--transcript--'CONFLICT: a MetacelloAllowConflictingProjectUpgrade occurred (notification 2741) GLASS (0.231)->GLASS (1.0-beta.9)'
--transcript--'Project: GLASS 1.0-beta.9'
--transcript--'...RETRY->ConfigurationOfGsSeaside28'
--transcript--'...RETRY->ConfigurationOfGsSeaside28'
--transcript--'...FAILED->ConfigurationOfGsSeaside28'
ERROR 2710 , a MetacelloPackageSpecResolutionError occurred (error 2710) (MetacelloPackageSpecResolutionError)
Mind that removing/reseting the registry's entry for GLASS fixes this problem immediately.
Hope I made some sense...
Johan
More information about the Glass
mailing list