Marcel Taeumel uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-mt.1052.mcz==================== Summary ====================
Name: System-mt.1052
Author: mt
Time: 24 January 2019, 2:05:11.02266 pm
UUID: 6db55eef-6153-0949-b109-6cf5ab454a91
Ancestors: System-mt.1051
Synchronize preference cache for pragma-preferences on clean-up. For example, the 5.2 release misses the "sort message categories alphabetically" entry in our Preference Browser.
=============== Diff against System-mt.1051 ===============
Item was added:
+ ----- Method: PragmaPreference>>isPragmaPreference (in category 'testing') -----
+ isPragmaPreference
+
+ ^ true!
Item was added:
+ ----- Method: Preference>>isPragmaPreference (in category 'testing') -----
+ isPragmaPreference
+
+ ^ false!
Item was changed:
+ ----- Method: Preferences class>>cleanUp (in category 'class initialization') -----
- ----- Method: Preferences class>>cleanUp (in category 'initialization') -----
cleanUp
+ "Synchronize the cache for pragma preferences. Note that the actual preferences values are stored in class variables. So, no such value gets lost if we remove all such preferences from that cache."
+
+ "1/2 - Remove all pragma-preference objects from the dictionary of preferences."
+ self atomicUpdatePreferences: [:copyOfDictionaryOfPreferences |
+ copyOfDictionaryOfPreferences keys do: [:key |
+ (copyOfDictionaryOfPreferences at: key) isPragmaPreference
+ ifTrue: [copyOfDictionaryOfPreferences removeKey: key]]].
+
+ "2/2 - Re-create all those pragma-preference objects."
+ SystemNavigation default allSelectorsAndMethodsDo: [:behavior :selector :method |
+ method pragmas do: [:pragma | self addPragmaPreference: pragma]].!
- self removeObsolete.!