|
From: Daniel J S. <dan...@ie...> - 2005-07-13 23:15:53
|
Ethan Merritt wrote: > On Wednesday 13 July 2005 03:07 pm, Daniel J Sebald wrote: > >>>>After that, I'd propose making the BINARY_DATA_FILE permanent too. >>> >>>I am opposed to removing the EXPERIMENTAL warnings on that one. >>>The binary data file code is still very messy, and having it set off >>>by conditional flags is the only way anyone will ever be able to find >>>pieces for cleanup. >> >>I believe the new code is active by default in the CVS version and >>people have been using it for a year or more. > > > Do you really have a handle on how much use it has seen? There are some demo programs that utilize binary. They all work. I use binary data for images in Gnuplot (but that is only new code, not old). > > I think it is more fair to say that people have been using the > non-binary data path of the new code. Sure. Is there an alternative? I mean, the idea is do the best you can initially to find all bugs and anticipate any problems. Then, if people using the code find bugs you fix them (for free, mind you). > As to the actual binary > data path, I've been finding bugs in it even though I don't actually > use it for anything. I just trip over them while working on other > code parts, or when I hit compiler warnings. I missed something then, my bad. > >>Once people are comfortable with the idea of discarding the old bits, it is easy cleanup. >> >>#ifdef BINARY_DATA_FILE >> <keep this portion> >>#else >> <all this code gets tossed along with the ifdef's> >>#endif > > > But there is something strange about having that sort of code in the > first place. If the BINARY_DATA_FILE code were properly integrated, > that second code segment would be empty. The common functionality > should be factored out and removed from the conditional brackets > altogether. Ideally there would be no #else sections to remove. No. The thinking was "OK, this is a fairly big change that I'm sure people won't be comfortable with; so I had better keep the old behavior around so that people who thing something is wrong can switch over to the old code and verify if that is or isn't the case." It's experimental as indicated when configured. Find a problem? Turn back on the old code. Dan |