[squeak-dev] The Trunk: Monticello-topa.392.mcz

commits at source.squeak.org commits at source.squeak.org
Thu May 6 05:25:43 UTC 2010


Andreas Raab uploaded a new version of Monticello to project The Trunk:
http://source.squeak.org/trunk/Monticello-topa.392.mcz

==================== Summary ====================

Name: Monticello-topa.392
Author: topa
Time: 3 May 2010, 12:08:36.05 pm
UUID: 725583e4-61fe-4946-9c81-ec9151571118
Ancestors: Monticello-ar.391

Making MCMs visible to users.
Useful for non-update-mcms, e.g., 
Seaside installation-mcms or the like.

=============== Diff against Monticello-ar.391 ===============

Item was changed:
  ----- Method: MCFileRepositoryInspector>>refresh (in category 'as yet unclassified') -----
  refresh
  	| packageNames |
  	packageNames := Set new.
  	packageList := nil.
  	versions := repository readableFileNames collect: [ :each | | name |
  		name := (each copyUpToLast: $.) copyUpTo: $(.
  		name last isDigit ifFalse: [Array with: name with: '' with: '' with: each]
  			ifTrue:
  				[Array
  					with: (packageNames add: (name copyUpToLast:  $-))		"pkg name"
  					with: ((name copyAfterLast: $-) copyUpTo: $.)				"user"
  					with: ((name copyAfterLast: $-) copyAfter: $.) asInteger	"version"
  					with: each]].
- 	versions := versions select: [:each | (each at: 3) isNumber].
  	newer := Set new.
  	inherited := Set new.
  	loaded := Set new.
  	(MCWorkingCopy allManagers 
  "		select: [ :each | packageNames includes: each packageName]")
  		do: [:each | | latest |
  			each ancestors do: [ :ancestor |
  				loaded add: ancestor name.
  				ancestor ancestorsDoWhileTrue: [:heir |
  					(inherited includes: heir name)
  						ifTrue: [false]
  						ifFalse: [inherited add: heir name. true]]].
  			latest := (versions select: [:v | v first = each package name])	
  				detectMax: [:v | v third].
  			(latest notNil and: [
  				each ancestors allSatisfy: [:ancestor | | av |
  					av := ((ancestor name copyAfterLast: $-) copyAfter: $.) asInteger.
  					av < latest third or: [
  						av = latest third and: [((ancestor name copyAfterLast: $-) copyUpTo: $.) ~= latest second]]]])
  				ifTrue: [newer add: each package name ]].
  
  	self changed: #packageList; changed: #versionList!




More information about the Squeak-dev mailing list