Thursday, 2014-01-16

*** jelmer_ has joined #npoacct00:14
*** jelmer has quit IRC00:17
*** jelmer_ is now known as jelmer01:09
*** jelmer has joined #npoacct01:09
*** bkuhn has quit IRC02:30
*** nesciens has quit IRC02:38
*** nesciens has joined #npoacct12:24
*** nesciens has quit IRC15:48
*** bkuhn has joined #npoacct16:23
joarhello bkuhn!16:46
bkuhnHow are things going?  Haven't heard from you in a while.16:47
joarbkuhn: Family has been sick, and I have been busy with other things.16:47
bkuhnNo problem.16:47
joarbkuhn: does your schedule look better soon?16:48
joari.e. are you still busy with the audit?16:48
bkuhnjoar: Not exactly yet, but I'm working on it.  Audit just ended and Form 990 filed, but I have a backlog of things that are urgent that I was ignoring.16:48
bkuhnBut, as always, please ping me if you're stuck in any way on the project and need my input!16:48
joarbkuhn: all right, good luck to you meanwhile16:49
bkuhnjoar: What would you say the state of the project is right now?16:52
bkuhnYou have an API, right, that more or less works.16:52
bkuhnHas it got 100% test coverage yet?16:52
joarbkuhn: It has a lot of tests16:52
joarI need to refresh my memory16:52
joarbkuhn: about 79%17:07
bkuhnOk, I think one good first step is to get to 100%17:08
bkuhn(why not)?17:08
bkuhnA good second step might be write some reports Javascript-based reports using the API.17:08
bkuhnjust to see how it works.17:08
joarI could extend my client to do that.17:10
joarbkuhn: coverage output is at at the moment17:11
joarbkuhn: 84% if you omit the sql storage, which isn't finished by any means (it lacks validation)18:38
joarbkuhn: earlier you talked about changing the method by which accounting-api accesses the ledger data.19:03
bkuhnjoar: I am blanking on context here, can you remind me?  What do you mean by "method" here?19:03
bkuhnI think you mean, "some sort of ledger-cli library rather than command line"?19:04
joaryeah, that might be it19:04
joarbkuhn: ^^19:06
bkuhnAH, yes.19:06
bkuhnThe thought I had was to modify C++ Ledger-CLI implementation to be callable as a library.19:06
bkuhnThe work is somewhat begun by John setting it up with that Boost Python API.19:06
bkuhnBut I've not looked at the code on that, but I know that it's buggy when trying to sue it.19:07
bkuhnjoar: but if you felt like investigating this possibility further and seeing how possible/hard it is, and experimenting with it, that would be a good direction to go in too.19:07
joarThe build process is a bit unclear also, there seems to be a special switch to enable the python API19:07
joarand, IIRC, you cannot access the ledger methods from any python process, you must run "ledger python".19:08
joarbkuhn: it will not solve the 18-minute load time of all the ledgers on start time though.19:12
bkuhnjoar: indeed it won't.19:13
bkuhnBut, if you only have to reload when something is changed, that'll be a huge help.19:13
bkuhnAs for the "ledger python FILE", yes, I agree, that's not a "real" python API.19:13
bkuhnIt needs one. :)19:13
joaryes, so the solution would be to make accounting-api aware that e.g. 'books.ledger' is actually several files.19:13
bkuhnjoar: that's a  cute idea, for the long term.19:13
bkuhnI'd rather not worry THAT much about speed initially.19:14
bkuhnIt's always a mistake to optimize first in a project. :)19:14
bkuhnBut, the problem of no direct python API is problematic not just for speed, but also for easy of design.19:14
bkuhnSo, that's why solving that early would be good19:14
joarall right19:15
bkuhnBut, there's a few things I've mentioned that it'd be good for you to work on.19:15
bkuhnFeel free to pick the one that intrigues you most at the moment.19:15
bkuhnAt this point, based on both your and my lack of availability, the project is getting a "slow start", which I think is just fine, but as such, more mock-up / let's see if this approach works type of work is probably more useful at this moment than trying to build a full application.19:16
bkuhn(but I think all the projects I mentioned are in a "let's see if this approach works" kind of realm)19:16
joarI actually have working git integration19:20
joarso that works :)19:20
joarone thing. I think ledger's python is only python 2.x19:25
joarI'm using python 3 in accounting-api19:25
bkuhnwell, that argues for fixing it.19:30
bkuhnI think the ledger python API isn't particularly good anyway.  I suspect johnw would agree19:30
bkuhnIt just uses Boost's "easy hookup" stuff.19:30
joarperhaps I can do something with CFFI19:30
joarcffi doesn't seem to play well with c++19:55
bkuhnoh, hm.20:02
*** bkuhn is now known as bkuhnIdle20:02
joarstill digging20:03
*** bkuhnIdle is now known as bkuhn20:58
joarbeen trying with cython for a while21:57
joargot some weird errors, and it's tedious to work with overall.21:57
joari'll see if it's easier to improve ledger's boost.python thing instead.21:58
joarI wish ledger's code was a bit more annotated with comments21:59
joarbkuhn: there does not seem to be a 3.0 release of ledger.22:14
joarthere is, but it's not tagged in git22:15
bkuhnsorry, was on the phone.22:23
bkuhnjoar: that's odd.  ask johnw about it,22:23
joarbkuhn: 3.0 isn't released yet it seems.23:59

Generated by 2.12.1 by Marius Gedminas - find it at!