Mantis - Squeak
Viewing Issue Advanced Details
2989 Monticello minor always 02-21-06 00:12 03-27-06 19:51
saidani  
avi  
normal  
assigned  
open  
none    
none  
0002989: [BUG][FIX] When installing a mcz package through squeakmap, MCInstaller does not handle mcz dependencies

To reproduce :
- create through squeaksource an mcz package A depending on B with Monticello (http://www.squeaksource.com/aPackage/a.1.mcz) [^]
- create a package with squeakmap and link it to http://www.squeaksource.com/aPackage/a.1.mcz [^]
- load this package : you will see an error : "MCinstaller blabla doesn't find the B dependent package"
Workaround:
ClassIntoAInfo>>initialize

initialize
| monticello smallwikiRepository smallwikiStableRelease |

"install monticello latest release"
monticello := SMSqueakMap default packageWithName: 'Monticello'.
monticello lastPublishedRelease ifNotNil: [monticello lastPublishedRelease install]
                                                    ifNil: [monticello lastRelease install].

"install correct dependencies"
                                                                                                                                        packageRepository := MCHttpRepository location: 'http://www.squeaksource.com/aPackage' [^] user: 'squeak' password: 'squeak'.
                                                                                                                                        packageStableRelease := smallwikiRepository loadVersionFromFileNamed: 'a.1.mcz'.
                                                                                                                                        packageStableRelease allDependenciesDo: [ :dependency | dependency ]. "force resolving all depencies"
                                                                                                                                        packageStableRelease load.

Notes
(0003931)
saidani   
02-21-06 00:16   
Oups... another try

ClassIntoAInfo>>initialize

initialize
| monticello packageRepository packageStableRelease |

"install monticello latest release"
monticello := SMSqueakMap default packageWithName: 'Monticello'.
monticello lastPublishedRelease ifNotNil: [monticello lastPublishedRelease install]
                                                    ifNil: [monticello lastRelease install].

"install correct dependencies"
packageRepository := MCHttpRepository location: 'http://www.squeaksource.com/aPackage' [^] [^] user: 'squeak' password: 'squeak'.

packageStableRelease := packageRepository loadVersionFromFileNamed: 'a.1.mcz'.
packageStableRelease allDependenciesDo: [ :dependency | dependency ]. "force resolving all depencies"
packageStableRelease load.

Reoups, this workaround does not work very well after removing sm directory... Too late, I give up ;-)