Hi Thierry, Does not work either. PharoDebug.log is not updated with this error. I paste bellow the stack from the debugger (but there is a no attribute values). Hilaire MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>retryingResolvePackageSpecReferences:gofer: [ | references nearestReference cachedReference externalReference mcVersion loadedVersionInfos | cachedReference := nil. packageSpec    searchCacheRepositoryForPackage: [ "check to see if mcz file is already in cacheRepository"       cachedReference := self          resolvePackageSpec: packageSpec          cachedGofer: self loaderPolicy cacheGofer.       (cachedReference ~~ nil and: [ packageSpec getFile ~~ nil ])          ifTrue: [ cachedReference name = packageSpec file                ifTrue:                   [ "exact match between packageSpec file and cache" ^ self scheduleFetchFor: packageSpec cachedReference: cachedReference ] ] ]. references := self    retryingResolvePackageSpecReferences: packageSpec    gofer: gofer.   "look up mcz file" nearestReference := references last    asMetacelloCachingResolvedReference. (cachedReference ~~ nil    and: [ cachedReference name = nearestReference name ])    ifTrue: [ "latest reference in repository matches cachedReference ... "       ^ self          scheduleFetchFor: packageSpec          nearestReference: nearestReference ]. (self ignoreImage not    and: [ (loadedVersionInfos := self ancestorsFor: packageSpec) ~~ nil ])    ifTrue: [ "If the mcz is already loaded into the image, no need to copy"       loadedVersionInfos          do: [ :info |             info name = nearestReference name                ifTrue: [ | spc |                   spc := packageSpec copy.                   spc file: info name.                   (MetacelloIgnorePackageLoaded signal: spc)                      ifFalse: [ ^ self ] ] ] ]. externalReference := (references    select: [ :ref | ref name = nearestReference name ]) first    asMetacelloCachingResolvedReference. self repositoryMap    at: externalReference name    put: externalReference repository. (self    resolveDependencies: externalReference    nearest: nearestReference    into: (OrderedCollection with: nearestReference))    do: [ :reference |       | pSpec l |       mcVersion := reference version.       (l := (GoferVersionReference name: reference name)          resolveAllWith: self loaderPolicy cacheGofer) isEmpty          ifTrue: [ self cacheRepository storeVersion: mcVersion.             reference == nearestReference                ifTrue: [ pSpec := packageSpec ]                ifFalse: [ pSpec := packageSpec project packageSpec.                   pSpec name: mcVersion package name ].             self loadData                addVersion: mcVersion                versionInfo: mcVersion info                resolvedReference: reference                packageSpec: pSpec ] ]. self    scheduleFetchFor: packageSpec    externalReference: externalReference ] in MetacelloFetchingMCSpecLoader>>linearLoadPackageSpec:gofer: in Block: [ | references nearestReference cachedReference ex...etc... IceMetacelloPharoPlatform(MetacelloPlatform)>>do:displaying: MetacelloFetchingMCSpecLoader>>linearLoadPackageSpec:gofer: MetacelloPackageSpec>>loadUsing:gofer: [ :pkg | pkg loadUsing: self gofer: gofer ] in MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>linearLoadPackageSpecs:repositories: in Block: [ :pkg | pkg loadUsing: self gofer: gofer ] Array(SequenceableCollection)>>do: MetacelloFetchingMCSpecLoader(MetacelloCommonMCSpecLoader)>>linearLoadPackageSpecs:repositories: [ super    linearLoadPackageSpecs: packageSpecs    repositories: repositories ] in MetacelloFetchingMCSpecLoader>>explicitLoadPackageSpecs:repositories: in Block: [ super... BlockClosure>>ensure: MetacelloLoaderPolicy>>pushLoadDirective:during: MetacelloLoaderPolicy>>pushExplicitLoadDirectivesDuring:for: MetacelloFetchingMCSpecLoader>>explicitLoadPackageSpecs:repositories: MetacelloPackageSpec>>explicitLoadUsing: MetacelloPackageSpec>>load [ spec projectPackage load ] in MetacelloScriptEngine>>getBaselineUnconditionalLoad: in Block: [ spec projectPackage load ] BlockClosure>>on:do: MetacelloScriptEngine>>getBaselineUnconditionalLoad: MetacelloScriptEngine>>getBaselineProjectUnconditionalLoad: MetacelloMCBaselineProject>>projectForScriptEngine:unconditionalLoad: MetacelloMCBaselineProject(MetacelloProject)>>projectForScriptEngine: MetacelloMCBaselineOfProjectSpec(MetacelloMCProjectSpec)>>versionForScriptEngine: [ | version loadedSpec | self setDefaultsAndValidateProjectSpec. [ loadedSpec := (self lookupProjectSpecFor: self projectSpec) copy ]    on: MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade    do:       [ :ex | ex handleOnDownGrade: onDownGradeBlock onUpgrade: onUpgradeBlock ]. version := loadedSpec versionForScriptEngine: self. self    root:       (required isEmpty          ifTrue: [ version load ]          ifFalse: [ version load: required ]) loadDirective. loadedSpec loads: required. MetacelloProjectRegistration    registrationForProjectSpec: loadedSpec    ifAbsent: [ :new |       new          loadedInImage: true;          registerProject ]    ifPresent: [ :existing :new |       existing          copyOnWrite: [ :existingCopy |             existingCopy                loadedInImage: true;                merge: new ] ] ] in [ self    handleNotificationsForAction: [ | version loadedSpec |       self setDefaultsAndValidateProjectSpec.       [ loadedSpec := (self lookupProjectSpecFor: self projectSpec) copy ]          on: MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          do:             [ :ex | ex handleOnDownGrade: onDownGradeBlock onUpgrade: onUpgradeBlock ].       version := loadedSpec versionForScriptEngine: self.       self          root:             (required isEmpty                ifTrue: [ version load ]                ifFalse: [ version load: required ]) loadDirective.       loadedSpec loads: required.       MetacelloProjectRegistration          registrationForProjectSpec: loadedSpec          ifAbsent: [ :new |             new                loadedInImage: true;                registerProject ]          ifPresent: [ :existing :new |             existing                copyOnWrite: [ :existingCopy |                   existingCopy                      loadedInImage: true;                      merge: new ] ] ] ] in MetacelloScriptEngine>>load:onProjectDownGrade:onProjectUpgrade: in Block: [ | version loadedSpec |... BlockClosure>>on:do: [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ] in [ [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ]    on:       MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          , MetacelloAllowConflictingProjectUpgrade    do:       [ :ex | "option handlers need to be outermost set of handlers ... last line of defense before users are involved" ex handleResolutionFor: self ] ] in [ [ [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ]    on:       MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          , MetacelloAllowConflictingProjectUpgrade    do:       [ :ex | "option handlers need to be outermost set of handlers ... last line of defense before users are involved" ex handleResolutionFor: self ] ]    on: MetacelloAllowLockedProjectChange    do:       [ :ex | "MetacelloAllowLockedProjectChange need to be outermost handler ... since it is signaled from second line of handlers" ex handleResolutionFor: self ] ] in MetacelloScriptEngine>>handleNotificationsForAction: in Block: [ actionBlock... BlockClosure>>on:do: [ [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ]    on:       MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          , MetacelloAllowConflictingProjectUpgrade    do:       [ :ex | "option handlers need to be outermost set of handlers ... last line of defense before users are involved" ex handleResolutionFor: self ] ] in [ [ [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ]    on:       MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          , MetacelloAllowConflictingProjectUpgrade    do:       [ :ex | "option handlers need to be outermost set of handlers ... last line of defense before users are involved" ex handleResolutionFor: self ] ]    on: MetacelloAllowLockedProjectChange    do:       [ :ex | "MetacelloAllowLockedProjectChange need to be outermost handler ... since it is signaled from second line of handlers" ex handleResolutionFor: self ] ] in MetacelloScriptEngine>>handleNotificationsForAction: in Block: [ [ actionBlock... BlockClosure>>on:do: [ [ [ actionBlock    on:       MetacelloLookupProjectSpec , MetacelloLookupProjectSpecForLoad          , MetacelloProjectSpecLoadedNotification          , MetacelloScriptEnsureProjectLoadedForDevelopment          , MetacelloLookupBaselineSpecForEnsureLoad    do:       [ :ex | "lookup and registration handlers need to be innermost set of handlers ...they may throw option notifications" ex handleResolutionFor: self ] ]    on:       MetacelloAllowProjectDowngrade , MetacelloAllowProjectUpgrade          , MetacelloAllowConflictingProjectUpgrade    do:       [ :ex | "option handlers need to be outermost set of handlers ... last line of defense before users are involved" ex handleResolutionFor: self ] ]    on: MetacelloAllowLockedProjectChange    do:       [ :ex | "MetacelloAllowLockedProjectChange need to be outermost handler ... since it is signaled from second line of handlers" ex handleResolutionFor: self ] ] in MetacelloScriptEngine>>handleNotificationsForAction: in Block: [ [ [ actionBlock... BlockClosure>>on:do: Le 03/04/2018 à 10:51, Thierry Goubier a écrit :
Hi Hilaire,
try
Metacello new baseline: 'DrGeo'; repository: 'tonel://', SmalltalkImage current imageDirectory pathString, '/src'; load
Thierry
-- Dr. Geo http://drgeo.eu