[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: My post-1.4 priorities

On Wed, Jan 22, 2014 at 12:34 AM, Erik Huelsmann <..hidden..> wrote:

On Wed, Jan 22, 2014 at 9:14 AM, Chris Travers <..hidden..> wrote:
Two more thoughts:

Ok. This is a big one. Even though I think it's a great goal to set, if it were up to me, I'd like to split this up in smaller tasks, if possible.\

At this point I don't think it is possible.  The db has to be redesigned from underneath and making that backwards-compatible is going to take almost as much time as the full rewrite.
One thing that I think is important for the project as a whole is that we can maintain a reasonable level of stability during the entire rewrite -- it helps with the acceptance of the final 1.5 end result.

Sure, but I would highly suggest that we not make the financial logic a moving target and try hard to avoid any new reports against financial tables in the mean time.  Otherwise, if it is a moving target, it will never get done.

Well, my point is merely that we should strive to keep trunk in working order. Maybe we should/can start this work on a branch so that even if this work turns out to be infeasible (or rather: the resources to finish it turn out to be unavailable), we'll still have a working trunk version.

Does that sound like an approach? 

Sure.  Just noting the moving target problem may mean delaying feature requests until it gets done, or doing those in the feature branch as well.

Here's my estimate as far as the minimum which will need to be redone at once:

1. We need a new db design of the following underlying tables: ar, ap, gl, acc_trans, invoice payment, payment_map, overpayment.  Providing read-compatibility may be possible, but write compatibility is not really feasible.

This means that the following have to be rewritten:

Financial transactions and sales/purchase invoices
The reporting queries will need to be gone through and ported to the new codebase.

The first three replace about 12000 lines of Perl code, most of it old SQL-Ledger code as well as about 1600 lines of 1.3 SQL code.

The second involves review of another 1600 lines of SQL or so.



http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.

CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
Ledger-smb-devel mailing list

Best Wishes,
Chris Travers

Efficito:  Hosted Accounting and ERP.  Robust and Flexible.  No vendor lock-in.