from preamble:
"Change Set: ChangeSetRefactoring-gk Date: 16 December 2004 Author: Göran Krampe
NOTE: Not for inclusion in image - needs feedback and refinement etc.
This changeset contains a few refactorings, some Collection enhancements, minor fixes and adds three new actions in the changesorters for splitting changesets and mailing them to maintainers. It also messes around in PackageInfo so it should NOT be included 'as is' as an update."!
Hi all!
Bloody hell, I wrote a long description of this but it evidently went to bit heaven. Snarl. Ok, once more:
This changeset contains fixes, refactorings, additions to an external package etc. So IT IS NOT MEANT FOR INCLUSION. Having said that....
I developed it in a 3.8b-6371 image. When filed in you should get three new actions in your ChangeSorter, two for splitting and one for mailing to maintainers. A "split" is a new changeset that has changes for one PackageInfo package in it. It's name is <srcChangeSet>-><piName>.<developerInitials>. You work with it like this:
1. Hack, hack, hack in one changeset. 2. Use changesorter and do "split" either with copy or move. If you only copy the original changeset will stay untouched. You can split repeatedly and it will reuse existing "split" changesets. 3. When the feature is complete - choose mail to maintainers. It will ask to split if there are no splits around (using copy). The email will contain both the original cs and the splits. The recipients will be ALL maintainers and co-maintainers of ALL involved splits.
Have fun!
regards, Göran
PS. Does NOT handle class removals. I guess that is a HARD problem.
Caveat: I've just eyeballed this changeset.
Goran's posted all the Collection changes as CollectionPrintingEnh. I'm happy with that code, modulo the bug I found - see my test suite in BFAV post 26197 and the fix in 26186.
The ChangeSorter changes are of two kinds: simple cleanups (replacing deprecated message sends, etc.), and the bits needed to add the ChangeSet splitter stuff (#split*, mailMaintainers, #mailSplits:from:).
I looked at the PackageOrganizer and, quite frankly, I don't know enough about this stuff to review it.
One thing the ChangeSet is missing is a test suite!
In summary, everything looks great to me, except for the bits I can't review, namely: * in ChangeSorter: #mailSplitsFrom:, #split* * in PackageOrganizer: #changeSetForPackage:from:, #splitChangeSet:move:
squeak-dev@lists.squeakfoundation.org