GemBuilder filein class creation won't version subclasses or copy methods
If a GemStone Smalltalk filein from GemBuilder does a doIt command
that creates a new version of an existing GemStone class, subclasses
of that class are not versioned along with it. For example, if I
have class A with subclass B, and a filein redefines A to add an
instance variable, then class B will still inherit from the old
version of A, without the new instance variable.
Also, a filein that simply redefines the class (to do something like
add an instance variable) will not try to copy the methods from the
old class into the new class.
These are features that you get if you use a browser to do similar
operations. These features might not be as important in a filein,
since fileins are usually (but not always) complete descriptions of
a class or collection of classes.
Workaround:
Use a GemBuilder browser to make changes to a GemStone class
definition. If you must use another interface, you should:
- file out that class, and all classes that inherit from it
- make the modification to the filed out file
- file in the the classes in superclass order - that is,
start with the class that was modified, and then file in
its subclasses, then their subclasses, and so on