On Wed, Nov 30, 2011 at 12:10 PM, Sven Van Caekenberghe <[email protected]>wrote:

>
> On 30 Nov 2011, at 11:55, Mariano Martinez Peck wrote:
>
> > Yes, I gave up a couple of weeks ago:
> http://marianopeck.wordpress.com/2011/11/08/migrating-projects-to-squeaksource3/
>
> Very nice writeup, Mariano. Thank you!
>
> The problem is of course less one's own packages, but the big packages we
> depend on, Seaside, Glorp, XMLSupport, …
>

yes :(
But... what I do for my images (
http://marianopeck.wordpress.com/2011/11/19/loading-projects-and-building-your-own-images-with-metacello/)
is to use the same package-cache for ALL images. Since I am building all
the time, it is likely all needed mcz will be in such package-cache. If you
use the last version of those packages (seaside, glorp, etc), then it will
load the last one found in package-cache. If you use a fixed version, if it
is found, not problem. If it is not found -> error.

So...in my builder, I can do GeneralImageBuilder buildOffline: true.
THen:

loadPackages: packagesOrGroups
    | version repo |
    self generalPreLoad.
    version := (ConfigurationOfMariano project version: #bleedingEdge).
    self class buildOffline
        ifTrue: [
            repo := MCDirectoryRepository new.
              repo directory: self sharedPackageCacheDirectory.
              version repositoryOverrides: (OrderedCollection with: repo).
             ].
    version load: packagesOrGroups.


Conclusion: 90% of the times, I am able to recreate an image from my own
package-cache.

Cheers


-- 
Mariano
http://marianopeck.wordpress.com

Reply via email to