On Mon, 29 Apr 2013, commits@source.squeak.org wrote:
Frank Shearar uploaded a new version of Installer-Core to project The Trunk: http://source.squeak.org/trunk/Installer-Core-fbs.366.mcz
==================== Summary ====================
Name: Installer-Core-fbs.366 Author: fbs Time: 29 April 2013, 12:13:46.368 pm UUID: a93fa0fc-2a93-405a-86df-7aa334ee214b Ancestors: Installer-Core-fbs.365
versionNames is a Set nowadays, but we want to sort it. Hence, convert to an Array.
If your goal is to sort something non-sortable, or you don't want to change the existing object, then use #sorted:. So in this case:
versionNames sorted: self mcSortFileBlock
#sort: intentionally only works if the receiver is sortable, and it modifies the receiver.
Levente
=============== Diff against Installer-Core-fbs.365 ===============
Item was changed: ----- Method: InstallerMonticello>>mcThing (in category 'monticello') ----- mcThing | loader | loader := self classMCVersionLoader new.
"several attempts to read files - repository readableFileNames sometimes fails" self packages do: [:pkg | | versionNames fileToLoad version | versionNames := mc versionNamesForPackageNamed: (pkg asMCVersionName versionNumber = 0 ifTrue: [ "Just a package name specified, use it whole." pkg ] ifFalse: [pkg asMCVersionName packageName]).
versionNames asArray sort: self mcSortFileBlock.
^ loader!versionNames sort: self mcSortFileBlock. fileToLoad := versionNames detect: (self mcDetectFileBlock: pkg) ifNone: [ nil ]. fileToLoad ifNotNil: [version := mc versionNamed: fileToLoad. (version isKindOf: MCConfiguration) ifTrue: [^ version] ifFalse: [self normalizedRepositories do: [:repo | MCRepositoryGroup default addRepository: repo]. self normalizedRepositories do: [:repo | version workingCopy repositoryGroup addRepository: repo]. loader addVersion: version]. self logCR: ' found ' , version fileName , '...']].
On 29 April 2013 19:29, Levente Uzonyi leves@elte.hu wrote:
On Mon, 29 Apr 2013, commits@source.squeak.org wrote:
Frank Shearar uploaded a new version of Installer-Core to project The Trunk: http://source.squeak.org/trunk/Installer-Core-fbs.366.mcz
==================== Summary ====================
Name: Installer-Core-fbs.366 Author: fbs Time: 29 April 2013, 12:13:46.368 pm UUID: a93fa0fc-2a93-405a-86df-7aa334ee214b Ancestors: Installer-Core-fbs.365
versionNames is a Set nowadays, but we want to sort it. Hence, convert to an Array.
If your goal is to sort something non-sortable, or you don't want to change the existing object, then use #sorted:. So in this case:
versionNames sorted: self mcSortFileBlock
#sort: intentionally only works if the receiver is sortable, and it modifies the receiver.
I've updated it to use #sorted: because it looks cleaner. (#sorted: = asArray sort:, at least currently. Or asOrderedCollection sort:, depending on the receiver.)
squeak-dev@lists.squeakfoundation.org