manuallly controlling dependencies, at least for SAR

Jeff Sparkes jsparkes at databeacon.com
Wed Nov 27 16:44:10 UTC 2002


> From: goran.hultgren at bluefish.se [mailto:goran.hultgren at bluefish.se]
> This one is a fixed bug not yet released. Change this method to be:
> 
> cardWithNameBeginning: aString
> ...and then try again! Or make sure to only use lower case without
> spaces (don't need the full name though) in the search like this:
> 
> SMSqueakMap default installPackageNamed: 'win32nativefonts'

That did the trick.  You have to expect that people will want to use the
literal name from the package loader display.  Perhaps you shouldn't have 
allowed space in names, but I wasn't the first to do it.  The refactoring browser was already there.  :-)

In the branch of this thread, you want us to use "load scripts" .  I still
think that the require: method is at least semantically useful to show why you're loading another package.  Here's a working version, but not as a 
change set which might lead someone to actually use it.

require: packageName 
	"Install a package if it's not already installed."
	| card |
	card _ DefaultMap cardWithName: packageName.
	(DefaultMap installedPackages includes: card)
		ifFalse: [(self confirm: 'Install required package ' , packageName , ' first?')
				and: [DefaultMap installPackageNamed: card name]]



More information about the Squeak-dev mailing list