The Trunk: Monticello-cmm.553.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Monticello-cmm.553.mcz

commits-2
Chris Muller uploaded a new version of Monticello to project The Trunk:
http://source.squeak.org/trunk/Monticello-cmm.553.mcz

==================== Summary ====================

Name: Monticello-cmm.553
Author: cmm
Time: 13 August 2013, 4:03:35.008 pm
UUID: 45077112-2b68-48f5-814a-2de27c394101
Ancestors: Monticello-cmm.552

- Let the new proxy only refer to a _copy_ of the referencing info, so we don't trim infos that may be referenced by others such as the FileDirectory caches.
- Begrudingly introduced MCProxyMaterialization, a Notification signaled whenever a MCInfoProxy is agitated.  This mechanism allows both monitoring and intervention into MC proxy materializations.

=============== Diff against Monticello-cmm.552 ===============

Item was changed:
  ----- Method: MCAncestry>>stubAncestryUsing: (in category 'initialize-release') -----
  stubAncestryUsing: aMCRepository
  ancestors := ancestors collect:
  [ : each | MCInfoProxy
+ info: each copyWithTrimmedAncestry
- info: each withTrimmedAncestry
  repository: aMCRepository ]!

Item was changed:
  ----- Method: MCInfoProxy>>becomeAncestry (in category 'private') -----
  becomeAncestry
+ ^ self become: (MCProxyMaterialization signalMaterializing: self)!
- ^ self become: (repository versionWithInfo: info) info!

Item was added:
+ ----- Method: MCInfoProxy>>materializeInfo (in category 'private') -----
+ materializeInfo
+ ^ (repository versionWithInfo: info) info!

Item was added:
+ Notification subclass: #MCProxyMaterialization
+ instanceVariableNames: 'proxy'
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'Monticello-Repositories'!

Item was added:
+ ----- Method: MCProxyMaterialization class>>signalMaterializing: (in category 'as yet unclassified') -----
+ signalMaterializing: aMCInfoProxy
+ ^ self new
+ setProxy: aMCInfoProxy;
+ signal!

Item was added:
+ ----- Method: MCProxyMaterialization>>defaultAction (in category 'overriding') -----
+ defaultAction
+ self resume: proxy materializeInfo!

Item was added:
+ ----- Method: MCProxyMaterialization>>setProxy: (in category 'initialize-release') -----
+ setProxy: aMCInfoProxy
+ proxy := aMCInfoProxy!

Item was added:
+ ----- Method: MCVersionInfo>>copyWithTrimmedAncestry (in category 'initialize-release') -----
+ copyWithTrimmedAncestry
+ ^ self copy postCopyWithTrimmedAncestry!

Item was added:
+ ----- Method: MCVersionInfo>>postCopyWithTrimmedAncestry (in category 'copying') -----
+ postCopyWithTrimmedAncestry
+ ancestors := Array empty!

Item was removed:
- ----- Method: MCVersionInfo>>withTrimmedAncestry (in category 'initialize-release') -----
- withTrimmedAncestry
- ancestors := Array empty.
- ^ self!