On Oct 1, 2012, at 11:19 AM, Mariano Martinez Peck wrote:
Hi. Together with Guille we found a problem and we were able to reproduce it. The thing is this... I have my FuelTest package with version MarcusDenker.286. Then I did a merge with the last version from Fuel repo (Name: FuelTests-MarianoMartinezPeck.289). Now, if you see the package in the MC browser, it looks like:
* FuelTests (MarcusDenker.286, MarianoMartinezPeck.289)
So now when I search for "changes" the #closestAncestorSnapshotIn: is wrong because it is NOT taking the last version. From what we could understand, the problem is that #closestAncestorVersionFor:ifNone: sends #breadthFirstAncestorsDo: and this last methods does not SORT the versions. So...since the .286 is first and .289 is last, it answers the wrong value. Just as a test, we did a "ancestors := ancestors reversed" in #breadthFirstAncestorsDo: and the "changes" work as expected.
So...what should we do? change the #breadthFirstAncestorsDo: so that it does not depend on the "sort", fix the Ëmerge" so that it sorts the versions? something else?
I have the impression that making sure that breadthFirstAncestors start from the latest makes sense. Stef