User:Enus Linden/Office Hours/2008 August 1

From Second Life Wiki
< User:Enus Linden/Office Hours
Revision as of 10:33, 1 August 2008 by Enus Linden (talk | contribs) (New page: * [9:34] Tao Takashi: Hi * [9:35] Bartholomew Kleiber: Hi all * [9:35] Dahlia Trimble: hi :) * [9:35] [[User:Si...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
  • [9:34] Tao Takashi: Hi
  • [9:35] Bartholomew Kleiber: Hi all
  • [9:35] Dahlia Trimble: hi :)
  • [9:35] Sindy Tsure: waves hello
  • [9:35] Enus Linden: howdy eveyone
  • [9:36] Tomiko Magic: Enus is in a 'Call people mean for no reason' mood today, watch out.
  • [9:36] Sea Urchin: beanbag: Going to next texture.
  • [9:36] Tomiko Magic: >.<
  • [9:36] Enus Linden: i get grumpy when i see zebra stripes..... sorry
  • [9:36] Tomiko Magic: lol
  • [9:36] Tomiko Magic: Then don't look at them.
  • [9:37] Enus Linden: So, let's begin todays office hours with, surprise, talk about pyogp!
  • [9:37] Enus Linden: I'd like to give an overall status of the effort, discuss pyogp and support for the OGP Beta, and what's next
  • [9:37] Sea Urchin: beanbag: Going to next texture.
  • [9:37] Enus Linden: So.....
  • [9:37] Tomiko Magic: gives Tao a sandwich.
  • [9:38] Enus Linden: so, pyogp is not moving away from the architectural choices we made early on
  • [9:38] Enus Linden: zca and buildout will remain as part of the implementation
  • [9:39] Enus Linden: because they are helpful, and because we have ironed out som of the challenges they were presenting us initially
  • [9:39] Enus Linden: that said, i think future work like this should require a higher degree of initial planning
  • [9:39] Enus Linden: and group investigation
  • [9:40] Tomiko Magic:  : )
  • [9:40] Enus Linden: that there was turmoil made me sad :)
  • [9:40] Sindy Tsure: (hiya squirrel!)
  • [9:40] Squirrel Wood: Holla!
  • [9:40] Enus Linden: so for status on the work, Tao is exploring the event queu, Locklainn UPD, and Enus test scripts
  • [9:41] Enus Linden: Tao, what's up with the event queue?
  • [9:41] Enus Linden: or Locklainn, what's up with UDP work?
  • [9:41] Tao Takashi: basically it's working, I get a cap, post nothing to it and get nothing back after 20 secs, go back to 1)
  • [9:41] Enus Linden: we can get back to Tao
  • [9:41] Enus Linden: ooh sorry :P
  • [9:41] Tomiko Magic: lol
  • [9:41] Tao Takashi: tsts
  • [9:42] Tao Takashi: I am also working on some docs
  • [9:42] Tess Linden: hey, can I request a tutorial for newcomers?
  • [9:42] Tomiko Magic: Nuuu
  • [9:42] Tao Takashi: see [1]
  • [9:42] Locklainn Linden: what sort of tutorial tess?
  • [9:42] Tess Linden: is anyone here interested in a code walk through?
  • [9:42] Bartholomew Kleiber: me
  • [9:42] Enus Linden: I do think that wiki pointers, and more examples in the code base, would be useful. or, pointers to the doc tests
  • [9:43] Tomiko Magic: Yuss actualy that would really help people like me, who don't understand this stuff : )
  • [9:43] Saijanai Kuhn: me too
  • [9:43] Tao Takashi: I hope to cover some of that in those docs
  • [9:43] Tess Linden: but I'd like to ask a larger audience, because seems like most of us here have been in this office hours before
  • [9:43] Tomiko Magic: Jira issue PYO-3 has some Docs that would help with that, when done. Stuff like requirments etc.
  • [9:43] Saijanai Kuhn: I understand the parts, but the structure of the new system is vague to me
  • [9:43] Enus Linden: Sai, I think you could start taking a look now if you like. things are 'settling down' :D
  • [9:44] Bartholomew Kleiber: same here
  • [9:44] Tess Linden: docs don't always replace hands on tutorials, sometimes it helps, *shrug*
  • [9:44] Bartholomew Kleiber: with Tess
  • [9:44] Tomiko Magic: Oh hands on!
  • [9:44] Tomiko Magic: I didn't know that's what you meant, sorry lol
  • [9:44] Tao Takashi: I am not saying that I am against a tutorial ;-)
  • [9:44] Enus Linden: so I'll work on a newbie guide for the wiki
  • [9:44] Tao Takashi: I am just wondering how we can manage to look at the same code at the same time
  • [9:44] Saijanai Kuhn: If you need help, let me know, Enus
  • [9:44] Tess Linden: screen?
  • [9:44] Tomiko Magic: Tess
  • [9:45] Saijanai Kuhn: rez an html-on-aprim
  • [9:45] Tomiko Magic: There's a great er 'thing'
  • [9:45] Tomiko Magic: Where you can share your screen with others, it's been a while since I used it
  • [9:45] Estate Shepherd: netmeeting lol
  • [9:45] Saijanai Kuhn: but in on an animated scultpy of jellow
  • [9:45] Tomiko Magic: But I'll try find the info for you, so you can take a look
  • [9:45] Tao Takashi: meet in wonderland ;-)
  • [9:45] Enus Linden: html on a prim could work, the svn is available in html :)
  • [9:45] Tomiko Magic: lol
  • [9:45] Tess Linden: anyway, just a suggestion to get the newly involved gridnauts people working with the test harness
  • [9:45] Enus Linden: sure tess
  • [9:45] Tao Takashi: we will figure out how to do it
  • [9:45] Enus Linden: per testing, i do have this: https://wiki.secondlife.com/wiki/Pyogp/Client_Lib/testing
  • [9:46] Saijanai Kuhn: has Flash CS3 that he needs to learn how to use
  • [9:46] Enus Linden: which describes the test bits to a degree.
  • [9:46] Jumpman Lane: hi
  • [9:46] Carduccis Sticky: Green: puff puff pass... the air is full of weed smoke
  • [9:46] Sassypants Writer: hi
  • [9:46] Tomiko Magic: >.<
  • [9:46] Enus Linden: but it needs to include practical examples
  • [9:46] Enus Linden: while on the topic of tests, that's been my focus for the past week
  • [9:47] Sindy Tsure: at a higher level, what CG is working on over at his place seems like a great way to show how an overall architecture is laid out
  • [9:47] Jumpman Lane: h winds angl?
  • [9:47] Sindy Tsure: probably a higher level than is being talked about here, tho
  • [9:47] Enus Linden: I've gotten things sorted to a point where i'm about ready to point people at them. i've wrestled with test data issues
  • [9:48] Enus Linden: Locklainn, how comes the UDP front?
  • [9:48] Locklainn Linden: well,l I've been working on the message system
  • [9:48] Locklainn Linden: so that it can be used to send and receive udp messages
  • [9:48] Locklainn Linden: and send acks if they need be
  • [9:49] Locklainn Linden: (essentially, just what is needed to keep presence)
  • [9:49] Locklainn Linden: its coming along, think I've got receiving down
  • [9:49] Locklainn Linden: and I'm working on sending
  • [9:49] Saijanai Kuhn: any questons on athat, I'll be happy to answer as I can
  • [9:49] Enus Linden: will that be ready soonish? what sorts of challenges/roadblocks have you encountered?
  • [9:49] Locklainn Linden: should be ready soon
  • [9:49] Locklainn Linden: hopefully by the end fo the day
  • [9:50] Locklainn Linden: only roadblock I can see is testing
  • [9:50] Locklainn Linden: have to test real-tiem to see if it works
  • [9:50] Locklainn Linden: which means logging in and all that
  • [9:50] Locklainn Linden: but that's later
  • [9:50] Tao Takashi: I might try to use it at the weekend
  • [9:50] Enus Linden: well, i've stubbed out an interop teleport test script
  • [9:50] Enus Linden: we can test with that if you like : )
  • [9:50] Locklainn Linden: awesome
  • [9:51] Locklainn Linden: yea, I'll check it out
  • [9:51] Locklainn Linden: fyi, the message system won't contain the loop
  • [9:51] Locklainn Linden: it can be used within the loop
  • [9:51] Carduccis Sticky: Green: puff puff pass... the air is full of weed smoke
  • [9:51] Tao Takashi: I thought so
  • [9:51] Locklainn Linden: it is essentially driven by some outside source
  • [9:51] Saijanai Kuhn: hooray
  • [9:51] Tao Takashi: so I will experiment with some looping
  • [9:51] Locklainn Linden: yea
  • [9:51] Locklainn Linden: also, it should be used for both udp and http messages
  • [9:51] Tao Takashi: and probably eventlet and such things
  • [9:51] Locklainn Linden: though only udp is suppoorted right now
  • [9:52] Saijanai Kuhn: right, the client actually parses for UDP messages and sends them to the same handler whether they are from EQG or UDP
  • [9:52] Tao Takashi: so those are equivalent then?
  • [9:52] Locklainn Linden: yea, they use the same message format once they are serialized/deserialed
  • [9:52] Saijanai Kuhn: one is in binary and one is in LLSD-XML
  • [9:53] Tao Takashi: ok
  • [9:53] Tao Takashi: still sounds like a good use for protobufs to me :)
  • [9:53] Enus Linden: speaking of the event queue
  • [9:53] Locklainn Linden: *udp and llsd are same message format when not serialized, and when deserialized
  • [9:53] Enus Linden: Tess: your email to gridnauts included venet queue implementation details that aren't in the OGP docs
  • [9:53] Enus Linden: will the docs be updated to include details like these in the future?
  • [9:54] Tao Takashi: we should check at Zero's OH how we go in terms of protocol specification process
  • [9:54] Tess Linden: Enus: yes. I should also comment on Sai's email
  • [9:55] Saijanai Kuhn: sent an email... uh-oh
  • [9:55] Tess Linden: Please feel free to add questions/notes into the discussion page on the OGP doc
  • [9:55] Enus Linden: pyogp is kind of at the point where we can go to the protocol and craft tests against an implementation based on the details in the docs.
  • [9:56] Tess Linden: oops, I meant Tao's
  • [9:56] Carduccis Sticky: Green: puff puff pass... the air is full of weed smoke
  • [9:56] Enus Linden: my goal is to have tests that cover all the details documented, to reveal holes in docs, or bugs in the implementation in LL and Opensim
  • [9:56] LillyEvangeline Zessinthal: gave you Diadem Island Resort, Night Star (220, 81, 22).
  • [9:56] Saijanai Kuhn: was thinking that Alzheimer's had set in early this year
  • [9:56] Bartholomew Kleiber: lol
  • [9:57] Enus Linden: so, Opensim folks, please feel free to take a look at the tests and start running them against your accounts and regions.
  • [9:57] Enus Linden: I need to think of a way of separating out client tests vs agent domain tests vs region domain
  • [9:57] Saijanai Kuhn: a spec of new business. On gridnauts someone asked about using SLProxy. We should probably set up a PyProxy
  • [9:57] Tess Linden: If you guys take a look at OGP, theres lots of nuances that is implemented incorrectly
  • [9:57] Tess Linden: within the next month or so, we're going to cleanup all the notes
  • [9:57] Saijanai Kuhn: because teh AD stuff isn't woking the same way
  • [9:58] Enus Linden: i think simple dnaming the test scripts distinctly, and calling the test harness to run a specific file pattern for each group
  • [9:58] Tess Linden: it would be nice to write failing tests against the correct protocol
  • [9:58] Enus Linden: I agree tess
  • [9:58] Estate Shepherd: corner cases.. lots of those
  • [9:58] Estate Shepherd: the nominal uses will be well tested
  • [9:58] Tao Takashi: so maybe those workarounds should actually be removed and only added on demand
  • [9:59] Tao Takashi: we can make a workarounds.py which you can activate or not maybe
  • [9:59] Enus Linden: should protocols go the detail of describing e.g. the valid range of a real in the position returned in the response to rez_avatar/place?
  • [9:59] Enus Linden: otherwise, how can we test the boundaries?
  • [9:59] Sea Urchin: beanbag: Going to next texture.
  • [10:00] Enus Linden: unless we make assumptions about the boundaries?
  • [10:00] Tomiko Magic: Assumptions are always not a good idea?
  • [10:00] Tomiko Magic:  : )
  • [10:00] Tao Takashi: good question
  • [10:00] Tess Linden: enus: yes if there are restrictions... real is pretty straight forward, but like position for example should be positive
  • [10:00] Tao Takashi: maybe a z position does not need to be positive at some point? :)
  • [10:00] Tao Takashi: like in the Hell Region Domain
  • [10:01] Saijanai Kuhn: basements
  • [10:01] Enus Linden: so in practice, LL has a0-256 limit on x and y
  • [10:01] Tao Takashi: but this depends on the spec
  • [10:01] Carduccis Sticky: Green: puff puff pass... the air is full of weed smoke
  • [10:01] Tao Takashi: and it should be defined
  • [10:01] Saijanai Kuhn: does OPenSim have the same issues, BTW?
  • [10:01] Estate Shepherd: maybe even range checked?
  • [10:02] Enus Linden: i'm not familiar enough with OpenSim to know, but i can ssume : )
  • [10:02] Tao Takashi: we maybe should make a list of such open questions
  • [10:02] Tao Takashi: and go through them in some separate meeting to see what needs to be speced
  • [10:03] Enus Linden: so per tests, I'd like to see how we can go about testing against OpenSim regions
  • [10:03] Estate Shepherd: test for known failures too?
  • [10:03] Enus Linden: good point, yes
  • [10:04] Estate Shepherd: graceful failure
  • [10:04] Enus Linden: tests should test failures
  • [10:04] Tao Takashi: you can have separate test cases for this and configure them to be active
  • [10:04] Enus Linden: i have started this in e.g. test_ogplogin
  • [10:04] Tao Takashi: so you can even test the workarounds in the AD if you want to
  • [10:04] Tao Takashi: then you need a way to configure which tests to run though
  • [10:04] Tao Takashi: maybe inside some config
  • [10:05] Enus Linden: so far test cases include logging in and rezzing on a sim passes, auth of a known account passes and the response is appropriate, and auth for an unknown account fails and the response is appropriate
  • [10:05] Enus Linden: but we also need tests for bad inputs
  • [10:05] Tao Takashi: so maybe at some point it would be good to have our own testrunner which is more configurable
  • [10:05] Enus Linden: etc etc
  • [10:05] Enus Linden: more configurable in what sens etao?
  • [10:05] Tao Takashi: what tests to run and which not
  • [10:05] Enus Linden: right
  • [10:06] Enus Linden: so far, we can filter based on filename patterns
  • [10:06] Estate Shepherd: default to complete test suite maybe?
  • [10:06] Tao Takashi: looks at the test code
  • [10:06] Enus Linden: and that is whats run when no params are based in Estate, all tests
  • [10:06] Estate Shepherd: i would prefer to go wtf, and turn off tests of no interest to me.
  • [10:06] Tao Takashi: well, I think it would be good to have one configuration file which defines all tests and their parameters
  • [10:06] Tao Takashi: so you can save it somewhere and run it again whenever you need to
  • [10:06] Enus Linden: testconfig.cfg
  • [10:07] Saijanai Kuhn: which could be redirected to a GUI...
  • [10:07] Enus Linden: is something along those lines
  • [10:07] Tao Takashi: yes, that looks good
  • [10:07] Enus Linden: https://wiki.secondlife.com/wiki/Pyogp/Client_Lib/testing#Configuring_Interop_test_data
  • [10:07] Tao Takashi: maybe like buildout
  • [10:07] Tao Takashi: that you define as first part the tests you want to run
  • [10:07] Tao Takashi: then actually every test could first test if it's in that list
  • [10:07] Enus Linden: right, we don't have a proper test filter in place at this time
  • [10:08] Tao Takashi: but you also need to pass it to the test script somehow
  • [10:08] Tao Takashi: but I think something like this could work, shouldn't be too hard to implement
  • [10:08] Enus Linden: i believe testrunner has filters we could explore more
  • [10:08] Tao Takashi: aaaaand: All those params need documentation
  • [10:08] Tao Takashi: maybe you can also pass some parameters, that would be good
  • [10:09] Tess Linden: when we fix bugs, we'll try to do it test first. That way the failing test is there for the Opensim stuff too
  • [10:09] Tao Takashi: when we implement we should do it as well ;-)
  • [10:09] Tao Takashi: (test first)
  • [10:09] Saijanai Kuhn: points out the need for an optional GUI to do the same thing
  • [10:09] Enus Linden: wanna build it sai?
  • [10:09] Enus Linden: :D
  • [10:09] Tao Takashi: Sai: the GUI could write the testconfig yep
  • [10:09] Saijanai Kuhn: Sure, but need to know what I am targetting for a command structure
  • [10:10] Saijanai Kuhn: or just feed it in realtime with the right flag
  • [10:10] Tao Takashi: for a start it would be just writing the testconfig.cfg I think
  • [10:10] Tao Takashi: and running the testscript
  • [10:10] Saijanai Kuhn: K
  • [10:11] Tao Takashi: and maybe showing the output
  • [10:11] Tao Takashi: might be helpful ;-)
  • [10:11] Tao Takashi: the problem might be good reporting so that you also know what's actually wrong
  • [10:11] Tao Takashi: but actually it already looks pretty good :)
  • [10:12] Enus Linden: fwiw, zope.testing.testrunner doesn't at first glance support filter on test names, just the suites or filename patterns (or directory filtering)
  • [10:12] Enus Linden: we can explore down the road though
  • [10:12] Saijanai Kuhn: afk
  • [10:12] Tao Takashi: shouldn't be too hard to copy and modify it either
  • [10:12] Enus Linden: good point
  • [10:13] Tao Takashi: as said, you can do the test if a test runs inside the test
  • [10:13] Lucrezia Ah: gave you UNJUST UNFAIR WRONG!!.
  • [10:13] Tao Takashi: if "xyz" not in self.config.list: return
  • [10:13] Tao Takashi: and you might write a wrapper around the testrunner which sets the location of the testconfig.cfg in the environment
  • [10:14] Enus Linden: so I'd like to get to a point where the base test suites are working as expected, if incomplete in test case coverage, in a cpuple of days. i believe that we are nearly there, though i could use a code review to tell me what to improve
  • [10:14] Enus Linden: some of the implementation details are a little iffy
  • [10:14] Enus Linden: e.g. testconfig.cfg actually contains the data for testing right now
  • [10:14] Enus Linden: that should be renamed
  • [10:15] Enus Linden: any other topics/questions people haev on pyogp right now?
  • [10:15] Tao Takashi: the actual datafiles maybe should be just referenced
  • [10:16] Tao Takashi: I hope to have some time to look over it and maybe even run it :)
  • [10:16] Enus Linden: try after 5pm today for best results
  • [10:16] Tao Takashi: but what I see so far looks good to me :)
  • [10:16] Enus Linden: and, fwiw, the data config checked is is purely a template
  • [10:16] Tao Takashi: at least ogplogin
  • [10:16] Enus Linden: you will need to mock up and swap in your own data
  • [10:16] Tao Takashi: yep, guessed so
  • [10:17] Enus Linden: (no more enus checking in his passwords)
  • [10:17] Tao Takashi: didn't look like the LL passwd ;-)
  • [10:17] Tao Takashi: maybe those <256 could also be moved into the config...
  • [10:17] Tao Takashi: then you don't have to assume hardcoded ;-)
  • [10:17] Enus Linden: i agree there tao
  • [10:17] Tomiko Magic: I've gotta tp, Nice seeing you all! And all of your confuzzling chat! Be well. : )
  • [10:18] Sindy Tsure: cya, tomiko!
  • [10:18] Enus Linden: all data points used in test validation should be moved out
  • [10:18] Tomiko Magic: Bye bye grouchy Enus >.<
  • [10:18] Tomiko Magic: lol
  • [10:18] Tao Takashi: and maybe we can also have some defaults layer so you don't have to specify everything in the config gile
  • [10:18] Enus Linden: so that they are dynamic
  • [10:18] Tao Takashi: file
  • [10:18] Enus Linden: e.g. the login_uri to use
  • [10:18] Enus Linden: i realized that last night
  • [10:19] Enus Linden: but we can refactor away later : )
  • [10:19] Enus Linden: right now i'd like to be able to hand off the framework to gridnauts so folks can test with us this way
  • [10:20] Enus Linden: well, unless there are other topics....
  • [10:20] Enus Linden: adjourned in
  • [10:20] Enus Linden: 3
  • [10:20] Enus Linden: 2
  • [10:20] Sea Urchin: beanbag: Going to next texture.
  • [10:20] Locklainn Linden: wait
  • [10:20] Enus Linden: 1
  • [10:20] Locklainn Linden: just kidding :)
  • [10:20] Dahlia Trimble: lol
  • [10:20] Enus Linden: saved by the wait
  • [10:20] Bartholomew Kleiber: lol
  • [10:20] Enus Linden: crap
  • [10:20] Enus Linden: :P
  • [10:20] Enus Linden: thanks all!
  • [10:20] Estate Shepherd: ty
  • [10:20] Locklainn Linden: thanks, bye everyone!
  • [10:20] Sindy Tsure: wouldn't mind bears, if tess & locklainn have spares..
  • [10:20] Enus Linden: testing awesomeness coming soon to an email near you!
  • [10:20] Bartholomew Kleiber: thx and bye
  • [10:21] Sindy Tsure: already has an enus bear
  • [10:21] Locklainn Linden:  :)
  • [10:21] Dahlia Trimble: Yes, I'm missing a Locklainn bear
  • [10:21] Sindy Tsure: w00ts! ty, locklainn!
  • [10:21] Bartholomew Kleiber: I'd like bears too *blushes
  • [10:22] Sindy Tsure: you have to follow clues to get enus'!
  • [10:22] Enus Linden: i don't give em out for free lol
  • [10:22] Enus Linden: one must work!
  • [10:22] Bartholomew Kleiber: awww
  • [10:22] Tao Takashi: sorry, phone
  • [10:22] Tess Linden: thanks Enus
  • [10:22] Tao Takashi: but I guess we are through, right?
  • [10:23] Sindy Tsure: wonders if tess has a bear
  • [10:23] Enus Linden: yeah tao
  • [10:23] Tess Linden: flies away to escape
  • [10:23] Sindy Tsure: once the bear talk starts, that's usually the end
  • [10:23] Tao Takashi: so maybe I will then try tp tonight ;_)
  • [10:23] Sindy Tsure: oh! she stiffed me..
  • [10:23] Dahlia Trimble: no Locklainn bear? :(
  • [10:23] Saijanai Kuhn: yep, think so. Though, I'd like to see about workign up a pySLPRoxy at some point. Tried way back when wehn SLPRoxy wasn't workign on macs, but stopped when it started to
  • [10:24] Tao Takashi: what is SLProxy actually doing?
  • [10:24] Sindy Tsure: bye, all
  • [10:24] Tao Takashi: printing out packets?
  • [10:24] Enus Linden: sai, that should be easy enough
  • [10:24] Tao Takashi: I guess also intercepting and putting packets in the flow, right?
  • [10:24] Enus Linden: right tao
  • [10:24] Saijanai Kuhn: its a man in the middle catching all packets and letting you do things with them, either mod or delete or inject, or just display
  • [10:24] Tao Takashi: yeah, once we have the loop, that should be no problem
  • [10:24] Dahlia Trimble: it can grab, filter, and inject packets
  • [10:24] Dahlia Trimble: also interprets them
  • [10:24] Tao Takashi: maybe a good first example :)
  • [10:24] Saijanai Kuhn: all of which we can do (or almost can do)
  • [10:25] Tao Takashi: I will create a pyogp.sandbox folder if that's ok?
  • [10:25] Saijanai Kuhn: sure?
  • [10:25] Estate Shepherd: inject megaprims to make sure that its nor borked up?
  • [10:25] Enus Linden:  : )
  • [10:26] Tao Takashi: I will also do some other small adjustments like moving the init() and will post about this to the list
  • [10:26] Dahlia Trimble: poofs... bye all :)
  • [10:26] Tao Takashi: cya Dahlia
  • [10:27] Tao Takashi: is off then, too
  • [10:27] Tao Takashi: cya later
  • [10:28] Bartholomew Kleiber: laters