All, I was confused about the purpose of PackageInfo>>mostSpecificPackageOfMethod:ifNone: and PackageInfo>>mostSpecificPackageOfClass:ifNone: They seem to be a workaround to the bug that exist in #packageOfClass:ifNone: and #packageOfMethod:ifNone:? I propose this fix, after discussing it with Lukas: http://code.google.com/p/pharo/issues/detail?id=1752 Background of problem: In theory it should not be possible for packages to overlap. Every class, and every method should belong to only one Category. In reality packaging bugs and other actions does cause packages to be created that overlap. An example in PharoCore, 10505 is this: (PackageOrganizer default packageNamed: 'Collections' ifAbsent: [ self error: 'hmm']) includesClass: Text. " true " (PackageOrganizer default packageNamed: 'Collections-Text' ifAbsent: [ self error: 'hmm']) includesClass: Text. " also true! " In the old implementation, #packageOfClass: would have returned the first category that matches. It will now return the more specific 'Collections-Text'. I suggest that #mostSpecificPackageOfClass* and #mostSpecificPackageOfMethod* methods be removed as well? -- Danie Roux *shuffle* Adore Unix - http://danieroux.com