[Pkg] The Trunk: Monticello-nice.667.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Apr 8 15:01:49 UTC 2017

Nicolas Cellier uploaded a new version of Monticello to project The Trunk:

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

Name: Monticello-nice.667
Author: nice
Time: 8 April 2017, 4:53:33.332413 pm
UUID: 2ce0d205-81ea-4f9d-ada9-2208e93d3b2e
Ancestors: Monticello-eem.666

Perform a forgetSuperfluousMethodRemovals, which is assuming that it's un-necessary to remove methods individually if we remove the whole class.

This change is necessary to restore the updateStream after MethodContext -> Context rename.

Indeed, the MCDiffyVersion for Kernel-eem.1078 is going to detect that there is no more MethodContext in the package and ask to remove each and every MethodContext method.

=============== Diff against Monticello-eem.666 ===============

Item was changed:
  ----- Method: MCPackageLoader>>analyze (in category 'private') -----
  	| sorter |
  	sorter := self sorterForItems: additions.
  	additions := sorter orderedItems.
  	requirements := sorter externalRequirements.
  	unloadableDefinitions := sorter itemsWithMissingRequirements sorted.
+ 	self forgetSuperfluousMethodRemovals.
  	sorter := self sorterForItems: removals.
  	removals := sorter orderedItems reversed.!

Item was added:
+ ----- Method: MCPackageLoader>>forgetSuperfluousMethodRemovals (in category 'private') -----
+ forgetSuperfluousMethodRemovals
+ 	|  removedClasses |
+ 	removedClasses := (removals select: #isClassDefinition) collect: #actualClass.
+ 	removedClasses addAll: (removedClasses collect: #class).
+ 	removals := removals reject: [:e | e isMethodDefinition and: [removedClasses includes: e actualClass]]!

More information about the Packages mailing list