[Pkg] Packages: Sake-Packages-kph.22.mcz
squeak-dev-noreply at lists.squeakfoundation.org
squeak-dev-noreply at lists.squeakfoundation.org
Tue Feb 17 22:49:37 UTC 2009
A new version of Sake-Packages was added to project Packages:
http://www.squeaksource.com/Packages/Sake-Packages-kph.22.mcz
==================== Summary ====================
Name: Sake-Packages-kph.22
Author: kph
Time: 17 February 2009, 10:49:35 pm
UUID: c3d74616-6eef-40db-8998-f624a3c4cb63
Ancestors: Sake-Packages-kph.21
#provided remembers the SakeMeta info rather than the whole task, to avoid holding pointers.
migration of old data is performed
=============== Diff against Sake-Packages-kph.21 ===============
Item was changed:
----- Method: Packages class>>initialize (in category 'initialization') -----
initialize
+ lastUpdate := nil.
+
+ self provided withIndexDo: [ :v :k |
+ | info |
+
+ (v respondsTo: #info) ifTrue: [
+
+ info := v info.
+ info dependsOn: (v dependsOn collect: [ :ea | ea asString ]).
+ info provides: v provides.
+ info class: v class name.
+ self provided at: k put: info.
+
+ ]
+ ]!
- lastUpdate := nil.!
Item was changed:
----- Method: Packages class>>upgrade (in category 'public') -----
upgrade
- Packages update.
+ self upgradeTasks run
+ !
- self provided values asSet asTask run!
Item was changed:
----- Method: Packages>>doActionEnd (in category 'as yet unclassified') -----
doActionEnd
self isUnloading ifTrue: [ ^ self ].
self class provided in: [ :reg |
+ info dependsOn: (self dependsOn collect: [ :ea | ea asString ]).
+ info provides: self provides.
+ info class: self class name.
+ self provides do: [ :each | reg at: each put: info ].
- self provides do: [ :each | reg at: each put: self ].
].
"if a package appears in Packages under an obscure name, it can
tell the PackageInfo instance what name was used to load it via metadata
at mcName"
self addToPackageInfo.
!
Item was added:
+ ----- Method: Packages class>>upgradeTasks (in category 'public') -----
+ upgradeTasks
+ | list |
+ Packages update.
+
+ list := Set new.
+
+ self provided withIndexDo: [ :k :v | list add: ((Smalltalk classNamed: v class) named: k) ].
+
+ ^ list asTask!
Item was changed:
----- Method: Packages class>>upgradeList (in category 'public') -----
upgradeList
"the list of pacakges that would be loaded by an upgrade"
Packages beta load: 'Packages'.
+ ^ (self upgradeTasks instVarNamed: 'actionBlock') select: [ :ea | ea isNeeded: #() ] thenCollect: [ :ea | ea name ].
- ^ (self provided values asSet asTask instVarNamed: 'actionBlock') select: [ :ea | ea isNeeded: #() ] thenCollect: [ :ea | ea name ].
"
self upgradeList
"!
Item was removed:
- ----- Method: Packages>>dependants (in category 'as yet unclassified') -----
- dependants
-
- ^ self class provided select: [ :dependant |
- dependant dependsOn includesAnyOf: self provides.
- ].
- !
More information about the Packages
mailing list