[squeak-dev] The Trunk: SMBase-cmm.115.mcz
commits at source.squeak.org
commits at source.squeak.org
Sat Feb 12 22:46:39 UTC 2011
Chris Muller uploaded a new version of SMBase to project The Trunk:
http://source.squeak.org/trunk/SMBase-cmm.115.mcz
==================== Summary ====================
Name: SMBase-cmm.115
Author: cmm
Time: 28 January 2011, 5:36:49.682 pm
UUID: 4dea2886-ad2a-457b-a220-357c30eb91f7
Ancestors: SMBase-cmm.114
- Support for new SMReleaseBrowser. Successfully tested creating and updating a package-release.
- Added guard SMPackage>>#addRelease: to prevent adding the same SMPackageRelease, just in case.
- The default-script name cannot be install.st, because it is stored in the same directory on the server as all other package-releases. Therefore, it is qualified with the id of the package-release.
- When creating a new release from the browser, default all of the mandatory categories so the user may not have to select them.
- Need to know when an object is created new to know whether it should "save as a new release" or simply update the existing release. This is accomplished by creating an 'unattached' release (not part of its package's releases).
- Removed some unused methods.
- Remove 'head' instVar, going to try first to do it via a category!
- When setting the mandatory categories, ensure all other categories of that type are removed.
=============== Diff against SMBase-cmm.114 ===============
Item was removed:
- ----- Method: SMObject>>created: (in category 'accessing') -----
- created: c
- created := c!
Item was removed:
- ----- Method: SMObject>>isPersistent (in category 'testing') -----
- isPersistent
- ^ created ~= updated!
Item was removed:
- ----- Method: SMObject>>updated: (in category 'accessing') -----
- updated: c
- updated := c!
Item was changed:
SMDocument subclass: #SMPackage
+ instanceVariableNames: 'releases packageInfoName repository'
- instanceVariableNames: 'head releases packageInfoName repository'
classVariableNames: ''
poolDictionaries: ''
category: 'SMBase-domain'!
!SMPackage commentStamp: '<historical>' prior: 0!
An SMPackage represents a named piece of an installable "thing" in the image. Typically it is a code package, but it can be other things too.
It owns a collection of SMPackageReleases. Each release represents a version of the package, and each release has a URL that refers to the actual content that can be installed.
An SMPackage also knows its packageInfoName which can tie it into the image.!
Item was changed:
----- Method: SMPackage>>addRelease: (in category 'private') -----
+ addRelease: aSMPackageRelease
- addRelease: aRelease
"Add the release. Make sure package is set."
+ (releases includes: aSMPackageRelease) ifFalse: [ releases add: aSMPackageRelease ].
+ aSMPackageRelease package: self.
+ ^ aSMPackageRelease!
-
- releases add: aRelease.
- aRelease package: self.
- ^aRelease!
Item was removed:
- ----- Method: SMPackage>>head (in category 'accessing') -----
- head
- "The head release loads the latest development MC package versions."
- ^ head!
Item was removed:
- ----- Method: SMPackage>>head: (in category 'accessing') -----
- head: aSMPackageRelease
- "The head release loads the latest development MC package versions."
- head := aSMPackageRelease!
Item was removed:
- ----- Method: SMPackageRelease>>compatibility (in category 'accessing') -----
- compatibility
- ^ self categories
- detect:
- [ : each | each parent = self map compatibilityLevels ]
- ifNone: [ ]!
Item was removed:
- ----- Method: SMPackageRelease>>compatibility: (in category 'accessing') -----
- compatibility: aSMCategory
- aSMCategory parent = self map compatibilityLevels ifFalse: [ self error: 'Not a compatibility category.' ].
- self compatibility ifNotNilDo:
- [ : oldCat | self removeCategory: oldCat ].
- self addCategory: aSMCategory!
Item was changed:
----- Method: SMPackageRelease>>downloadUrl: (in category 'accessing') -----
+ downloadUrl: urlString
+ downloadUrl := urlString!
- downloadUrl: anObject
- ^downloadUrl := anObject!
Item was removed:
- ----- Method: SMPackageRelease>>license (in category 'accessing') -----
- license
- ^ self categories
- detect:
- [ : each | each parent = self map licenses ]
- ifNone: [ ]!
Item was removed:
- ----- Method: SMPackageRelease>>license: (in category 'accessing') -----
- license: aSMCategory
- aSMCategory parent = self map licenses ifFalse: [ self error: 'Not a license category.' ].
- self license ifNotNilDo:
- [ : oldCat | self removeCategory: oldCat ].
- self addCategory: aSMCategory!
Item was removed:
- ----- Method: SMPackageRelease>>licenses (in category 'accessing') -----
- licenses
- "Answer the Licenses parent SMCategory."
- ^ self map licenses!
Item was removed:
- ----- Method: SMPackageRelease>>maturity (in category 'accessing') -----
- maturity
- ^ self categories
- detect:
- [ : each | each parent = self map maturityLevels ]
- ifNone: [ nil ]!
Item was removed:
- ----- Method: SMPackageRelease>>maturity: (in category 'accessing') -----
- maturity: aSMCategory
- aSMCategory parent = self map maturityLevels ifFalse: [ self error: 'Not a maturity category.' ].
- self maturity ifNotNilDo:
- [ : oldCat | self removeCategory: oldCat ].
- self addCategory: aSMCategory!
Item was removed:
- ----- Method: SMPackageRelease>>parentVersion (in category 'accessing') -----
- parentVersion
- ^ self parentRelease ifNotNilDo: [ : pr | pr version ]!
Item was removed:
- ----- Method: SMPackageRelease>>squeakVersion (in category 'accessing') -----
- squeakVersion
- ^ self categories
- detect:
- [ : each | each parent = self map squeakVersions ]
- ifNone: [ ]!
Item was removed:
- ----- Method: SMPackageRelease>>squeakVersion: (in category 'accessing') -----
- squeakVersion: aSMCategory
- aSMCategory parent = self map squeakVersions ifFalse: [ self error: 'Not a squeakVersion category.' ].
- self squeakVersion ifNotNilDo:
- [ : oldCat | self removeCategory: oldCat ].
- self addCategory: aSMCategory!
Item was removed:
- ----- Method: SMSqueakMap>>licenses (in category 'accessing') -----
- licenses
- ^ self categoryWithNameBeginning: 'Licenses'!
Item was removed:
- ----- Method: SMSqueakMap>>maturityLevels (in category 'accessing') -----
- maturityLevels
- ^ self categoryWithNameBeginning: 'Maturity level'!
Item was removed:
- ----- Method: SMSqueakMap>>squeakVersions (in category 'accessing') -----
- squeakVersions
- ^ self categoryWithNameBeginning: 'Squeak versions'!
More information about the Squeak-dev
mailing list
|