I frequently get this error when trying to save a new version of a package with prerequisites from the Monticello UI.
For now, I'm saving all my packages to a single directory repository where a file with that name definitely exists, it's just that it's VersionInfo is different from the one in the MCdependencies of the package being saved, but I'm having trouble figuring out why.
Perhaps saving the prereq to a different repository caused the versionInfo's of the deps in the requiring package to become "out-of-sync" with the one in the first repository, although I would expect if the #modified flag were false (which it was) it would just use the same VersionInfo. But I'm completely speculating..
All I want to do is save my code painlessly without having to debug something. If that means creating additional versions of prereqs on the fly, wouldn't that be easier than presenting the user with a debugger?
On Apr 2, 2004, at 12:05 PM, Chris Muller wrote:
I frequently get this error when trying to save a new version of a package with prerequisites from the Monticello UI.
For now, I'm saving all my packages to a single directory repository where a file with that name definitely exists, it's just that it's VersionInfo is different from the one in the MCdependencies of the package being saved, but I'm having trouble figuring out why.
I'm not quite sure what you're describing. You have a Foo.73.mcz on disk which has a different VersionInfo from a Foo.73 VersionInfo in memory? Different how? Just different UUID, or different date, comment, etc?
And can you attach the full backtrace for the error?
Is this on 3.6 or 3.7a?
Avi
I'm not quite sure what you're describing. You have a Foo.73.mcz on disk which has a different VersionInfo from a Foo.73 VersionInfo in memory?
Exactly.
Different how? Just different UUID, or different date, comment, etc?
All fields are different, and I remember something else now. I was operating this exact image on a different computer and I may have saved versions to another repository on that computer. I no longer have access to that other repository so, in this image, the dependencies in memory are probably pointing to the versions with UUID's in the other repository. I don't have the files in the repository I'm trying to save to now, so when it tries to #resolve the dependencies, it determines they don't exist.
In this case, the problem actually occurred between dependencies that were more than two levels below the primary package that I was saving.
How should dependencies of MCVersions get refreshed in this case? I suspect their VersionInfo's in memory are the correct ones, but its going for ones in zip files.
One more thing, this *may* have something to do with the new method I added to Monticello to support getting or creating the mostRecentVersionInfo without intruding on the user. Can you take a look at MCWorkingCopy>>currentOrNewVersionWithName:message: in that latest one I sent you for the SARBuilder? Maybe I've created this problem for myself.
And can you attach the full backtrace for the error?
See below.
Is this on 3.6 or 3.7a?
3.7a 5816.
Thanks Avi, Chris
Stack trace:
2 April 2004 4:03:10 pm
VM: Win32 - a SmalltalkImage Image: Squeak3.7alpha [latest update: #5816]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Development\Chris\Development\Squeak Trusted Dir C:\Development\Chris\Development\Squeak\Administrator Untrusted Dir C:\My Squeak\Administrator
MCRepositoryGroup(Object)>>error: Receiver: a MCRepositoryGroup Arguments and temporary variables: aString: 'Could not find version ''Ma exception handling-cmm.6''' Receiver's instance variables: repositories: an OrderedCollection(a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\ide) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\MaxMillion) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\bpdzx4yqei5o3glqzooxyxnjn\5) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\e9fyic3fjdr5hrf9d3ehfcut9\2) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\2y2gkftl0nefj08591czgt2ph\1) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\Magma) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\base language) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\mc) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\package-cache) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\My projects\mc))...etc...
[] in MCRepositoryGroup>>versionWithInfo: {[self error: 'Could not find version ' , aVersionInfo name printString]} Arguments and temporary variables: aVersionInfo: a MCVersionInfo(Ma exception handling-cmm.6)
MCRepositoryGroup>>versionWithInfo:ifNone: Receiver: a MCRepositoryGroup Arguments and temporary variables: aVersionInfo: a MCVersionInfo(Ma exception handling-cmm.6) aBlock: [] in MCRepositoryGroup>>versionWithInfo: {[self error: 'Could not find version ' , aVersionInfo name printString]}...etc... ea: a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\mc)...etc... v: nil Receiver's instance variables: repositories: an OrderedCollection(a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\ide) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\MaxMillion) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\bpdzx4yqei5o3glqzooxyxnjn\5) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\e9fyic3fjdr5hrf9d3ehfcut9\2) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\2y2gkftl0nefj08591czgt2ph\1) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\Magma) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\base language) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\mc) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\package-cache) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\My projects\mc))...etc...
MCRepositoryGroup>>versionWithInfo: Receiver: a MCRepositoryGroup Arguments and temporary variables: aVersionInfo: a MCVersionInfo(Ma exception handling-cmm.6) Receiver's instance variables: repositories: an OrderedCollection(a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\ide) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\MaxMillion) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\bpdzx4yqei5o3glqzooxyxnjn\5) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\e9fyic3fjdr5hrf9d3ehfcut9\2) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\sm\cache\packages\2y2gkftl0nefj08591czgt2ph\1) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\Magma) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\base language) a MCDirectoryRepository(C:\Development\Chris\Development\Squeak\My projects\mc) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\package-cache) a MCDirectoryRepository(D:\Development\CHRIS\Development\Squeak\My projects\mc))...etc...
--- The full stack --- MCRepositoryGroup(Object)>>error: ...etc...
squeak-dev@lists.squeakfoundation.org