On Sep 10, 2013, at 3:14 PM, [email protected] wrote:

> What work has already been done on fundamental code rewriting? 
> 

We've started with unit tests. Most of QOF was done 2 years ago by a GSoC 
student, and I've just finished the last of the 3 core classes in Engine 
(Account, Split, and Transaction). 

There's a bit more work on testing: Finishing QOF, converting the scrub tests 
to unit tests and making sure that everything is covered, unit testing the 
DBI/SQL backend.

Next step is cleanup. We've got two property interfaces--QOF and GObject--and a 
memory management quagmire, both of which need sorting out. There's a ton of 
functions that are called exactly once for some "special" purpose clogging up 
the class interfaces. Much of that belongs in a separate "controller" (as in 
MVC) layer rather than in the model objects. Those 3 classes are way too 
co-dependent and thoroughly in each other's knickers. That needs to be cleaned 
up as well. There are undoubtedly ancillary classes (Lots comes immediately to 
mind) which will have to be tested and cleaned up as we move along.

At that point (another year or two at the current rate) we'll have to make some 
decisions about how to either replace QOF or make it "front" for the SQL 
backend.

Regards,
John Ralls





_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to