[Pkg] Packages: Packages-Core-kph.37.mcz
squeaksource-noreply at iam.unibe.ch
squeaksource-noreply at iam.unibe.ch
Mon May 26 10:55:02 UTC 2008
A new version of Packages-Core was added to project Packages:
http://www.squeaksource.com/Packages/Packages-Core-kph.37.mcz
==================== Summary ====================
Name: Packages-Core-kph.37
Author: kph
Time: 26 May 2008, 11:54:59 am
UUID: 052a68e1-33db-43e7-a1c6-17db1ba09318
Ancestors: Packages-Core-kph.36
try to only remove those package selectors which are no longer in universes
=============== Diff against Packages-Core-kph.36 ===============
Item was added:
+ ----- Method: Packages class>>taskRemoveOldPackages (in category 'tasks - universes') -----
+ taskRemoveOldPackages
+
+ ^ SakeTask define: [ :task |
+
+ task dependsOn: { [ self isUniverse ]. self taskUpdateUniverse. }.
+
+ task action: [
+ (self selectors difference:
+ (self theUUniverse packageNames collect: [ :each | self asSelector: each name ]))
+ do: [ :old | self removeSelector: old ]
+ ].
+ ]!
Item was changed:
----- Method: Packages class>>taskGenerateUniversePackageTasks (in category 'tasks - universes') -----
taskGenerateUniversePackageTasks
| source selector |
^ SakeTask define: [ :task |
task dependsOn: {
[ self isUniverse ].
+ self taskUpdateUniverse.
+ self taskRemoveOldPackages.
- (SakeTask class: self) removeSelectorsMatching: '*'.
- self taskUpdateUniverse.
}.
task action: [
(self theUUniverse packageNames collect: [ :each | self theUUniverse newestPackageNamed: each ]) do: [ :each |
source := (WriteStream on: String new).
source << (selector := self asSelector: each name).
source cr; cr.
source << ' self name: ' << each name printString << '.' ; cr.
source << ' self version: ''' << each version << '''.' ; cr; cr.
source << ' info category: ''' << each category printString << '''.' ; cr.
source << ' info description: ' ; cr.
source << each description withSqueakLineEndings printString << '.' ; cr.
source << ' info maintainer: ''' << each maintainer << '''.' ; cr.
source << ' info homepage: ''' << (each homepage ifNil: ['']) asString << '''.' ; cr.
source << ' info squeakMapID: ''' << (each squeakMapID ifNil: ['']) asString << '''.' ; cr.
source << ' info url: ''' << each url printString << '''.' ; cr.
source << ' self provides: ' << each provides asArray printString << '.' ; cr ; cr.
source << ' self dependsOn: ' << each depends asArray printString << '.' ; cr ; cr.
source << ' self load: [' ; cr.
each url ifNotNil: [
source << ' Installer installUrl:''' << each url printString << '''.' ; cr.
].
source << ' ].' ; cr ; cr.
source << ' self unloadDependsOn: { self taskUnloadDependants }.' ; cr.
source << ' self unload: [' ; cr.
each url ifNotNil: [
source << ' Installer unload: ' << each name printString << '.' ; cr.
].
source << ' ].'.
+
+ (self sourceCodeAt: selector ifAbsent: nil) ~= source contents ifTrue: [
+
-
- (self sourceCodeAt: selector) ~= source ifTrue: [
self compile: source contents classified: each category printString notifying: nil
]
].
theUUniverse := nil.
].
]!
More information about the Packages
mailing list