David T. Lewis uploaded a new version of PackageInfo-Base to project The Trunk:
http://source.squeak.org/trunk/PackageInfo-Base-jr.70.mcz==================== Summary ====================
Name: PackageInfo-Base-jr.70
Author: jr
Time: 1 March 2017, 3:57:02.186078 pm
UUID: 4eaf925f-ff65-7647-8ef5-f9d0c9f7b58c
Ancestors: PackageInfo-Base-mt.69
regard environments when looking up things and registering
=============== Diff against PackageInfo-Base-mt.69 ===============
Item was added:
+ ----- Method: Environment>>packageOrganizer (in category '*PackageInfo-Base') -----
+ packageOrganizer
+ ^ info packages!
Item was changed:
----- Method: PackageInfo class>>named: (in category 'packages access') -----
named: aString
+ ^ Environment current packageOrganizer packageNamed: aString ifAbsent: [(self new packageName: aString) register]!
- ^ PackageOrganizer default packageNamed: aString ifAbsent: [(self new packageName: aString) register]!
Item was changed:
----- Method: PackageInfo>>classes (in category 'listing') -----
classes
+ | environment organization |
+ environment := Environment current.
+ organization := environment organization.
^(self systemCategories gather:
[:cat |
+ (organization listAtCategoryNamed: cat)
+ collect: [:className | environment valueOf: className]])
- (SystemOrganization listAtCategoryNamed: cat)
- collect: [:className | Smalltalk at: className]])
sorted: [:a :b | a className <= b className]!
Item was changed:
----- Method: PackageInfo>>externalTraits (in category 'modifying') -----
externalTraits
^ Array streamContents: [:s |
| behaviors |
behaviors := self classesAndMetaClasses.
+ Environment current allTraits do: [:trait |
- Smalltalk allTraits do: [:trait |
(behaviors includes: trait) ifFalse: [s nextPut: trait].
(behaviors includes: trait classSide) ifFalse: [s nextPut: trait classSide]]]. !
Item was changed:
----- Method: PackageInfo>>foreignClasses (in category 'listing') -----
foreignClasses
+ | s environment |
- | s |
s := IdentitySet new.
+ environment := Environment current.
self foreignSystemCategories
do: [:c | (SystemOrganization listAtCategoryNamed: c)
do: [:cl |
| cls |
+ cls := environment valueOf: cl.
- cls := Smalltalk at: cl.
s add: cls;
add: cls class]].
^ s!
Item was changed:
----- Method: PackageInfo>>register (in category 'registering') -----
register
+ Environment current packageOrganizer registerPackage: self!
- PackageOrganizer default registerPackage: self!
Item was changed:
----- Method: PackageInfo>>systemCategories (in category 'listing') -----
systemCategories
+ ^ Environment current organization categories select: [:cat | self includesSystemCategory: cat]!
- ^ SystemOrganization categories select: [:cat | self includesSystemCategory: cat]!