[squeak-dev] The Trunk: Installer-Core-cmm.445.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed May 4 22:59:50 UTC 2022
Chris Muller uploaded a new version of Installer-Core to project The Trunk:
http://source.squeak.org/trunk/Installer-Core-cmm.445.mcz
==================== Summary ====================
Name: Installer-Core-cmm.445
Author: cmm
Time: 4 May 2022, 5:57:54.528844 pm
UUID: 966e37e1-9853-4ae9-9bdd-6a342c4ffaf2
Ancestors: Installer-Core-mt.444
When using #merge:, allow the logical #local repository to automatically map to the filesystem-based local if the local http (SqueakSource) server is down.
=============== Diff against Installer-Core-mt.444 ===============
Item was added:
+ ----- Method: Installer class>>resetDefaultLocalRepository (in category 'repository-overrides') -----
+ resetDefaultLocalRepository
+ self localRepository: nil!
Item was changed:
----- Method: Installer>>merge: (in category 'public interface') -----
merge: structureOrSymbol
| toUncache |
toUncache := Set new.
self
packageDependenciesFor: structureOrSymbol
do:
+ [ : eachPackageName : eachRepositorySpec | | repo version tried |
+ tried := false.
+ repo := [ (self class repositoryFor: eachRepositorySpec) cacheAllFilenames ]
+ on: Error
+ do:
+ [ : err | tried
+ ifTrue: [ err pass ]
+ ifFalse:
+ [ tried := true.
+ self class resetDefaultLocalRepository.
+ err retry ] ].
- [ : eachPackageName : eachRepositorySpec | | repo version |
- (repo := self class repositoryFor: eachRepositorySpec) cacheAllFilenames.
toUncache add: repo.
version := self
primMerge: eachPackageName
from: repo.
"Lazy code, polite MC won't add duplicates if they already exist."
version ifNotNil:
[ version workingCopy repositoryGroup
addRepository: repo ;
addRepository: (self class defaultRepositoryFor: eachRepositorySpec) ] ].
+ toUncache do:
+ [ : each | each flushAllFilenames ]!
- toUncache do: [ : each | each flushAllFilenames ]!
More information about the Squeak-dev
mailing list
|