On Tue, Jun 5, 2012 at 10:18 PM, Mariano Martinez Peck < marianopeck@gmail.com> wrote:
Hi guys. Right now ReferenceStream is deprecated, not removed. In another thread, I asked about cleaning DataStream and let it ONLY for Monticello. That way we can really simplify DataStream, remove DiskProxy and much more. For more details see: http://code.google.com/p/pharo/issues/detail?id=6036. Then whoever need a serializer, it can use Fuel which is already integrated. The problem is that keeping ReferenceStream as deprecated means that it has to run...meaning that I cannot remove nothing but deprecate everything...DataStream has extension methods in about 20 classses...meaning I have to rename 20 protocols from *SystemObject Storage to *Depreacted20. Apart from even more work is needed to keep it "alive".
So...sometimes it is really hard to keep everything as deprecated. We don't have manpower enough to keep everything 100% deprecated 100% of the time. Fuel works out of the box from Pharo 1.1 to 2.0 so if anybody needs to move data from previous images, he can use Fuel. Not sure how many people is using ReferenceStream but I have been founding bugs in the last years that nobody even reported..
So, can I remove ReferenceStream?
I vote yes. If anyone needs migrate data between pharo 1.x and 2.0, and he can use fuel, then there is no problem at all. But we should document this in a wiki page and say: To migrate apps from pharo 1.x to 2.0 - if you use reference stream, you should use fuel. You can migrate the data with blablabla... - .... There is a saying in spanish "Cuentas claras mantienen la amistad" that I think can be translated in english as "Good fences make good neighbors"...
thanks
-- Mariano http://marianopeck.wordpress.com