Open jgfoster opened 2 years ago
Adding the directory BaselineOfBootstrapProcess/
now yields this error:
Instance of ZnBufferedReadStream did not understand #resolveString:
ZnBufferedReadStream(Object)>>doesNotUnderstand: #resolveString:
TonelFileSystemUtils class>>directoryFromPath:relativeTo:
TonelReader>>packageDirectory:
TonelReader class>>on:fileName:
[:s |
(MCVersionReader readerClassForFileNamed: aString) ifNotNil:
[:class | aBlock value: (class on: s fileName: (self pathForFileNamed: aString))]] in MCCacheRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do: in Block: [:s |...
[ :stream|
val := aBlock value: stream ] in MCCacheRepository(MCDirectoryRepository)>>readStreamForFileNamed:do: in Block: [ :stream|...
[ aBlock value: stream ] in FileReference(AbstractFileReference)>>binaryReadStreamDo: in Block: [ aBlock value: stream ]
FullBlockClosure(BlockClosure)>>ensure:
FileReference(AbstractFileReference)>>binaryReadStreamDo:
MCCacheRepository(MCDirectoryRepository)>>readStreamForFileNamed:do:
MCCacheRepository(MCFileBasedRepository)>>versionReaderForFileNamed:do:
MCCacheRepository>>loadVersionFromFileNamed:
TonelRepository(MCFileBasedRepository)>>loadVersionFromFileNamed:
[ :packageDirectory |
self loadVersionFromFileNamed: (self fileUtils directoryName: packageDirectory) ] in TonelRepository>>versionFrom: in Block: [ :packageDirectory | ...
FullBlockClosure(BlockClosure)>>cull:
[ :each |
(aBlock value: each)
ifTrue: [ ^ foundBlock cull: each ] ] in Array(Collection)>>detect:ifFound:ifNone: in Block: [ :each | ...
Array(SequenceableCollection)>>do:
Array(Collection)>>detect:ifFound:ifNone:
TonelRepository>>versionFrom:
MetacelloCachingGoferResolvedReference(GoferResolvedReference)>>version
MetacelloCachingGoferResolvedReference>>version
[ :each | each version ] in MetacelloFetchingMCSpecLoader>>resolveDependencies:nearest:into: in Block: [ :each | each version ]
OrderedCollection>>do:
[
"ensure that all resolved references have cached their version while wrapped by error handler"
aCollection do: [ :each | each version ].
nearestReference version dependencies do: block.
notDone := false ] in MetacelloFetchingMCSpecLoader>>resolveDependencies:nearest:into: in Block: [ ...
FullBlockClosure(BlockClosure)>>on:do:
MetacelloFetchingMCSpecLoader>>resolveDependencies:nearest:into:
[
| 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: [ ...
[:bar |
bar value: 1.
aBlock value.
bar value: 2 ] in IceMetacelloPharoPlatform(MetacelloPharoCommonPlatform)>>do:displaying: in Block: [:bar |...
FullBlockClosure(BlockClosure)>>cull:
[ ^ block cull: self ] in [ self prepareForRunning.
CurrentJob value: self during: [ ^ block cull: self ] ] in Job>>run in Block: [ ^ block cull: self ]
Following the install instructions in a new directory yields an error because
./pharo-local/package-cache
is empty: