(name 'Monticello2-cwp.216' message 'MDHistorian now uses the platform to update the memo properties of each slice, rather than just for initializing it''s own properties, so it gets more current authoring data. The order of precedence is now: comment entered by user, slice-specific ordinal, platform properties, project properties.' id '3901ecfb-cf22-4122-8ea6-fe03a73c9be3' date '28 December 2007' time '10:59:58 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.215' message 'Removed MDMemoRequest, since Historians are now responsible for creating memos.' id '88710680-4388-4b7e-b7ce-bb571e3c5172' date '27 December 2007' time '10:33:11 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.214' message 'Projects now use a historian to obtain a memo when saving a slice. Historians are responsible for maintaining a set of default memo properties, tracking ordinals and obtaining comments from the user.' id 'b7535f9c-0594-40f3-84d4-d26accfba2bc' date '27 December 2007' time '10:27:56 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.213' message 'Tweak the class-side interface to MDMarshal so that #serialize:on: is useful again.' id 'a0df6a0f-1a93-4b83-9214-29699a89807c' date '23 December 2007' time '9:26:41 am' author 'cwp' ancestors ((name 'Monticello2-cwp.212' message 'Moved #testSynchronizeWith to MDRepositoryTests, and removed MDRepositorySynchronizationTests. This way, all repositories get tested for correct synchronization.' id 'fb47970b-4a58-4773-99e2-f615ab3eec3e' date '23 December 2007' time '8:17:07 am' author 'cwp' ancestors ((name 'Monticello2-cwp.211' message 'Repositories can now synchronize with each other. This requires two new basic operations that repositories must implement: #allHashstamps and #includes:' id 'b2bd46e9-fe9d-4961-971f-23453f2e8a34' date '23 December 2007' time '12:41:15 am' author 'cwp' ancestors ((name 'Monticello2-cwp.210' message 'Including a snapshot now uses #getAll:.' id '9ada622d-0426-4f86-844b-04c5fc053c0e' date '22 December 2007' time '11:33 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.209' message 'Optimization of loading and saving a slice. Loading now only fetches the required versions from the repository, and does it in bulk via #getAll:. Saving now saves versions in bulk with #putAll:. Default implementations of #getAll: and #putAll: are provided, but repsoitory implementations may override them for performance.' id '4ba9717d-10f3-48b5-ba6b-829205cd05c1' date '22 December 2007' time '10:32:44 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.208' message 'Extracted a convenience method in MDRepositoryTest' id 'b5269697-aebf-4f55-bbaa-15b05452ff91' date '22 December 2007' time '4:44:23 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.207' message 'Moved FileRepository to a different package, since it''s not likely to be portable.' id '3f190d06-b23c-43c5-b9fb-72ab213a7b83' date '18 December 2007' time '8:54:29 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.206' message 'Tweaks to MDTimestampPrinter: fixed mispelled error message, implemented #abbreviatedMonthName:' id 'a29bddae-efa5-45a7-b8fb-705e4cf97446' date '17 December 2007' time '12:29:59 am' author 'cwp' ancestors ((name 'Monticello2-cwp.205' message 'Added some convenience methods for testing. ' id 'd3b718d1-4ba4-4694-be52-b89d65ab1a80' date '16 December 2007' time '10:55:35 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.204' message 'MDMerge now displays without angle brackets.' id '47d02227-381e-4db6-a814-e72944de9ae5' date '16 December 2007' time '8:48:08 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.203' message 'MDProject now holds a registry of named projects in a class variable.' id '86c48c15-8636-41af-b807-e80a873ba374' date '13 December 2007' time '9:28:13 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.202' message 'Added a test for applying the local version of a merge.' id '57d84e3b-dfdf-40d1-b022-3ab518cbaa23' date '12 December 2007' time '10:48:46 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.201' message 'MDProject now has an #include: action.

MDSlice>>include: was removed, since it''s obsolete.

MDMergeRequest>>defaultAction was removed, because it referred to MDMergeTool, which is obsolete.' id 'ce655980-b2a2-4db0-839b-46ccce04e831' date '9 December 2007' time '1:25:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.200' message 'Projects now have names.' id 'f27fb686-a4cd-4529-883e-8f549ac2cb13' date '9 December 2007' time '12:11:35 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.199' message 'Fix some formatting.' id 'f211e15d-db2e-4ce6-be43-9d98a04265cd' date '5 December 2007' time '12:11:52 am' author 'cwp' ancestors ((name 'Monticello2-cwp.198' message 'Removed obsolete method.' id '15c81c79-101f-46e2-9c63-dd4cc015e423' date '3 December 2007' time '9:04:45 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.197' message 'Added a test for comments included in explicit slices.' id 'ef184743-2b1d-4657-80ce-9e36ce848519' date '3 December 2007' time '6:00:46 am' author 'cwp' ancestors ((name 'Monticello2-cwp.196' message 'Removed MDSlice>>load: since MDProject now maintains a default workspace.' id 'a1557a50-d253-4f0a-aa8a-8f8938221b23' date '3 December 2007' time '5:22:02 am' author 'cwp' ancestors ((name 'Monticello2-cwp.195' message 'Remove methods made obsolete by MDProject.' id '4228b08b-8a35-47fb-8151-5647fbe80419' date '3 December 2007' time '5:16 am' author 'cwp' ancestors ((name 'Monticello2-cwp.194' message 'Added utility methods for adding and removing repositories on a project.' id 'c0754884-2f14-4fe9-914d-97a5f942a3aa' date '20 November 2007' time '12:39:53 am' author 'cwp' ancestors ((name 'Monticello2-cwp.193' message 'Added a utility method to remove a slice from a project.' id '810ea0cf-7529-47fb-ba89-642aafee3844' date '19 November 2007' time '11:41:08 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.192' message 'Added a #load: action to MDProject.' id '21d647db-2ec3-4210-9ccc-7dc8c5de1ceb' date '18 November 2007' time '12:24:57 am' author 'cwp' ancestors ((name 'Monticello2-cwp.191' message 'Now uses #initials, rather than #author to store Squeak author initials.' id '354c018e-c777-4436-84b6-ead46525091d' date '17 November 2007' time '1:30:48 am' author 'cwp' ancestors ((name 'Monticello2-cwp.190' message 'Projects now keep track of ordinals for each slice, and memos are now sortable by ordinal, then author.' id '104cbc62-85d0-41d9-92f0-b4f4a0760765' date '16 November 2007' time '1:41:42 am' author 'cwp' ancestors ((name 'Monticello2-cwp.189' message 'Moved Squeak-specific code for changing the cursor to MDPlatform.' id 'ecee2d14-7eb7-4b23-9f4f-f3d10e3eab11' date '16 November 2007' time '12:59 am' author 'cwp' ancestors ((name 'Monticello2-cwp.188' message 'MDProject>>save: now answers the memo that was created, and added a couple accessor methods.' id '31723a7f-cf5e-46e7-859e-a75cbd107ca4' date '12 November 2007' time '11:43:32 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.187' message 'Created MDRegistry as a generalized replacement for MDSliceOrganizer. Also some initial work on MDProject.' id 'c8ca5cdd-42a9-43ec-937a-ea9ecbbdf3b2' date '10 November 2007' time '10:22:38 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.186' message 'Harvested a few more fixes from Damien''s work.' id '37eae632-259b-4971-9252-fe23b95869f2' date '7 November 2007' time '9:56:02 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.185' message 'Harvested test refactorings from Monticello2-dc.184.' id 'f916c3c3-2a47-48c6-926a-fb8bb1e59f66' date '7 November 2007' time '1:14:14 am' author 'cwp' ancestors ((name 'Monticello2-cwp.184' message 'Harvested some changes from Monticello2-dc.189.' id 'af4b601b-1a96-4080-a5c0-44099f1db6f8' date '7 November 2007' time '12:04:46 am' author 'cwp' ancestors ((name 'Monticello2-cwp.183' message 'Harvests changes from Monticello2-dc.187.' id 'add14c16-7b17-4508-ae71-1d732e77f506' date '6 November 2007' time '11:58:18 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.182' message 'Harvested some changes from Monticello2-dc.185.' id 'ec4808f0-6784-421a-b6f3-3c3276cf2f8d' date '6 November 2007' time '11:49:40 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.181' message 'Harvested some changes from Monticello2-dc.183' id '1a963b08-417b-4f97-a41f-0de48f343056' date '6 November 2007' time '11:06:26 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.180' message 'Harvested changes from Monticello2-dc.182.' id '33be0775-a2d8-4497-abfc-db37275724e3' date '6 November 2007' time '10:59:25 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.179' message 'Oops, better not to use the platform to initialize the default working copy. Instead, ImageProxy subclasses can install themselves as the proxy for the default working copy.' id '506b4f04-4fa1-4e8d-aa09-1c5e2a729a36' date '6 November 2007' time '10:33:02 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.178' message 'Harvest changes from Monticello2-dc.180:

Moved squeak-specific constructor to MC2-Squeak, and uses MDPlatform to get the default image proxy.' id '1618775d-9563-4298-ae3c-61fa268aaa48' date '6 November 2007' time '1:14:16 am' author 'cwp' ancestors ((name 'Monticello2-dc.177' message '- MDMarshal does not need a class-side #initialize. This will prevent dependency problems.
- Continue cleaning source code.' id '0baf3f0f-1a53-11dc-8889-001124e3ab0e' date '14 June 2007' time '10:41:29 am' author 'dc' ancestors ((name 'Monticello2-dc.176' message '- Cleans slice and version classes.' id '543dd83e-1a41-11dc-8889-001124e3ab0e' date '14 June 2007' time '8:34:40 am' author 'dc' ancestors ((name 'Monticello2-dc.175' message '- A store is a Composite of repositories.' id '4a381402-1a38-11dc-8889-001124e3ab0e' date '14 June 2007' time '7:29:57 am' author 'dc' ancestors ((name 'Monticello2-dc.174' message '- Cleans the repositories.' id '2dbceda2-1a35-11dc-8889-001124e3ab0e' date '14 June 2007' time '7:07:41 am' author 'dc' ancestors ((name 'Monticello2-dc.173' message '- Refactored the variant hierarchy.' id 'f5c4826e-1a2f-11dc-8889-001124e3ab0e' date '14 June 2007' time '6:30:20 am' author 'dc' ancestors ((name 'Monticello2-dc.172' message '- MDImageProxy now explicitly declares subclassResponsibilities.' id '31b09290-1a2d-11dc-8889-001124e3ab0e' date '14 June 2007' time '6:10:32 am' author 'dc' ancestors ((name 'Monticello2-dc.171' message '- Refactors the element hierachy:
  - Adds two abstract classes MDClassAwareElement and MDClassAwareNamedElement.
  - This removes a lot of duplicated code.' id '71d18e1b-1a2b-11dc-8889-001124e3ab0e' date '14 June 2007' time '5:58 am' author 'dc' ancestors ((name 'Monticello2-dc.170' message '- Fork of Monticello2-cwp.169' id 'aef103d1-ecf6-11db-a56f-001124389480' date '17 April 2007' time '5:16:57 pm' author 'dc' ancestors ((name 'Monticello2-cwp.169' message 'Created MDTestBuilder for building versions and such for testing purposes.' id '980eaafd-83c9-43ca-a1ba-cefd734cd121' date '25 January 2007' time '11:44:42 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.168' message 'Removed obsolete methods from MDSliceOrganizer.' id '1a717027-ff13-4af7-9a1e-91503727af1b' date '21 January 2007' time '8:29:23 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.167' message 'Removed obsolete instance variable and methods from MDSlice.' id '46b0d06f-e61a-4fbc-ad1c-e9658ddca24e' date '21 January 2007' time '8:21:32 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.166' message 'Big reworking of how metadata is handled. LogElement and MetadataElement are gone, and SliceElement has become a concrete class. Slices are now identified by a hashstamp based on their initial state, and their definitions are versioned via SliceElement. 

Memo replaces both SnapshotSummary and the meta data versions based on LogElement and MetadataElement. ' id 'bc96c9e9-eb34-48d6-b002-878a8c224445' date '20 January 2007' time '12:06:18 am' author 'cwp' ancestors ((name 'Monticello2-cwp.165' message 'Renamed MDSnapshotInfo to MDMemo.

Added MDMemoRequest, for requesting snapshot metadata from the dynamic scope. 

Slices now raise a memo request during #saveFrom:to:.' id 'e18a9ec1-8538-484d-8a9a-7e3f80279b4f' date '17 January 2007' time '12:03:12 am' author 'cwp' ancestors ((name 'Monticello2-cwp.164' message 'Created MDSnapshotInfo, but it''s not used anywhere yet.' id '510932a9-00d4-46fc-a0d2-e2f019d1a22f' date '16 January 2007' time '6:40:47 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.163' message 'Experimental work on refactoring slices. Slices now have unique ids and property dictionaries. These properties should be versioned just like code.' id '98013d81-d44d-4cde-a9be-df1e2f1f06dc' date '2 January 2007' time '12:24:21 am' author 'cwp' ancestors ((name 'Monticello2-cwp.162' message 'Oops, removed the last couple of implementations of #snapshotHashstampsDo:' id '7ef2113f-fc0c-4f58-9b18-78b5c96dcd43' date '1 January 2007' time '1:45:13 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.161' message 'Removed #snapshotHashstampsDo:' id '1e8afc97-38d6-4d16-a985-38fb9c5b72b1' date '1 January 2007' time '1:43:39 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.160' message 'Created MDSnapshotSummary to bundle up metadata for display to the the users. Repositories now implement #summaries, which answers a list of summaries. MDSummary doesn''t include the complete snapshot object, since this is actually quite a bit of data.' id 'bc3ebf54-7dba-4716-8a2a-8162a6538f2a' date '1 January 2007' time '1:27:01 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.159' message 'Added missing #description method to MDMemoryRepository.' id '05012e09-bffe-4b9b-874f-3975c043e556' date '1 January 2007' time '1:38:47 am' author 'cwp' ancestors ((name 'Monticello2-cwp.158' message 'Added #forDefinition: constructor for slices.

Added #ordinalFor: to MDSliceOrganizer as a convenience method.' id 'e023d265-863f-4b44-bb38-a010d96c6816' date '31 December 2006' time '9:49:11 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.157' message 'Moved MCCommentRequest to the squeak-specific package, since it''s bridge between adaptors and the UI.' id 'c312761f-d7b7-4b80-b0db-41ac8185008e' date '31 December 2006' time '4:47:28 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.156' message 'Renamed MDLogMessageRequest to MDCommentRequest, for consistency.' id '7c476499-3a09-4a8a-b5f8-c45df7f1f587' date '31 December 2006' time '4:34:02 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.155' message 'Added MDSliceOrganizer as a central place to maintain metadata about slices.' id 'c52b5ac2-1dad-4416-b42c-bbef53120743' date '31 December 2006' time '4:00:21 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.154' message 'Added a default close method for repositories.' id '3555cc7b-0a57-40ff-9439-ae8ec34edcaf' date '29 December 2006' time '6:04:48 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.153' message 'Bugfix: Made file repositories have a more sensible hash/equals scheme, so that MDStore can manage them correctly.

MDSliceElement is now defined in terms of a property dictionary rather than just name and type. This will allow for correct recreation of slices when loading a snapshot.' id '47ba94db-a540-4589-995e-d2f38ded39e3' date '29 December 2006' time '5:57:51 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.152' message 'Added MDStore>>ensureRepository: for use by repository browsers.' id '2b2fffdf-9e78-4896-8713-e99950d909ca' date '23 December 2006' time '9:04:25 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.151' message 'Backported to Squeak 3.7.' id '62464c04-56ad-4aee-ab5b-fa6e35cb5757' date '22 December 2006' time '10:56:50 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.150' message 'Tweak assertion so tests pass.' id 'f5d97886-5015-411f-8edf-97efff461649' date '23 October 2006' time '10:31:19 am' author 'cwp' ancestors ((name 'Monticello2-cwp.149' message 'Bugfix: MDStore would raise an exception in #get: if none of its repositories contained the requested object.' id '618faf71-a645-442a-8629-d2942c6fb762' date '23 May 2006' time '8:18:54 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.148' message 'Moved an extension method to MC2-Extras.' id '4572605a-da60-11da-81ba-000a95702430' date '3 May 2006' time '12:49:57 am' author 'cwp' ancestors ((name 'Monticello2-avi.147' message 'merge' id '89d31f5b-ba24-11da-8867-000a95db7844' date '22 March 2006' time '8:21:45 pm' author 'avi' ancestors ((name 'Monticello2-avi.146' message 'Use the standard #reopen method on FileStream' id '6b932f13-ba22-11da-8867-000a95db7844' date '22 March 2006' time '8:06:35 pm' author 'avi' ancestors ((name 'Monticello2-avi.145' message 'Ignore merges of identical versions rather than treating them as conflicts.' id 'ddf3a4b6-b8b3-11da-9b40-000a95db7844' date '21 March 2006' time '12:22:42 am' author 'avi' ancestors ((name 'Monticello2-avi.144' message '- some changes to support 3.7
- move PG and VW stuff to separate package' id 'e0086560-b7f1-11da-a09b-000a95db7844' date '20 March 2006' time '1:14:03 am' author 'avi' ancestors ((name 'Monticello2-cwp.143' message 'Fixed SliceTest to be a little more accurate in specifying the desired behavior.' id '2b6287be-ec9c-44ce-8b97-2678b629a8af' date '3 March 2006' time '2:51:23 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.142' message 'Added transaction support to working copies and image proxies.' id '545bcb1a-026d-4bc5-b8c7-82b25fe74522' date '2 March 2006' time '8:21:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.141' message 'Merged in cwp.139' id 'aa9d224f-6058-4104-a21d-8fd74eca7348' date '2 March 2006' time '4:17:55 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.140' message 'Updated clients of the working copy to wrap up multiple wc operations inside a transaction. This will enable atomic loading at the image proxy level.

To facilitate this change, refactored MDMerge instances not to hold references to a working copy, and now only represent the resolution of a merge between two versions of the an element.' id '678c19a7-24b5-4103-a4e1-030453313824' date '2 March 2006' time '4:08:01 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.138' message 'Moved over some extension methods.' id '40d1ef6e-e39a-6040-811b-640d97c1e962' date '22 October 2005' time '4:55:30 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.137' message 'Moved all Squeak-specific classes to their own package - MC2-Squeak.' id '519177f7-3d56-614d-95d3-a71c4c5c7798' date '22 October 2005' time '8:31:55 am' author 'cwp' ancestors ((name 'Monticello2-cwp.135' message 'Added MDWorkingCopy>>transaction: as a first step towards atomic loading.' id 'e1d525c3-9f6b-4d22-a65b-274077d35097' date '17 October 2005' time '8:38:27 am' author 'cwp' ancestors ((name 'Monticello2-cwp.134' message 'Disambiguated the term "snapshot" by renaming the supertype of ElementDefinition and ElementRemoval to Variant. Also added a mostly-empty class called MDVariant to clarify this relationship.' id 'ffa527a0-ee07-d44f-9520-d986a1d39137' date '16 October 2005' time '2:56:15 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.133' message 'Added a ''save to file'' menu item to SlicePanel.' id '06be6682-f816-9f41-9142-0214384ef6be' date '16 October 2005' time '12:40:36 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.132' message 'Bugfix: MDFileRepository class>>saveSlice:as: wasn''t closing the file properly.' id '2a3114ef-7434-4054-897a-cb8672b09e07' date '13 October 2005' time '11:05:50 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.131' message 'Added a convenience method for saving a single snapshot into a new file repository, similar to MC1 version files.

' id '30628057-f997-4eb6-b43e-5a5d0081adaf' date '13 October 2005' time '8:22:17 am' author 'cwp' ancestors ((name 'Monticello2-cwp.130' message 'Alphabetize class variable names, for compatibility in Squeak 3.9' id '66a0859e-24c5-11da-a3f7-000d937adc5a' date '13 September 2005' time '10:15:20 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.129' message 'Update MDHashstampTest>>testPrinting.' id 'ef00fc39-2456-11da-9495-000d937adc5a' date '13 September 2005' time '9:04:35 am' author 'cwp' ancestors ((name 'Monticello2-cwp.128' message 'Added tests and bugfixes for the magnitude protocol on Timestamp and Hashstamp.' id '468b0f23-231a-11da-81c3-000d937adc5a' date '11 September 2005' time '7:17:52 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.127' message 'Reverse the internal byte order of Timestamps so that they sort better when serialized.' id '3b893b50-2277-11da-81c3-000d937adc5a' date '10 September 2005' time '11:50:45 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.126' message 'Rearranged the character map used to serialize hashstamps to strings so that alphabetical order matches chronological order.' id '11a9d40d-205e-11da-bc15-000d937adc5a' date '8 September 2005' time '7:45:35 am' author 'cwp' ancestors ((name 'Monticello2-cwp.125' message 'Fix some timestamps that were broken by an old bug in MDTimestamp.' id '961054bc-1e8a-11da-8b1e-000d937adc5a' date '5 September 2005' time '11:59:13 pm' author 'cwp' ancestors ((name 'Monticello2-avi.124' message 'In SliceStatus, when getting a class event, only do the extended changes checks for modification events.' id 'df04a0c4-1e82-11da-a0d6-000a95db7844' date '5 September 2005' time '8:03:59 pm' author 'avi' ancestors ((name 'Monticello2-cwp.123' message 'Bugfix: changing a class comment no longer causes a walk back when OBSlicePanel receives the SCN event.' id '0d0fb86d-1e77-11da-b853-000d937adc5a' date '5 September 2005' time '9:39:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.122' message 'Added a "save" menu item to MDSlicePanel.' id '54bda47e-1cff-11da-97ff-000d937adc5a' date '4 September 2005' time '12:49:52 am' author 'cwp' ancestors ((name 'Monticello2-cwp.121' message 'Initial impmentation of SlicePanel - status panel for slices.' id 'cb777382-18eb-11da-a750-000d937adc5a' date '29 August 2005' time '8:19:57 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.120' message 'Mocked out the database connection so that the postgres respository tests can run without and external dependency.' id '1323a178-12c1-11da-a5bb-000d937adc5a' date '21 August 2005' time '11:59:01 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.119' message 'Bugfix: MDTimestamp was handling Feb 29th incorrectly.

' id 'dcd0bdfc-120e-11da-859f-000d937adc5a' date '21 August 2005' time '2:43:20 am' author 'cwp' ancestors ((name 'Monticello2-cwp.118' message 'Bugfix: MDTimestamp was reporting the wrong year for dates in January.' id '38fbe17c-11e6-11da-859f-000d937adc5a' date '20 August 2005' time '9:52:25 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.117' message 'Bugfix: MDSqueakMethodAdaptor was installing methods with timestamps in 12-hour format, rather than 24-hour format.' id 'df8b8c36-11d2-11da-859f-000d937adc5a' date '20 August 2005' time '7:33:55 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.116' message 'Made Hashstamp a subclass of Magnitude so collections of hashstamps can be sorted.

Added a nil check in MDSqueakMethodAdaptor>>remove, so that removing a method from a class that doesn''t exist always succeeds.' id '38b76f04-11c5-11da-859f-000d937adc5a' date '20 August 2005' time '5:56:11 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.115' message 'Optimization: HashedObjects now cache their hashstamps, rather than recompute them everytime they''re needed.' id '20a47cd0-0c7e-11da-83d4-000d937adc5a' date '14 August 2005' time '12:44:41 am' author 'cwp' ancestors ((name 'Monticello2-cwp.113' message 'Merged Postgres repository with changes for Squeak 3.8' id '257775ec-0782-11da-83f2-000d937adc5a' date '7 August 2005' time '4:30:51 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.112' message 'Updated so the tests pass in the final release of Squeak 3.8, update 6665' id 'e280c0be-06db-11da-9362-000d937adc5a' date '6 August 2005' time '8:40:42 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.110' message 'Bugfix: the MergeTool now behaves properly when all the elements have been merged.' id 'f7c960b0-44db-174c-8728-634753da5823' date '19 June 2005' time '8:45:26 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.109' message 'Simple optimization of MDPackageInfoTest' id '2e7db4b2-b490-314a-b273-cad42620f860' date '19 June 2005' time '4:21:09 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.108' message 'Added a test for the extension methods being included in VwExportInfo.' id '098748a0-92d5-c340-b256-7bba3d98cadf' date '19 June 2005' time '4:17:51 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.107' message 'More VW-related tweaks:

Moved methods for getting the current timestamp to MDPlatform.

Fixed a bug in VwExportInfo that prevented extensions from being filed out.' id '0b00d520-e07c-11d9-9557-000d937adc5a' date '19 June 2005' time '12:38:54 am' author 'cwp' ancestors ((name 'Monticello2-cwp.106' message 'More changes to get MDTimestamp working in VW.' id 'c2dcfa30-e056-11d9-9557-000d937adc5a' date '18 June 2005' time '8:12:02 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.105' message 'Removed MDTimestampTest>>testAsSqueakTimestamp, since that method is obsolete.' id '7a07c5cf-e054-11d9-9557-000d937adc5a' date '18 June 2005' time '7:55:41 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.104' message 'Tweaks to MDTimestamp to make it work in VW.' id '1616761e-c2ee-fb44-adfe-7911e44704fb' date '18 June 2005' time '7:10:24 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.103' message 'Added ''merge resolved'' menu item to the MDMergeTool.' id 'db6a1d30-35ea-5c4c-9041-d548ff58f8ce' date '17 June 2005' time '10:53:06 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.102' message 'Made the merge tool discard edits in its text panes.' id 'd6063650-dd98-11d9-aad8-000d937adc5a' date '15 June 2005' time '8:27:27 am' author 'cwp' ancestors ((name 'Monticello2-cwp.101' message 'MDMergeTool now has menu items for choosing resolutions.' id '95a8ff76-d8e7-11d9-aa4e-000d937adc5a' date '9 June 2005' time '9:08:34 am' author 'cwp' ancestors ((name 'Monticello2-cwp.100' message 'In the merge tool conflicts are now displayed in bold and sorted to the top of the list.' id 'ddf15496-d42c-11d9-a646-000d937adc5a' date '3 June 2005' time '8:41:55 am' author 'cwp' ancestors ((name 'Monticello2-cwp.99' message 'MDMergeTool now displays conflict text correctly.' id '5908082c-d186-11d9-9223-000d937adc5a' date '30 May 2005' time '11:44:53 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.98' message 'MDMergeTool updates its text panes properly when the selected element changes.' id '552a59f2-d182-11d9-9223-000d937adc5a' date '30 May 2005' time '11:16:08 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.97' message 'MDMergeTool now updates its list selection properly.' id '985d8014-cde7-11d9-b035-000d937adc5a' date '26 May 2005' time '9:10:56 am' author 'cwp' ancestors ((name 'Monticello2-cwp.96' message 'Some more callbacks implemented for MDMergeTool.' id '226a12ab-cc4e-11d9-9ebb-000d937adc5a' date '24 May 2005' time '8:19:54 am' author 'cwp' ancestors ((name 'Monticello2-cwp.95' message 'Preliminary work on MDMergeTool.' id '1cbee3f5-a912-4765-9402-5d9b332d60f0' date '25 April 2005' time '4:49:06 am' author 'cwp' ancestors ((name 'Monticello2-avi.94' message 'FileRepo records the snapshotHashstamps as it scans the data, rather than brute force searching for them on request.' id 'd74ab508-b064-11d9-98c0-000a95db7844' date '19 April 2005' time '1:51:53 am' author 'avi' ancestors ((name 'Monticello2-avi.93' message 'FileRepo will rescan the file on cache misses.' id 'ac268b56-b063-11d9-98c0-000a95db7844' date '19 April 2005' time '1:43:31 am' author 'avi' ancestors ((name 'Monticello2-cwp.92' message 'Removed MDIndexFile as it''s no longer relevant.' id 'b4ccc7de-bf0f-48d2-b125-6812982cd5dc' date '18 April 2005' time '6:03:44 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.91' message 'Refactoring: hashstamps are now internally stored as a sequence of 24 bytes, rather than two instance variables. We rarely access the digest or timestamp individually, and when we do it''s easy to copy the bytes into a separate object.' id '2ed2fcf8-d74a-4fda-8d11-79c728d8006c' date '18 April 2005' time '1:56:38 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.90' message 'Removed MDDirectoryRepository as it''s too slow to be useful.' id '821c38b8-8aaa-4f49-b6dc-bec975aceef0' date '18 April 2005' time '12:36:34 pm' author 'cwp' ancestors ((name 'Monticello2-avi.89' message 'Switch to #snapshotHashstampsDo: from the more generic #hashstampsOfClass:do:' id '10d4eed6-aed7-11d9-b7aa-000a95db7844' date '17 April 2005' time '2:24:30 am' author 'avi' ancestors ((name 'Monticello2-avi.88' message 'Change the FileRepository to use a simple in-memory index.' id '1c4f3f6a-aed5-11d9-b7aa-000a95db7844' date '17 April 2005' time '2:10:30 am' author 'avi' ancestors ((name 'Monticello2-cwp.87' message 'Portability tweak for MDTimestamp.' id '04152df9-4cc7-47ee-b275-9d54f3d249a4' date '16 April 2005' time '5:17:34 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.86' message 'Made MDTimestamp and tests more portable.' id 'e526c90a-0673-44cc-b06b-5d171294e2db' date '16 April 2005' time '4:54:54 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.85' message 'Merged in Avi''s index-growing work.' id '7e6b851f-4b51-4492-b27b-10ca139221aa' date '10 April 2005' time '6:25:47 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.84' message 'Refactoring: pulled MDKeyedStream out of MDFileRepository, for use in an interchange format.' id 'becd6422-2a63-47ae-b594-1463ba39f49c' date '10 April 2005' time '6:23:50 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.83' message 'Flip the serialization of hashstamps. Now timestamps go at the beginning of the bytestream, so serialized hashstamps will sort into chronological order.' id '1c6df8a1-d976-43a0-8cfd-1167a75dd43f' date '10 April 2005' time '1:09:28 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.82' message 'Bugfix: MDSnapshot had inconsistent #= comparisons. The implementations inherited from MDHashedObject relied on computing a hashstamps and comparing them. But the actual hashstamp produced depends on the order in which the #meta and #contents instance variables were traversed, and since they are Sets, this was unpredictable. Thus it was possible for two equal snaphots to answer false to #=. The new implementation compares the sets directly rather than comparing hashes.' id '841e1619-1d21-48b1-a0ad-579b2ab243d2' date '10 April 2005' time '12:54:27 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.81' message 'Now uses MDTimestamp everywhere.' id '3cc3441d-9229-4b63-821a-21c5a3fffeee' date '9 April 2005' time '5:33:47 am' author 'cwp' ancestors ((name 'Monticello2-cwp.80' message 'Factored timestamp printing into a separate class.' id 'aa9ee07a-345b-40b1-afde-c3d856c2b449' date '9 April 2005' time '4:39:57 am' author 'cwp' ancestors ((name 'Monticello2-cwp.79' message 'Added a higher-performance timestamp implementation. It''s not yet used for now.' id '9c46cb41-dc61-487d-9846-61941ab423a5' date '9 April 2005' time '1:47:04 am' author 'cwp' ancestors ((name 'Monticello2-cwp.78' message 'Minor changes to MDPropertyDictionary.

Nils are now handled symetrically: they are ignored when added as a property, and returned when a non-existent property is requested.

Now with tests.' id '536ee954-08c8-47c6-96fd-3d2711b7c92d' date '3 April 2005' time '8:39:31 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.77' message 'Minor changes to make repository conversion easier.' id '17bdee89-91b6-4b5e-961d-f3d4c408fe60' date '3 April 2005' time '1:02:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.76' message 'Refactoring.

MDSnapshot now stores its hashstamps in two separate collections: regular elements in #contents and metaelements in #meta.' id 'b2116715-f884-4a46-a2d2-df9f61b5743f' date '27 March 2005' time '10:41:50 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.75' message 'Cleaned up version construction in the tests a bit.' id 'e3d4de7b-571f-4b7a-b0ef-efebb891ec01' date '25 March 2005' time '11:01:59 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.74' message 'Removed MDSnapshotMerge and renamed MDVersionMerge to MDMerge. Now MDMergeRequests just carry a collection of MDMerges.' id 'c18ab86f-05fc-4d28-b713-040fa512cbc0' date '25 March 2005' time '10:28:30 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.73' message 'Cleanup of the hashstamp creation protocol.' id 'c89e1e9e-3890-4161-8a8a-bbf353e4245c' date '25 March 2005' time '8:48:12 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.72' message 'HashedObjects now store their timestamps instead of full hashstamps, and calculate the full hashstamps on the fly.' id '04737926-c956-45c0-8823-52469ba24a7f' date '23 March 2005' time '11:49:46 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.71' message 'Added auto-merging for LogElements and MetadataElements.' id 'ad87c323-dd56-49b3-829f-81de1e1bdb60' date '23 March 2005' time '10:32:11 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.70' message 'Added a MetadataElement for tracking branches and version numbers.' id '7daf0041-c556-4b75-9306-833db2606be0' date '23 March 2005' time '12:21:45 am' author 'cwp' ancestors ((name 'Monticello2-cwp.69' message 'Now the exported code not only files into VW, but the class initialization methods work.

Also, customized the VW export a bit so that it creates a more sensible package organization in VW.' id '721baaff-89b3-4efa-8b51-f940cecd0218' date '20 March 2005' time '1:39:17 am' author 'cwp' ancestors ((name 'Monticello2-cwp.68' message 'Fix bugs in VW export.' id 'b7eba4da-f566-4161-a5ec-fb52cfac4eda' date '19 March 2005' time '10:32:32 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.67' message 'Added tests for the PackageInfo subclasses.' id 'ec89f709-b7ed-4d8c-8187-49177376a4e5' date '19 March 2005' time '10:21:35 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.66' message 'Added support for exporting to VW5 format. 

The resulting file can be loaded into VW 7.3, but none of the tests pass.' id 'f35bcf76-4bc6-4144-ab4c-1a81450e8525' date '19 March 2005' time '10:13:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.65' message 'Added preliminary implementation of MDSnapshotMerge and MDVersionMerge.' id 'e41ff6a4-46b3-4420-8f4c-a2d7027544e9' date '17 March 2005' time '11:47:47 pm' author 'cwp' ancestors ((name 'Monticello2-avi.64' message 'Start an automerge mechanism.' id '9ca61802-960f-11d9-b68a-000a95db7844' date '16 March 2005' time '12:36:17 pm' author 'avi' ancestors ((name 'Monticello2-cwp.63' message 'Added MDLogElement, for recording commit specific information. Doesn''t implement auto-merging yet, so merges will cause spurious conflicts.' id '563f682e-26f7-444c-bf76-96313fafe048' date '16 March 2005' time '1:31:29 am' author 'cwp' ancestors ((name 'Monticello2-cwp.62' message 'Added MDSlice>>asExplicitSlice for conversion.' id '1975935b-a430-4557-badc-3c1ca9b59c33' date '14 March 2005' time '10:29:33 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.61' message 'Fix test failure caused in the move from #hash to #fullHash on Hashstamp. ' id 'f8aee65b-5df5-44f3-879a-78f0bdb19ec9' date '14 March 2005' time '10:16:39 pm' author 'cwp' ancestors ((name 'Monticello2-avi.60' message 'FileRepository now uses ByteIndex to go much faster.' id '0f292d9c-94fc-11d9-9c57-000a95db7844' date '15 March 2005' time '3:43:49 am' author 'avi' ancestors ((name 'Monticello2-avi.59' message 'Add #localReference to PropertyDictionary as an optimization: this can hold onto an image-level artifact like a CompiledMethod and use that to speed up #isUpToDate: checks.

Also added #fullHash to MDHashstamp so that #hash can be given a more Set-friendly implementation (it seems to be useful to have this return a SmallInteger).' id 'f169288d-94b1-11d9-9c27-000a95db7844' date '14 March 2005' time '6:53:16 pm' author 'avi' ancestors ((name 'Monticello2-avi.58' message 'Add a simple FileRepository (no indexing, no locking).' id 'ba675b7c-947f-11d9-b93b-000a95db7844' date '14 March 2005' time '12:53:49 pm' author 'avi' ancestors ((name 'Monticello2-avi.57' message 'merge' id '69d72b84-93d6-11d9-9942-000a95db7844' date '13 March 2005' time '4:41:49 pm' author 'avi' ancestors ((name 'Monticello2-avi.54' message 'Implement MDByteIndex, which manages a fixed-size dictionary backed by a byte stream.  To be much use, this needs to be wrapped in an IndexFile which knows the file name and grows/copies the ByteIndex as needed (when tally/maxIndex exceeds a certain ratio, like 0.5).' id 'a36dbc86-936d-11d9-9942-000a95db7844' date '13 March 2005' time '4:11:48 am' author 'avi' ancestors ((name 'Monticello2-avi.53' message 'Speed up Marshal some, by adding a couple of class vars: Epoch and InverseClassMap' id '230052b8-92a6-11d9-ad65-000a95db7844' date '12 March 2005' time '4:23:43 am' author 'avi' ancestors ((name 'Monticello2-avi.52' message ' - Add the #hashstampsOfClass:do: protocol to repositories.  This iterates through all hashstamps of objects stored in the repository that match the given class.
 - To allow this to be implemented in DirectoryRepository:
    - extract a HashedObject superclass from Version and Snapshot.  This holds the hashstamp, and also implements #extension on the class side to return a short unique string for each class.  This is used to identify class when building filenames.
   - implement Hashstamp class>>fromString:, so that hashes can be deserialized from filenames' id '7178d7b4-929e-11d9-ad65-000a95db7844' date '12 March 2005' time '3:28:39 am' author 'avi' ancestors ((name 'Monticello2-cwp.51' message 'Merged in avi''s implementation of DirectoryRepository.' id '40e6254e-dbaf-4cc0-9191-dfcdef11c8f7' date '11 March 2005' time '8:11:18 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.50' message 'Fixed a timing bug that occasionally caused the slice tests to fail. Also cleaned up the protocol for creating snapshots.' id '004b09b3-2f3b-49be-8f12-4eccb616617a' date '10 March 2005' time '11:44:26 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.49' message 'Reworked the Slice interface so that they always save snapshots into repositories, rather than returning a snapshot. Snapshots now only hold the hashstamps of their versions, not the full verions themselves. 

' id '80fe23ea-d68b-422b-9c98-62daf0f55dc0' date '10 March 2005' time '9:55:43 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.48' message 'Changed the hashstamp epoch to midnight on Jan 1, 1980. this should be early enough... we''re versioning Smalltalk code!' id '5e871880-71e0-4ce2-9e18-98cce9496b9d' date '10 March 2005' time '1:31:36 am' author 'cwp' ancestors ((name 'Monticello2-cwp.47' message 'Hashstamps now use Marshals for serialization.' id 'f440dbcb-de0f-478d-b657-66a5cf30e094' date '10 March 2005' time '1:08:42 am' author 'cwp' ancestors ((name 'Monticello2-cwp.46' message 'Serialization tweaks.' id '569aeae6-e5cc-43d3-8e09-c3a981103af8' date '9 March 2005' time '10:35 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.45' message 'Refactored serialization to keep knowledge of the bytestream entirely within Marshal. Other classes implement #serializeWith: and #materializeWith: for double dispatch of the class-specific reading and writing methods.' id '80544fc0-9750-4b97-9001-d655e25a54ab' date '9 March 2005' time '9:55:12 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.44' message 'Minor bug fix: make the input stream binary at the top of the materialization tree, rather than with each object being materialized.' id '446c7c4b-5038-4327-b837-a0f8f2f3b18c' date '9 March 2005' time '8:07:48 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.43' message 'Bugfix: Serialization now uses 32-bit integers to record the size of Sets, so it''s much harder to overflow it.' id '617f4753-4944-4914-8a64-21e93928f098' date '9 March 2005' time '12:32:31 am' author 'cwp' ancestors ((name 'Monticello2-cwp.42' message 'Added preliminary serialization code.' id 'd0f6c568-510b-4215-bc16-3afe26f40bee' date '8 March 2005' time '12:26:17 am' author 'cwp' ancestors ((name 'Monticello2-cwp.41' message 'Made working copies singletons.
' id 'cb5ae240-b834-4e40-87d1-d0d3579aca99' date '4 March 2005' time '3:51:51 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.40' message 'PackageSlice now supports class instance variables.' id 'babcdea1-cf1f-48d8-9f74-b57bcd336dc2' date '4 March 2005' time '3:28:23 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.39' message 'Implemented class instance variable elements... looks like I missed it before.' id '277a5911-c479-46d4-8346-9c3a99d34eb5' date '4 March 2005' time '3:22:07 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.38' message 'Implemented PackageSlice.' id '684850b1-28d6-430a-ae6b-41ad3bc78577' date '3 March 2005' time '2:25:46 am' author 'cwp' ancestors ((name 'Monticello2-cwp.37' message 'Extracted version comparisons and conflict detection from the wc into the versions themselves. This presents a better API for merge tools, which is now well documented by tests.' id 'e99ad512-01d3-4a76-a83d-f059131386c3' date '3 March 2005' time '12:15:50 am' author 'cwp' ancestors ((name 'Monticello2-cwp.36' message 'Added a test to ensure that saving a version of an element that is not present in the image will produce a NullVersion.' id 'c9af4959-cbf4-4179-bddb-f9c3abed529d' date '27 February 2005' time '11:55:02 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.35' message 'Introduced Slices and NullVersion. Slices are now responsible for loading and saving snapshots, and use NullVersions to merge elements not present in snapshots into the image.' id '4795c138-02be-48ec-9b0a-faa52e9be4e7' date '27 February 2005' time '10:57:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.34' message 'Introduced Hashstamp, which is quite similar to the old ElementVersionInfo, except that it uses a SHA1 hash instead of XORing the hashes of all the properties together.' id 'e79d93de-e25f-4435-bb7e-e983d14c7a2b' date '27 February 2005' time '6:14:27 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.33' message 'Changed the way snapshots work.' id '087fd0e0-78d4-4801-902d-af0e273151f1' date '27 February 2005' time '12:19:48 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.32' message 'Renamed ''tag'' to ''snapshot''.' id '98aeedf7-8007-4d33-bb22-4ed4e6f3bb8f' date '21 February 2005' time '1:33:49 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.31' message 'Added support for #isLoadable: to the Squeak adaptors.' id 'c325d879-e8b6-436d-b7a3-386eb4797f9f' date '15 February 2005' time '4:08:28 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.30' message 'Added a test for creating the first version of an element.' id 'dccca4cf-e8fb-427d-b314-e136132674e5' date '13 February 2005' time '8:15:44 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.29' message 'Added preliminary tag support.' id '68f222cc-d9fd-408f-a7ab-bdbd31640cae' date '13 February 2005' time '7:58:43 pm' author 'cwp' ancestors ((name 'Monticello2-abc.28' message 'Removed ElementVersionInfo in favour of using UUIDs.' id '5dfa10de-185e-4c44-aa27-f594c6a4ba6b' date '13 February 2005' time '12:52:17 pm' author 'abc' ancestors ((name 'Monticello2-cwp.27' message 'Method elements can now handle class methods.' id 'a62d8aad-050a-4b02-83c9-421b02dce147' date '12 February 2005' time '3:26:11 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.26' message 'Added a class comment element.' id 'cef267d3-1432-4774-a59c-e446556065a3' date '12 February 2005' time '3:10:53 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.25' message 'Added adaption of pool imports.' id '9ae45537-e8d5-4262-ae58-9e8e67a16755' date '7 February 2005' time '12:02:49 am' author 'cwp' ancestors ((name 'Monticello2-cwp.24' message 'Added a test to ensure that removals can be loaded even when the element is not present.' id '85e2eebb-b8a5-491d-b120-c019bf8b2060' date '6 February 2005' time '11:58:03 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.23' message 'Added support for pool imports.' id '5cb53825-7ddf-498b-9732-442f1e45ec38' date '6 February 2005' time '11:53:41 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.22' message 'Got the double-dispatch between adaptors and image proxies working for all the new element types.' id '2ac97820-764c-45f4-a0ac-70fd872d53bd' date '6 February 2005' time '10:39:15 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.21' message 'Added support for class variable elements.' id 'f298d6d4-8c0e-46e9-b373-dae2b2fa3c81' date '6 February 2005' time '2:32:57 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.20' message 'Further test refactoring. Now we don''t rely on the Bogus package for code to test against. Instead we use a couple of internally defined bogus classes.' id '7b336ab7-a6b7-453c-91da-00947b90d4e0' date '6 February 2005' time '12:19:25 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.19' message 'Added support for class elements.' id '1200081e-9dd6-4358-aebd-7fe2ee7c09cb' date '5 February 2005' time '11:06:14 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.18' message 'Further test case refactoring: Eliminated the squeak image proxy test and moved all testing that actually deals with the live image into adaptor tests. Now the higher level tests can test the interaction of elements, snapshots and proxies in a more abstract way. This should also be good for keeping the versioning code as domain-independent as possible.' id 'f03241f3-8508-405c-a3c0-09af476e528d' date '5 February 2005' time '8:31:21 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.17' message 'Refactored the image proxy tests in preparation for adding element types.' id '8d0d1779-901e-4f64-82d2-d521053ac338' date '5 February 2005' time '1:26:35 am' author 'cwp' ancestors ((name 'Monticello2-cwp.16' message 'Updated FakeImageProxy to use the same adaptor scheme as SqueakImageProxy.' id '7cb32824-1c63-4b2f-94c8-bcdf8d63304f' date '4 February 2005' time '12:44:26 am' author 'cwp' ancestors ((name 'Monticello2-cwp.15' message 'Got rid of gobs of obsolete double dispatch.' id '1a5cd7bb-b3b4-42b4-bef9-a705e6505d6f' date '4 February 2005' time '12:03:24 am' author 'cwp' ancestors ((name 'Monticello2-cwp.14' message 'Reverted to cwp.12, and got the SqueakImageProxy tests working again, but using an ElementAdaptor approach this time.' id '31b84e5c-8f7c-41d4-891f-6a6bfef05846' date '3 February 2005' time '11:43:23 pm' author 'cwp' ancestors ((name 'Monticello2-avi.12' message 'Add ElementRemoval and tests at the ImageProxy level.' id 'a1fb8dda-43fd-11d9-b578-000a95db7844' date '2 December 2004' time '2:01:01 am' author 'avi' ancestors ((name 'Monticello2-avi.11' message 'Conflict resolution is supported.' id '2b8d1484-4211-11d9-9582-000a95db7844' date '29 November 2004' time '3:15:49 pm' author 'avi' ancestors ((name 'Monticello2-avi.10' message '#includeVersion: now has an #onConflict: block.  This gets triggered at the right time, but isn''t otherwise handled at all.' id '8675e616-420b-11d9-9582-000a95db7844' date '29 November 2004' time '2:35:25 pm' author 'avi' ancestors ((name 'Monticello2-avi.9' message 'Add WorkingCopy>>includeVersion:, which only loads a version if it supercedes what''s already there.' id '6c4d3e91-420a-11d9-9582-000a95db7844' date '29 November 2004' time '2:27:31 pm' author 'avi' ancestors ((name 'Monticello2-avi.8' message 'Introduce the Versions layer, with ElementVersion and WorkingCopy.  Pulled out an abstract MDTestCase with the construction and proxy handling methods (and a subclass MDFakedTestCase which, like MDTestFakeImageProxy, implements the proxy methods to use a FakeImageProxy).  Add #isUpToDate: to ImageProxy (no implementation for SqueakImageProxy yet). WorkingCopy can load and save ElementVersions, creating new versions as needed based on #isUpToDate:. ' id '87007702-4206-11d9-9582-000a95db7844' date '29 November 2004' time '1:59:38 pm' author 'avi' ancestors ((name 'Monticello2-cwp.7' message 'Renamed ProgramElement to ImageElement.' id 'd444de0c-6906-4fe8-89b8-a3dd1ab425fe' date '29 November 2004' time '1:50:10 am' author 'cwp' ancestors ((name 'Monticello2-cwp.6' message 'First implementation of SqueakImageProxy.' id 'ffc1e52d-7bfa-425c-b0fa-3431aed24590' date '29 November 2004' time '1:48:27 am' author 'cwp' ancestors ((name 'Monticello2-cwp.5' message 'Cleaned up the interface TestImageProxy expects from its concrete subclasses.' id 'fe0cb14d-a637-4c6f-9185-f456ba0f5b3f' date '28 November 2004' time '7:06:16 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.4' message 'Refactoring: Pulled out MDTestImageProxy as an abstract superclass for proxy tests.' id 'c479d8d3-2f0b-4111-8523-9a2f4b1bcaf4' date '28 November 2004' time '5:10:22 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.3' message 'Renamed MockImageProxy to FakeImageProxy and extended it to be able to handle properties other than #source.' id '348fefd1-bb04-4b96-aca1-6007f8cdfe2f' date '28 November 2004' time '3:47:37 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.2' message 'Refactoring: Renamed classes and methods to reflect the Element naming scheme.' id '23e9f2e6-4168-11d9-853a-000a95702430' date '28 November 2004' time '1:05:51 pm' author 'cwp' ancestors ((name 'Monticello2-avi.1' message 'Starting to sketch out the ImageProxy, Definition, and DefinitionSnapshot layer.' id '6dd22b78-4152-11d9-9c95-000a95db7844' date '28 November 2004' time '4:30:26 pm' author 'avi' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-avi.49' message 'Added a simple DirectoryRepository, which saves versions into files named by the hashstamp.  For now it only ever points to ''slice-versions'' in the default directory.' id 'c7a83d24-928a-11d9-ad65-000a95db7844' date '12 March 2005' time '1:07:53 am' author 'avi' ancestors ((id '5e871880-71e0-4ce2-9e18-98cce9496b9d')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-cwp.56' message 'Added a preliminary implementation of the Store. For now it just uses a single DirectoryRepository.' id '6633cdf3-5fb4-447a-9200-3148918fc209' date '13 March 2005' time '1:17:14 am' author 'cwp' ancestors ((name 'Monticello2-cwp.55' message 'Further optimization of the serialization code, which now spends the bulk of its time in primitives. The down side of this is that we use a fairly odd (julian day number + seconds) encoding scheme for timestamps, which may be unnatural in other Smalltalk dialects.' id '92d8d2e6-ac13-416c-a66d-11608c2edd48' date '12 March 2005' time '1:24:51 am' author 'cwp' ancestors ((name 'Monticello2-cwp.54' message 'Tweak to MDHashstamp class>>decodeString:' id 'bfddaab3-501b-4d18-9182-d061dfc1ddc1' date '11 March 2005' time '11:31:58 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.53' message 'Merged in changes from Avi.' id '617d5c05-5978-4fad-8014-e4872fa4ac91' date '11 March 2005' time '11:25:35 pm' author 'cwp' ancestors ((name 'Monticello2-cwp.52' message 'A bunch of bug fixes required to be able to save a snapshot to a disk-based repository and load it back in.' id 'ce1b5678-ecd2-4ca3-8435-a7d88d51156b' date '11 March 2005' time '11:17:50 pm' author 'cwp' ancestors ((id '40e6254e-dbaf-4cc0-9191-dfcdef11c8f7')) stepChildren ())(id '230052b8-92a6-11d9-ad65-000a95db7844')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-avi.66' message 'Working on wrapping IndexFile around ByteIndex so that it''s growable.' id 'ecb5b1e4-aa0e-11d9-a22d-000a95db7844' date '11 April 2005' time '12:21:46 am' author 'avi' ancestors ((id 'e41ff6a4-46b3-4420-8f4c-a2d7027544e9')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-cwp.111' message 'Merged in Avi''s postgres repository.' id '9243d91d-b12a-2545-92f3-872df69fe452' date '22 June 2005' time '10:50:28 pm' author 'cwp' ancestors ((id 'f7c960b0-44db-174c-8728-634753da5823')(name 'Monticello2-avi.108' message 'Add a simple postgres repository.' id '64015b7c-e17e-11d9-bfb0-000a95db7844' date '20 June 2005' time '1:28:14 pm' author 'avi' ancestors ((id '0b00d520-e07c-11d9-9557-000d937adc5a')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-cwp.139' message 'Tweaks to MDFileRepository and tests so that the file stream gets closed during teardown. This allows most of the tests to pass on Windows.' id '3b372edc-1741-7c48-a6c2-d48839cf0e48' date '2 February 2006' time '11:42:52 pm' author 'cwp' ancestors ((id '40d1ef6e-e39a-6040-811b-640d97c1e962')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Monticello2-cwp.145' message 'No changes, but Squeak insists on rearranging class vars between versions.' id '7efaf6cd-f8d8-48a5-8aef-09f942b2534c' date '20 March 2006' time '11:38:01 pm' author 'cwp' ancestors ((id 'e0086560-b7f1-11da-a09b-000a95db7844')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())