/srv/irclogs.ubuntu.com/2010/08/29/#launchpad-dev.txt

=== Ursinha-afk is now known as Ursinha
=== Ursinha is now known as Ursinha-afk
lifelesswhat are snapshots used for ?06:55
=== Ursinha-afk is now known as Ursinha
cr3how can I run doctests from a specific lib/lp/<application>/stories/webservice directory19:36
lifelessbin/test -t application/stories/webservice19:41
lifelesscr3: I hope you're not adding a new application though19:41
lifelesscr3: or that your definition of application is not mine19:41
cr3lifeless: sure am19:41
cr3lifeless: maybe a bit from column A and a bit from column B19:42
cr3lifeless: I'm adding the /+results namespace for the Results Tracker19:42
lifelessI thought that that was going to use a different DB19:43
lifelessas per the discussions you me & jml had it prague19:43
cr3lifeless: flacoste and jml preferred it to be in the same db19:43
lifelessmmmm19:44
lifelessdo you have minutes from that? I was there with jml when we talked about this19:44
cr3lifeless: yeah, different db was indeed my original intention but that changed following discussion in montreal with both parties mentionned19:44
lifelessand he didn't express such a preference at the time19:44
cr3lifeless: are you sure that discussion was in prague rather than belgium?19:44
lifelessCould you please drop me, jml, flacoste and thumper (virtual flacoste for a few weeks) a mail about this. Is there a LEP for what you're working on ?19:45
lifelesscr3: after the LP epic, at the platform sprint. Very sure.19:45
cr3lifeless: https://dev.launchpad.net/LEP/ResultsTracker19:45
lifelesscr3: I don't believe jml has been to montreal since then19:45
cr3lifeless: right, that's why I'm surprised the idea of a separate db was still around in prague19:46
lifelessbecause:19:46
lifelesswell, actually, let me read the LEP19:46
lifelessok, I've read it19:48
lifelessuhm.19:48
lifelessWhen did you last sync up with jml on this ?19:48
cr3lifeless: last we spoke was on the 15th of june, haven't had an opportunity to start working on the project since19:49
cr3lifeless: I've quite excitedly started end of last week and perhaps it's been so long that a resync would be in order19:50
lifelesswell19:50
lifelesshere's my understanding19:50
lifelessyou were going to build a separate system, and integrate it into the LP UI19:50
lifelessit was going to be separate because:19:50
lifeless - there's no solid schema for it yet, and changing schemas in LP is *extremely hard*19:51
lifeless - its not part of the core LP mission [today], and jml has a sort-of moratorium on putting more stuff in LP until we're actually really polished on we do do19:51
lifelessI'm personally very excited about what you're working on.19:52
lifelessIf I have misunderstood, thats cool.19:52
lifelessI have a -very- important thing for you though, either way.19:52
lifeless*do* land every little thing separately.19:52
lifeless*do not* get it all working and then submit it. LP's review process will not accept such a proposal.19:53
cr3my initial proposal was design mostly to address the second concern rather than the first one. however, during my discussion with flacoste and jml in montreal (before the epic), it was decided that the results tracker should be in the core Launchpad (to my surprise :)19:53
cr3lifeless: heh, that's actually why I'm working today. I started having too much code and I wanted to split that a bit into minimal chunks19:54
cr3and when I say "too much", I really don't mean that much, but more than minimal :)19:54
lifelesscr3: have you seen the review policy LP has on this?19:55
cr3lifeless: I've been reading much of dev.l.n, but not the review policy. I've heard about the 600 or so line diff thing19:55
lifelessok cool19:56
cr3lifeless: I'm very conscious (and afraid) that the review policy is probably very strict and conservative, so I'm developing accordingly... as is launchpad was a little squirrel and I don't want to scare it away :)19:56
cr3s/as is/as if/19:57
lifelessmany things in LP are not structurally clear19:57
cr3lifeless: do you still want me to drop you guys an email?19:57
lifelessso its easy to end up reinventing stuff19:57
lifelesscr3: Absolutely19:57
cr3lifeless: will do19:58
lifelessIf its in LP, stub and I will need to get across your entire design to do a schema patch review, and consider all your use cases for indexing, performance, etc etc19:58
lifelessits a freaking huge deal19:58
cr3lifeless: tracking results is not trivial, so I'm actually glad it's a huge deal as it should be20:00
* cr3 is taking this freaking seriously20:00
lifelessanother reason not to put it in the same big bag20:00
lifelessWe have very limited scalability in LP today.20:01
lifelessin 12-18 months I'd expect to be able to handle whatever your workload is; at the moment while we can scale for reads, we can't scale for writes.20:01
cr3lifeless: in 12-18 months, I think we'll have a solid schema so timing might be right20:02
cr3lifeless: for now, I'm quite happy making the interface strictly open to members of a specific team. the initial objective is to meet specific user stories one by one20:02
cr3my current user story is tracking upgrade results from mvo20:03
lifelesscr3: please drop (at least me) a mail, I'll ping jml this evening and flumper during the day20:04
cr3lifeless: for some reason, bin/test -t results/stories/webservice doesn't run my doctest in the file xx-results.txt.20:04
lifelessdon't stop what you're doing20:04
cr3lifeless: you can't make me! :)20:05
lifelesscr3: you probably haven't setup the doctestsuite20:05
cr3lifeless: how's that done?20:17
lifelesshave a look at one of the other domains20:17
lifelessbtw, your result tracker stuff probably belongs in either lp.services.resultstracker or as part of registry.20:18
lifelesssinzui will know more20:18
cr3lifeless: I'll ask him tomorrow, thanks20:19
cr3lifeless: I looked at the hardwaredb domain and then tried ./bin/test -t hardwaredb/stories/webservice: 0 tests20:20
james_w-t is funny about some things, sometime it has to be -t hardwaredb/tests/../stories/webservice20:25
cr3james_w: that worked for hardwaredb, funny indeed20:30
* cr3 gots docs tests!20:32
lifelesscr3: also btw20:33
lifelesscr3: in launchpad, doctests are loathed20:33
lifelesscr3: unless they truely are documentation20:33
lifelesscr3: so, ask yourself: would the doctests you are writing be sensible to include on help.launchpad.net20:33
lifelesscr3: if not, they should not be doctests. Please.20:33
cr3lifeless: yeah, I read something about doctests being loathed in one of the Guides. however, that's where the api seems to be tested which probably makes sense to have on help.launchpad.net too20:34
lifelesscr3: no20:34
lifelesssome of the api is tested in doctests, but like nearly every other doctest thats a hangover20:35
lifelessdon't copy it20:35
lifelessreally don't.20:35
lifelessif you want to write *docs* for something, use doctests.20:35
cr3lifeless: do you have an example of good unit tests for the api then?20:35
lifelessif you want to write *tests* for something use tests20:35
lifelesscr3: I only know a small fraction of the code base20:35
lifelessperhaps ask on the list20:35
lifelessor look in the code section; they are pretty gung ho testers, I'd expect webservice pyunit tests there20:36
lifelessalso remember to be clear what you're testing20:36
lifelessif you're testing that A an B are hooked up in a certain way, test that, rather than testing that calling through A and B to C, D and E works.20:37
cr3maybe if I have a unit test case use WebServiceLayer, that might work out well20:37
cr3lifeless: don't worry, I was just testing that the web service worked, I wasn't testing the model layer which actually doesn't exist yet :)20:38
lifelesstest_bugs_webservice is one test file I know of that tests webservice stuff via a unit test20:38
lifelesscr3: uhm, that sounds like a valueless test; we know the web service works.20:38
cr3lifeless: I'm expecting the web service layer to be very thin, most of the code should be in the model layer which should probably use the DatabaseFunctionalLayer (still learning)20:39
lifelesscr3: right, which means you should have approximately zero webservice tests.20:39
cr3lifeless: we don't know that the '+results' namespace works though20:39
cr3(note that I also want to talk about that namespace with sinzui tomorrow)20:40
lifelesscr3: but we know the machinery; if you're registered you can do a multiadapter lookup to confirm it works against the relevant model objects, and you're done.20:40
lifelessyou might want *a* smoke test20:40
thumpermorning22:03
mwhudsonmorning22:07
lifelesshi thumper, mwhudson22:08
lifelessdo either of you know what 'snapshots' are for ?22:08
thumperyeah22:08
lifelesswhat are they for ?22:08
lifelessthumper: also, did flacoste mention 'test result tracker' to you at all?22:09
thumperworking out which fields have changed in order to raise the object modified events22:09
thumperlifeless: no, I didn't get a heads up about the result tracker22:09
thumperbut I have an email from Marc22:09
lifelessok, I will hunt jml down22:09
lifelessyes, I twisted his arm into mailing :)22:09
lifelessthumper: you probably don't need to do anything regarding it22:10
thumpergood22:10
thumper:)22:10
lifelessso, is there every any point in having CollectionFields snapshotted ?22:10
lifelessmmm, rather 'which is more comment: CollectionFields should be | should not be snapshotted'22:11
lifelesss/comment/common/22:11
thumperit is a bit fluffy22:11
thumperfor example22:12
thumper...22:12
mwhudsonlifeless: intuition says 'should not' would be more common, but i doubt there's a one-size fits all answer22:12
thumperno, actually I think it should be more  common for collections fields to be NOT snapshotted22:12
lifelessmwhudson: Yeah, I'm thinking we should change the default22:12
lifelessthumper: you just agreed with mwhudson22:12
thumperlifeless: yes I did22:12
thumperwe do that sometimes22:12
lifelessthe 'no' confused me ;)22:13
mwhudsonthere's something about the whole objectnotmodified event thing that makes me a bit uneasy somehow22:13
mwhudsonwe don't use it very much22:13
lifeless!22:14
mwhudsonand it's a very general mechanism that in full generality is very expensive22:14
thumpereh?22:14
mwhudsonlifeless: am i wrong?22:14
thumperwe have a NOT modified event?22:14
mwhudsonoh sorry22:14
mwhudson:-)22:14
mwhudsonobjectmodified event22:14
lifelessmwhudson: I'm just surprised at having an event for objectnotmodified22:14
mwhudsondunno where that came from22:14
lifelessmwhudson: some good toenails :)22:15
thumperlifeless: can you add ian.m.booth to canonical-bazaar team plz?22:36
thumperlifeless: actually, don't bother22:36
lifelessI'm not sure I can22:39
lifelessbut if I can I will if you like22:39
lifelessthumper: looks like jml is awl, so we may need to talk about the test tracker thing brielfy23:27
thumperlifeless: ok23:27
lifelessplease name a time23:27
thumperhow urgent is it to talk about?23:28
lifelesswell23:29
lifelesswe have a new component, with many unknowns, no in-team maintainer, nor committed-resources-to-handle-oops-etc-from-out-of-team being developed.23:29
lifelessits important to various teams to have it built, and built well, and there is also some confusion over the previously discussed design approaches which occured both before and after I became TA23:30
lifelessso it doesn't have to be today23:30
lifelessbut if we do want to change the course, better to do it up front IMO23:31
* mwhudson glares at staging23:31

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!