Hi Alexandre,
I was able to track down the source of the issues.. To start with the dependency warning
message from the Monticello multi package loader isn't very helpful, since you have no
clue as to the mcz file that contains the bogus definitions.
By putting a self halt in MCpackageLoader>>analyze I was able to figure out that the
requirements for the missing classes were coming from a variety of sources, apparently
sprinkled throughout the Moose code base:
#(
#RBVariableNode #('extension method for RBVariableNode class')
#RBBlockLintRule #('FameNameConventionBetweenFM3AndSmalltalkRule,
FameOppositeAttributeShouldPointBackRule, FAMIXMetaModelClassesNotDeclaredInFameRule,
FAMIXMetaModelClassesShouldNotOverrideRule, FAMIXMetaModelClassesShouldOverrideRule,
FameSuperclassMetaDescribedExistRule all attempting to subclass RBBlockLintFule')
#MalGraphNode #('FAMIXGraphNode attempt to subclass MalGraphNode')
#RBProgramNodeVisitor #('SmalltalkMethodVisitor, VisualWorksParseTreeVisitor
subclassing RBProgramNodeVisitor')
#RBProgramNode #('extension method for RBProgramNode')
)
Since I knew that the RB classes were coming from the RefactoringBrowser, I took a look at
the loadDirective for the two load expressions (using fetch instead of load, you can look
at the load order packages without actually doing any loads):
(ConfigurationOfMoose project version: '4.2') fetch loadDirective.
(ConfigurationOfMoose project version: '4.2-baseline') fetch loadDirective.
I scanned the two load directive trees looking for a RefactoringBrowser load in the
'4.2-baseline' fetch ... I traced the RefactoringBrowser refs to version
1.0-baseline PetitParser which loaded Glamour2.0-beta.8 which loaded Grease1.3 which ends
up loading the RefactoringBrowser classes.
Tracing the '4.2' fetch down to the PetitParser config, I found that version 1.0
of the PetitParser was being loaded which loaded of Glamour2.0.6 (instead of
Glamour2.0-beta.8) and Glamour2.0.6 does not reference Grease at all... Presumably if you
change the spec for Glamour in ConfigurationOfPetitParser version 1.0 from:
spec project: 'Glamour for Petit' with: '2.0.6'.
to
spec project: 'Glamour for Petit' with: '2.0-beta.8'.
You'll get the RefactoringBrowser classes loaded, however....
I think it would be prudent, to put explicit dependencies upon the RefactoringBrowser
config closer to requirements (whichever package the FAMIX and Fame classes reside
in....that looks like the ConfigurationOfMoose) rather than depend upon the resolution of
the required classes via the Glamour config (which is loading Grease i support of
Magritte)... If you do that, then you won't need to monkey with
ConfigurationOfPetitParser...
So the correct resolution is to make the packages with the offending classes and extension
methods (noted above) be made dependent upon ConfigurationOfRefactoringBrowser directly
from the ConfigurationOfMoose.
Dale
On Dec 6, 2010, at 6:40 AM, Alexandre Bergel wrote:
Hi Dale,
Apparently Doru fixed the problem we have had for a couple of weeks already.
I missed some packages apparently...
Cheers,
Alexandre
On 3 Dec 2010, at 20:59, Dale Henrichs wrote:
Alexandre,
Is this happening when you try to load Moose 4.2 from the latest configuration version in
the Moose repository ... let me know the starting point and I'll take a look at it
...
Dale
On 12/03/2010 02:41 PM, Alexandre Bergel wrote:
It still does not work. I've got a similar
error than the one described below.
The Moose-dsm package (present in
http://www.squeaksource.com/dsm) requires
ConfigurationOfMooseAlgos (from
http://www.squeaksource.com/MooseAlgos).
But I have
ConfigurationOfDSM>>baseline21: spec
<version: '2.1-baseline'>
...
spec
package: 'Moose-Dsm' with: [spec requires: #('Mondrian for DSM'
'MooseAlgos for DSM')];
package: 'Moose-CycleTable' with: [spec requires: #('Mondrian for DSM'
'MooseAlgos for DSM')];
...
spec
project: 'MooseAlgos for DSM' with: [
spec
className: 'ConfigurationOfMooseAlgos';
file: 'ConfigurationOfMooseAlgos';
version: 'default';
repository: 'http://www.squeaksource.com/MooseAlgos' ].
...
It still does not work, and I have no clue why...
Cheers,
Alexandre
On 3 Dec 2010, at 19:07, Tudor Girba wrote:
It is Moose-Dsm from
http://www.squeaksource.com/dsm.
Doru
On 3 Dec 2010, at 20:01, Alexandre Bergel wrote:
> Hi!
>
> I am still struggling to make Moose work on a Pharo 1.1.1. When you execute:
> ((Smalltalk at: #ConfigurationOfMoose) project version: '4.2') load
>
> You end up with an error:
> -=-=-=-=-=-=-=-=-=-=-=-=
> Warning: This package depends on the following classes:
> MalTarjanNode
> MalGraphNode
> MOCycleTable
> MalCyclesCoverage
> You must resolve these dependencies before you will be able to load these
definitions:
> DSMCycleTable
> DSMCycleTable>>cellShape
> DSMCycleTable>>cellShapeFor:borderColor:view:at:
> DSMCycleTable>>dsm
> DSMCycleTable>>dsm:
> DSMCycleTable>>edgeCellShapeBorder:fill:
> DSMCycleTable>>edgeCellShapeColor:
> DSMCycleTable>>renderOn:
> DSMCyclesCoverage
> DSMCyclesCoverage>>nodeClass
> DSMCyclesCoverage>>run
> DSMCyclesCoverage>>sort
> DSMTarjanNode
> DSMTarjanNode>>initialize
> DSMTarjanNode>>previousNodes
> DSMTarjanNode>>previousNodesInCycles
> DSMTarjanNode>>to:
> FAMIXGraphNode
> FAMIXGraphNode>>from:
> FAMIXGraphNode>>initialize
> FAMIXGraphNode>>isLeaf
> FAMIXGraphNode>>isRoot
> FAMIXGraphNode>>nextNodes
> FAMIXGraphNode>>nextNodes:
> FAMIXGraphNode>>previousNodes
> FAMIXGraphNode>>previousNodes:
> -=-=-=-=-=-=-=-=-=-=-=-=
>
> I put some spec requires: #('Mondrian for Moose' 'MooseAlgos for
Moose') ]; a bit everywhere.
> What package defines the class DSMTarjanNode, DSMCyclesCoverage, DSMCycleTable? I
looked into Moose-DistributionMap but apparently they are defined somewhere else.
> We are almost done.
>
> Cheers,
> Alexandre
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel
http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev(a)iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every now and then stop and ask yourself if the war you're fighting is the
right one."
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.