I ran into some interesting problems with my BottomFeeder build script and the latest VW build today - as it happens, I had an interaction problem between the new build and the latest version of a package in the public repository. Why did I run into that? Well, here's the line of the script that I ran into trouble with:
(Store.Package newestVersionWithName: 'TimeSoZone') loadSrc.
What that does is find the named package and load the latest version. The problem is, the latest version happens to be a branch I don't want - what I really want is the last "stable" version. Perusing class Store.DBRecord, it doesn't look like there's an API to load a specific version. However, that's not really much of a problem, because we can craft a line of code that suits our needs:
((Store.Package allVersionsWithName: 'TimeSoZone') detect: [:each | each version = '8'])
That almost solved my problem. It turns out that the script wasn't loading the latest version of a package I wanted - ImageConfig. Why? Well, there's an old (2003) version that was published with a previous rev of Store, and it has a primary key that makes it look newer than the actual latest version. Yes, I'd call that a bug :) Still, I needed to deal with it, and I just used the same line of code again:
((Store.Package allVersionsWithName: 'ImageConfig') detect: [:each | each version = '7.10'])
And that solved my problem. I'll do a screencast on this in the morning :)
Technorati Tags:
BottomFeeder, build script