[cad-linux-dev] Re: Drawing entity

  • From: Eric Wilhelm <ewilhelm@xxxxxxxxxxxxx>
  • To: CAD linux development <cad-linux-dev@xxxxxxxxxxxxx>
  • Date: Fri, 20 Aug 2004 12:51:49 -0500

# The following was supposedly scribed by
# Bruno Postle
# on Friday 20 August 2004 12:33 pm:

>On Thu 19-Aug-2004 at 15:08 -0500, Eric Wilhelm wrote:
>> Version:  global property
>>
>> I don't think it's practical to design code around versions
>> changing across entities within a single database. 
>
>Ok, I understand where you are coming from - Though perhaps this
>could be an inheritable/optional attribute along with units, colour,
>layer etc..
>
>This is my reasoning for thinking like this:
>
>This stuff needs to be usable for real work and data from the
>earliest opportunity - Without early adopters worrying about bitrot
>and formats changing in incompatible ways.
>
>When (eventually) I get around to updating Draft to read/write this
>format, I intend to do it by subclassing the file handling so it can
>handle both the new and my old drawings simultaneously.
>
>When the spec inevitably changes, it would be nice to just add a
>file or two to the code and keep backwards compatibility (read/write
>existing data in the old spec, but write new elements to the new
>spec).

Okay, but I still don't see it as practical to have multiple versions of a 
format within a single directory.  How would your code handle this?

I can see some reason for wanting to keep backwards-compatible versions of a 
drawing database, but is it necessary for them to be in the same directory?  
If you have to make an older format, what's wrong with making it in another 
directory?  After all, using an older format after the new one is in-place is 
somewhat of a work-around anyway.

I think you are not seeing my 'hub-is-a-node' principle clearly.  I'll try to 
elucidate this in the very near future.  That should clear-up some of the 
concerns about format changes.  Hint: the drawing entity will also have a 
"format:" attribute.

--Eric
-- 
"Chess is a foolish expedient for making idle people believe 
they are doing something very clever when they are only wasting 
their time."
                                        --George Bernard Shaw

Other related posts: