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.