On Aug 15, 2010, at 1:56 PM, Mariano Martinez Peck wrote:


But I think we should add back a Preferences class for allowing to load old code. (it's referenced
in the class side initialize in old code often...)



The problem are the external pacakges. I have 100 references to Preferences in Pharo dev....almost EVERY external package uses Preferences.
So....we really need help of the external package maintainers to update them. And I am not sure how easy is that.

What should be easy is to have a Preferences class that supports the simple API that everyone was using: add a preference. And make Preference
class return true or false for that preference. That should be 90% of all usages, I guess..

We can do that by just having a dictionary and overriding doesNotUnderstand:. We should not provide all this magic that used to be there, e.g.
compiling on the fly methods for accessed perferences (which funnily had an empty source pointer...).

I mean...is there a mapping between each previous preference a the new ones?


In 1.1, Preferences are returning the values from the Settings framework for backward compatibillity. 

But I don't think that Preferences added are shown in the Settings? This would require Settings to be generated, which is possible but I think
not really what we want.

One could of course build this specification for the Preferences... and maybe there was even code there for that ;-) I started the cleanup bu removing
unsent messages... but after a while that got really boring. And Preferences was a  near 2000 LOC abdomination of a class.

I checked in 1.1Dev, and most of the references are from the Core, which we removed in 1.2...

     Marcus


--
Marcus Denker  -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.