Pyogp/Chat Logs/Daily Meeting/23 jul 2008

From Second Life Wiki
Jump to navigation Jump to search
  • [09:30am] Saijanai: we meting today?
  • [09:30am] Locklainn: I guess
  • [09:30am] Locklainn: I can't log on
  • [09:30am] Saijanai: there's enthusiasm for you
  • [09:30am] Locklainn: haha
  • [09:31am] Locklainn: trying to get in
  • [09:31am] Saijanai: ah, I note the same problem
  • [09:31am] Locklainn: so maybe irc today?
  • [09:31am] MrTopf: I also can't login
  • [09:31am] Locklainn: ok, sounds like irc
  • [09:31am] MrTopf: osgrid
  • [09:31am] InfinityLinden: hmm.. so it's not just me having problems getting in
  • [09:31am] MrTopf: but IRC is ok for me
  • [09:32am] Locklainn: infinity, good for u? enus too?
  • [09:32am] InfinityLinden: good for me
  • [09:32am] enus: sure
  • [09:32am] Saijanai: hang on let me spam groupies. O wait
  • [09:32am] InfinityLinden: i got nothing to say... i got pulled off to work on other beta stuff
  • [09:33am] Locklainn: ok,
  • [09:33am] Locklainn: waiting or going?
  • [09:33am] enus: spamming on huddles is kinda unnecessary imo
  • [09:33am] Locklainn: true
  • [09:34am] Locklainn: enus, feel like going next then?
  • [09:34am] enus: k
  • [09:34am] • MrTopf encountered a bug in the LL AD
  • [09:34am] enus: i reworked the outline of the wiki structure
  • [09:34am] enus: and will try and start making edits
  • [09:34am] enus: i'll keep track of what i do and post
  • [09:34am] Locklainn: nice
  • [09:34am] MrTopf: cool
  • [09:34am] enus: MrTopf: I still see the deserialization error in libdev/trunk/bin/login
  • [09:35am] enus: would like to see that gone
  • [09:35am] MrTopf: what was the error message again?
  • [09:35am] MrTopf: I got one, too. complaining about text/html
  • [09:35am] MrTopf: with that new agent
  • [09:35am] MrTopf: we can talk about this after the round maybe
  • [09:35am] enus: and i would like to make a pretty wiki for running tests. a 'here's all the test and exactly how to run them to show our code works and the interop instance works'
  • [09:36am] Locklainn: nice
  • [09:36am] enus: no blockers
  • [09:36am] enus: done
  • [09:36am] Locklainn: i like that idea
  • [09:36am] MrTopf: you mean running the interop tests?
  • [09:36am] Locklainn: both
  • [09:36am] enus: that, plus the internal unit test
  • [09:36am] enus: s
  • [09:36am] MrTopf: well, I guess it's just bin/test normally but it would be good to explain how to run individual tests indeed
  • [09:37am] enus: i'll let InfinityLinden finish the initial interop test work before i worry about that wiki though
  • [09:37am] InfinityLinden: k
  • [09:37am] MrTopf: InfinityLinden: do you want me to rename that package? (where it's probably easier to create a new one and delete that one)
  • [09:37am] InfinityLinden: sure
  • [09:37am] InfinityLinden: i was gonna branch and do it thne
  • [09:38am] MrTopf: I also commented on your jira entry
  • [09:38am] InfinityLinden: but if you wanna do it before i branch, that works
  • [09:38am] MrTopf: well, as there is nothing inside it yet I think we can also directly rename it in trunk
  • [09:38am] MrTopf: ok, will do after this meetup then
  • [09:38am] MrTopf: so who's next? me?
  • [09:38am] Locklainn: tao, is the testharness (soon to be called interop) set up with a test runner to run tests?
  • [09:38am] MrTopf: Locklainn: yes, bin/testharness
  • [09:39am] InfinityLinden: which jira is that?
  • [09:39am] Locklainn: and that looks in where for the tests?
  • [09:39am] Locklainn: right in the folder?
  • [09:39am] Locklainn: the main one?
  • [09:39am] enus: (login servers are hosed right now btw, hence, no logins)
  • [09:39am] MrTopf: your ticket about the rename
  • [09:39am] MrTopf: it seatched the testharness egg for tests
  • [09:39am] enus: PYO-1
  • [09:39am] MrTopf: btw, does JIRA have RSS?
  • [09:39am] enus: no clue, but can find out
  • [09:40am] MrTopf: I didn't find an option but it would help a lot I think
  • [09:40am] MrTopf: ok, thanks
  • [09:40am] InfinityLinden: cool comment, btw... i agree the package names should have some relationship to the names in the spec
  • [09:40am] MrTopf: I commented on the versioning on gridnauts btw
  • [09:41am] MrTopf: so I cleaned up the buildout.cfg and will check it in shortly
  • [09:41am] InfinityLinden: re: rss... look at the little tiny XML link next to the word "Issue Details"
  • [09:41am] MrTopf: maybe you can then also update your working copies and check if your buildout and code still runs
  • [09:41am] MrTopf: I removed the svn checkouts and replaced them by eggs
  • [09:41am] enus: per spec and package: we want pyogp/docs/spec/ to contain: pyogp.lib.base and pyogp.lib.agentdomain and pyogp.interop type pages?
  • [09:42am] MrTopf: InfinityLinden: thanks, that's too obvious for my eyes
  • [09:42am] MrTopf: enus: with spec I mean the actual protocol definition now to be found at SLGOGP_Draft1
  • [09:42am] enus: ah
  • [09:42am] MrTopf: we discussed this yesterday during groupies on how to version it
  • [09:42am] InfinityLinden: blergh
  • [09:42am] InfinityLinden: that spec is out of date
  • [09:43am] InfinityLinden: and one of the things i've been working on the last day and a half is updating it
  • [09:43am] MrTopf: see https://lists.secondlife.com/pipermail/gridnauts/2008-July/000016.html
  • [09:43am] MrTopf: and Mark's answer (which I have to read)
  • [09:43am] MrTopf: well, at some point it hopefully will not be out of date anymore
  • [09:43am] Saijanai: Ifinity are you the new docs person?
  • [09:43am] InfinityLinden: nope
  • [09:43am] InfinityLinden: but i am one of the three ogp architects
  • [09:44am] MrTopf: I also added a jira ticket about implementing some generic pyogp error handling
  • [09:44am] InfinityLinden: so my output will often times be in written form
  • [09:44am] InfinityLinden: rather than executable form
  • [09:44am] MrTopf: which is good
  • [09:44am] InfinityLinden: Tao.. in what sense? generic how?
  • [09:44am] MrTopf: that's whyt I wanted to think about
  • [09:44am] InfinityLinden: what is the problem you're trying to solve?
  • [09:45am] MrTopf: but in general that we do not pass the 403 Forbidden but have some exception of our own we raise
  • [09:45am] MrTopf: with more domain specific information attached
  • [09:45am] InfinityLinden: well... there's a general feature of the architecture to use HTTP error codes for transport related errors
  • [09:45am] MrTopf: actually that's an urllib2.HTTPError which is raised there
  • [09:46am] InfinityLinden: and to return 200 with a serialized error code and reason for "application logic" errors
  • [09:46am] Saijanai: should we also be logging errors?
  • [09:46am] MrTopf: sure, but I would like to have more specific error messages instead of a generic HTTPError exception
  • [09:46am] InfinityLinden: well... you're free to do it that way, of course
  • [09:46am] MrTopf: Saijanai: that should be up to the application I think
  • [09:46am] InfinityLinden: but it may wind up being incompatible with our stuff here
  • [09:47am] Saijanai: well, to log them effectively, seems there neds to be a funnel through which error messages might pass
  • [09:47am] MrTopf: but what shall a component raise? an urllib2.HTTPError?
  • [09:47am] InfinityLinden: blergh. cross cutting concerns
  • [09:47am] MrTopf: what happens if eventlet is used?
  • [09:48am] InfinityLinden: this is one of the reasons i wanted to separate "core" from "net" functionality in the base
  • [09:48am] InfinityLinden: for "core" application-logic errors, we would raise a PyOGP specific exception
  • [09:48am] InfinityLinden: for HTTP errors, we would raise a HTTP error (or it's equivalent)
  • [09:48am] MrTopf: well, there is the network subpackage in my networking branch which probably is similar to what you envisioned
  • [09:49am] InfinityLinden: but if you want to use HTTP errors to denote agent domain errors, it's gonna get confusing pretty fast
  • [09:49am] MrTopf: here is one: http://svn.secondlife.com/trac/linden/browser/projects/2008/pyogp/pyogp.lib.base/branches/mrtopf-networklayer/pyogp/lib/base/network/exc.py
  • [09:49am] MrTopf: no, I don't want to do that
  • [09:49am] MrTopf: the network layer in that example now returns a generic HTTPError with error code and message
  • [09:50am] MrTopf: and is used by the application logic
  • [09:50am] MrTopf: which then can raise pyogp specific exceptions
  • [09:50am] MrTopf: I guess this is basically what you said
  • [09:50am] InfinityLinden: why don't we have an application exception.. yeah.. what you said
  • [09:50am] InfinityLinden: cool. i think we're on the same page
  • [09:50am] MrTopf: I am more talking about defining some of these exceptions
  • [09:51am] MrTopf: like the login method might want to return some Unauthorized exception or so
  • [09:51am] MrTopf: which in the end is of course triggered by a 403 in the network layer
  • [09:51am] MrTopf: but the app does not need to know about i
  • [09:51am] MrTopf: t
  • [09:51am] InfinityLinden: yeah.. so there are some reasons codes listed in the draft code
  • [09:51am] InfinityLinden: er
  • [09:51am] InfinityLinden: draft spec
  • [09:52am] InfinityLinden: and we're about to push out a few more reason codes for "maintenance"
  • [09:52am] MrTopf: yeah, I saw that. I will also use these and put those into my mockup agent domain for testing
  • [09:52am] MrTopf: what's your plan on maintenance now?
  • [09:52am] InfinityLinden: it's only about 3/4 baked, so we're going to have it go through one more review round internally
  • [09:52am] InfinityLinden: before discussing it publicly
  • [09:53am] InfinityLinden: maybe at Zero's OOs in the morning
  • [09:53am] MrTopf: k, cool
  • [09:53am] MrTopf: (though I still hope that these channels will be in the public someday )
  • [09:53am] InfinityLinden: but for right now, the idea behind maintenance is we want to a) make sure you don't have to reauthenticated every time you wanna check if maintenance is completed
  • [09:53am] InfinityLinden: and
  • [09:54am] InfinityLinden: b) you wanna give the client enough info so it can ask the server the right questions
  • [09:54am] MrTopf: I just hope you keep it out of the seedcap stuff, would make handling it easier
  • [09:54am] InfinityLinden: (like is maintanence for user so-and-so finished yet)
  • [09:54am] MrTopf: like some retry time I guess
  • [09:55am] InfinityLinden: probably not a seed cap
  • [09:55am] InfinityLinden: but a "maintenance cap"
  • [09:55am] MrTopf: ok, cool
  • [09:55am] enus: (MrTopf: imo, in this context, public channels are so noisy, it's g)ood to have a partially baked plan before approaching them
  • [09:55am] InfinityLinden: +1 enus
  • [09:55am] MrTopf: sure, but we manage it with Plone and many other open source projects
  • [09:55am] Saijanai: +10 enus
  • [09:55am] enus: Plone <> AWG
  • [09:56am] enus: so any more status type things?
  • [09:56am] MrTopf: because you discuss too much in-world, that's noisy indeed
  • [09:56am] Saijanai: no regrets about that Pooley thing, but you note I don't spam non-techie groups any more
  • [09:56am] enus: ty for that Sai
  • [09:56am] Locklainn: working on doing the packing for message building
  • [09:56am] MrTopf: Locklainn: are you planning to move that into a subdir?
  • [09:56am] enus: w00t Locklainn
  • [09:57am] Saijanai: and since that interesting incident with the Magic-bot/person/thing, I'm rethinking spamming period
  • [09:57am] Locklainn: I'm not sure. We haven't talked about directory structure
  • [09:57am] Locklainn: so I was going to leave it there until we made some decisions
  • [09:57am] InfinityLinden_ joined the chat room.
  • [09:57am] MrTopf: well, you have a common prefix in those filenames and somehow it calls for a directory
  • [09:57am] InfinityLinden_: hello? this thing on?
  • [09:57am] Locklainn: yea of course, but still
  • [09:57am] Locklainn: yep infinty
  • [09:57am] Locklainn: haha
  • [09:57am] Saijanai: 'lo
  • [09:57am] InfinityLinden_: just had a power hit here in the "south of market" office
  • [09:58am] InfinityLinden_: but yeah... maintenance will look like an error, but with a nextURL
  • [09:58am] MrTopf: ok
  • [09:58am] InfinityLinden_: and you keep hitting that url every N seconds until it gives you a seed cap
  • [09:58am] MrTopf: so for my main things is how we go about those two branches of mine
  • [09:59am] MrTopf: one is about grokifying things, the other about network layer
  • [09:59am] Locklainn: right
  • [09:59am] Locklainn: great question
  • [09:59am] MrTopf: InfinityLinden_: sounds good
  • [09:59am] enus: so status would be: 2 pending branchces to merge into the trunk, which has had commits since you branched?
  • [09:59am] MrTopf: yes
  • [09:59am] MrTopf: it might need some merge work but it should be ok
  • [10:00am] MrTopf: the network layer also would make the tests run without having to run the extra server
  • [10:00am] Locklainn: so, how do we go about getting things merged into the trunk?
  • [10:00am] enus: in this case we ought to freeze trunk for a lil while, let you merge em in, then move on
  • [10:00am] enus: ought others commit prior?
  • [10:00am] MrTopf: I can do it in my morning, then you all sleep anyway
  • [10:00am] InfinityLinden_: yeah.. and who's gonna be the merge-meister
  • [10:00am] enus: yep
  • [10:00am] whump joined the chat room.
  • [10:01am] MrTopf: Hi whump
  • [10:01am] enus: hmm, i could do it if i had experience with it
  • [10:01am] InfinityLinden_: ya wanna do merges based on a time-frame
  • [10:01am] enus:
  • [10:01am] InfinityLinden_: hey whump.. ya missed the big power outage... UPSes beeping and everything
  • [10:01am] whump is now known as whumpINT.
  • [10:01am] enus: once this initial flurry is done we can formalize timeframes and such (where's that damn roadmap already)
  • [10:01am] Locklainn: is that why login is down?
  • [10:01am] Locklainn: haha
  • [10:01am] enus: login was due to sys issues
  • [10:01am] MrTopf: well, in Plone we usually let the person merge who created the branch
  • [10:01am] whumpINT: brb interview
  • [10:01am] InfinityLinden_: but some folk do merges based on "every week" ... others do it "when the features are finished"
  • [10:02am] InfinityLinden_: anyone have any preferences?
  • [10:02am] MrTopf: because they know better what they changed and how to resolve conflicts
  • [10:02am] Locklainn: right, so it seems to me that the creator should be the merger
  • [10:02am] enus: Merge early and often
  • [10:02am] Locklainn: but we have to have guidelines on merging
  • [10:02am] InfinityLinden_: do we?
  • [10:02am] InfinityLinden_: guidelines?
  • [10:02am] Locklainn: I dunno
  • [10:02am] Locklainn: like
  • [10:02am] Locklainn: code review beforehand
  • [10:02am] Locklainn: or
  • [10:02am] InfinityLinden_: oh oh
  • [10:02am] Locklainn: pass all tests
  • [10:02am] Locklainn: or something
  • [10:02am] InfinityLinden_: sorry.. misread that
  • [10:02am] MrTopf: we can also discuss the merge timeframe on a branch by branch basis
  • [10:02am] InfinityLinden_: i thought you were saying we _had_ guidelines already
  • [10:02am] Locklainn: oh
  • [10:02am] MrTopf: some might be simple ideas which you experiment with and can be merged or not within a week
  • [10:02am] Locklainn: haha
  • [10:02am] Locklainn: have to have*
  • [10:02am] Locklainn:
  • [10:03am] MrTopf: some might be bigger refactoring which might need some time and should not be merged every week
  • [10:03am] InfinityLinden_: Tao.. tru... we can haev a merge schedule on a branch by branch basis
  • [10:03am] MrTopf: we can record them on the wiki
  • [10:03am] enus: so in this case: MrTopf ought to merge as soon as is convenient, and after confirming that tests pass in a merge branch
  • [10:03am] InfinityLinden_: 'k... i'm clearly gonna have to commit my tests
  • [10:03am] enus: model internally is something along the lines of
  • [10:03am] enus: 1. create a new branch oout of release
  • [10:04am] InfinityLinden_: and encourage others to build more tests and all that
  • [10:04am] MrTopf: sometimes I also have an idea and might create a branch to not disturb anybody. maybe something like this could also be a non-official branch
  • [10:04am] enus: merge feature branch to merge branch
  • [10:04am] enus: run tests
  • [10:04am] InfinityLinden_: so we'll have a way for peeps to know if they broke the tip
  • [10:04am] enus: merge to trunk
  • [10:04am] MrTopf: it would be good if tests would pass all the time
  • [10:04am] enus: i'd like to see that
  • [10:04am] enus: (i don't now myself)
  • [10:04am] InfinityLinden_: at least on the trunk
  • [10:04am] MrTopf: yes, on trunk
  • [10:04am] InfinityLinden_: (tests passing all the time)
  • [10:04am] Locklainn: right
  • [10:05am] MrTopf: maybe we should also setup a nightly test runner or so
  • [10:05am] enus: YES
  • [10:05am] enus:
  • [10:05am] Locklainn: so, maybe next week (or rest of this week) should be dedicated to testing all our current code to hell
  • [10:05am] MrTopf: but what's nightly?
  • [10:05am] enus: 7pm pst
  • [10:05am] enus: ?
  • [10:06am] MrTopf: well, doesn't matter really, I guess
  • [10:06am] InfinityLinden_: or do it every hour...
  • [10:06am] MrTopf: as long as it runs once a day
  • [10:06am] InfinityLinden_: like a mantra
  • [10:06am] MrTopf: well, if a test is broken I don't want an email about that every hour
  • [10:06am] enus: i'll take on getting this set up (even if i don;t end up doing it)
  • [10:06am] • enus handers to pjira
  • [10:06am] enus: wander
  • [10:06am] enus: s
  • [10:06am] enus: typing is hard
  • [10:07am] Locklainn:
  • [10:07am] enus: i gotta run.
  • [10:07am] MrTopf: enus: and our seriaization problem?!?
  • [10:07am] enus: do we agree MrTopf should merge shortly?
  • [10:07am] MrTopf: hm, typing is hard..
  • [10:07am] InfinityLinden_: sure
  • [10:07am] Locklainn: agreed
  • [10:07am] InfinityLinden_: i'll branch after his merge
  • [10:07am] Locklainn: so grok is in then?
  • [10:07am] InfinityLinden_: sure.. what the heck
  • [10:07am] enus: do we know the nature of the serialization issue?
  • [10:07am] Locklainn: ok
  • [10:07am] InfinityLinden_: what's one more dependency that might not work on everyone's platform
  • [10:08am] MrTopf: enus. in my case at least it's your AD
  • [10:08am] Locklainn:
  • [10:08am] MrTopf: which returns a text/html header
  • [10:08am] MrTopf: instead of application/llsd+xml
  • [10:08am] tess joined the chat room.
  • [10:08am] Locklainn: hmm
  • [10:08am] MrTopf: and no deserializer for text/html is found because there is none defined
  • [10:08am] MrTopf: we can register the llsd one for text/html as well of course
  • [10:08am] MrTopf: but it seems more to be a bug
  • [10:08am] Locklainn: they redeployed some stuff
  • [10:08am] Locklainn: I wonder if that is what caused the break
  • [10:09am] MrTopf: not sure if this is the same error you had though
  • [10:09am] enus: we need a spec to reference to say "this implementation is bad because the spec says it should be X when it's Y"
  • [10:09am] InfinityLinden_: hmm... we're spitting out a text/html header on agent0.aditi.lindenlab.com?
  • [10:09am] MrTopf: this would be one test case to collect maybe
  • [10:09am] MrTopf: on login
  • [10:09am] MrTopf: payload is LLSD though
  • [10:09am] enus: can you add that to the list InfinityLinden?
  • [10:09am] InfinityLinden_: sure
  • [10:09am] InfinityLinden_: i'll also talk to tess
  • [10:09am] enus: ty
  • [10:10am] MrTopf: in fact if you base interop tests on the lib you now would have a failing test
  • [10:10am] enus: yep
  • [10:10am] MrTopf: I am not sure if maybe the redirect is the problem
  • [10:10am] enus: meeting needs to end so i can run
  • [10:10am] tess: I think those should be bugs opened in Jira
  • [10:10am] MrTopf: ah wait, it's not on login
  • [10:10am] tess: (comment on what Enus said)
  • [10:10am] enus: i agree tess
  • [10:11am] MrTopf: it's on retrieving a cap I think
  • [10:11am] enus: i will do so this morning
  • [10:11am] MrTopf: let me check again
  • [10:11am] MrTopf: is there a project for the beta where I put these?
  • [10:12am] enus: tess/whump, where should OGP jiras go?
  • [10:12am] MrTopf: it's on trying to retrieve the place_avatar cap from the seedcap
  • [10:12am] tess: I deployed what was on agent1 onto agent0
  • [10:12am] whumpINT: enus: I can answer that as soon as I get out of the interview.
  • [10:12am] tess: that included rdw's patch for eventlet, but probably some others too
  • [10:12am] MrTopf: <?xml version="1.0" ?><llsd><map><key>lastname</key><string>Magic</string><key>firstname</key><string>Zope</string><key>caps</key><map><key>place_avatar</key><string>https://agent0.aditi.lindenlab.com:12043/cap/71db5957-58da-11dd-8a92-005045bbae52</string></map></map></llsd>
  • [10:12am] MrTopf: Date: Wed, 23 Jul 2008 17:11:52 GMT
  • [10:12am] MrTopf: Content-Length: 275
  • [10:12am] MrTopf: Content-Type: text/html
  • [10:12am] whumpINT: Otherwise
  • [10:12am] Saijanai: BTW, are we putting this conversation up as the daily huddle log?
  • [10:12am] enus: cool whump
  • [10:12am] tess: public jira, and theres a tag for viewer verses agent domain verses region domain
  • [10:12am] enus: and yes sai
  • [10:12am] InfinityLinden left the chat room. (Connection timed out)
  • [10:13am] enus: great tess, thanks
  • [10:13am] whumpINT: http://wiki.secondlife.com/wiki/Open_Grid_Public_Beta/Issue_Tracking
  • [10:13am] enus: ty whump
  • [10:13am] tess: ohh cuz we changed it to rez_avatar/place
  • [10:13am] whumpINT: let me know the ID and I'll attach it to the main tracking task
  • [10:13am] tess: ... is that the issue? oh... content type is wrong
  • [10:13am] whumpINT: we'll go over this in office hours as well
  • [10:14am] MrTopf: thx whumpINT
  • [10:14am] MrTopf: tess: yep
  • [10:14am] enus: MrTopf: would you file this, or should I? I have a commitment i need to get to right now
  • [10:14am] MrTopf: is that the name of the cap? "rez_avatar/place" ?
  • [10:14am] enus: transcript is ending....
  • [10:14am] MrTopf: sounds strange
  • [10:14am] enus: Here
  • [10:14am] InfinityLinden_: 'k.. cheers all
  • [10:14am] MrTopf: I am filing it right now
  • [10:14am] Locklainn: ok, thanks everyone
  • [10:14am] MrTopf: enus: please check later if this is the same problem as you had
  • [10:15am] enus: it is MrTopf
  • [10:15am] MrTopf: k
  • [10:15am] tess: MrTopf: yes "rez_avatar/place" is the name now, although i didnt remove the old "place_avatar" yet to not break stuff