I don't understand the full pattern, but I want to collect some observations here:
- Occasionally I encounter bogus versions in the trunk such as source.squeak.org/trunk/Tools-eem.1168.mcz, which apparently include definitions for only the changed items and whoses diff (source.squeak.org/trunk/Tools-eem.1168.diff) consequently seems to remove all remaining definitions from the previous version.
- I have an image (built on CI by squeak-app, only installed smalltalkCI into it) where a package (
KernelTests) is marked as dirty, pressing Save will show no changes, but pressing Changes will show over 900 changed items. Debugging this, MCWorkingCopy>>#changesRelativeToRepository: identifies an MCDiffyVersion as the closest ancestor of my working copy, whose snapshot only contains ~180 definitions in total. If I try to recompute this snapshot by reifying the base version of that diffy version, I recursively encounter further diffy versions that likewise lack most definitions of the package.
Not sure where the root cause sits, though, and if both observations are causally related to each other, and if yes in which direction.
I don't understand the full pattern, but I want to collect some observations here:
KernelTests) is marked as dirty, pressing Save will show no changes, but pressing Changes will show over 900 changed items. Debugging this,MCWorkingCopy>>#changesRelativeToRepository:identifies anMCDiffyVersionas the closest ancestor of my working copy, whose snapshot only contains ~180 definitions in total. If I try to recompute this snapshot by reifying the base version of that diffy version, I recursively encounter further diffy versions that likewise lack most definitions of the package.Not sure where the root cause sits, though, and if both observations are causally related to each other, and if yes in which direction.