Difference between revisions of "PyOGP"

From Second Life Wiki
Jump to navigation Jump to search
Line 5: Line 5:


== Open Topics ==
== Open Topics ==
#Repository - While initially a Linden hosted svn repository was on the table, current preference seems to be [http://www.selenic.com/mercurial/wiki/ Mercurial]. There are various advantages to using an externally hosted hg repository, primary among them a notion that it compliments a distributed open source environment such as ours in it's accessibility and simplicity. LL is hoping to set up an externally available repository post haste.
#Repository - So Mercurial, aka hg, was looking promising, but we decided internally that we aren't quite ready for that. There is a move toward Mercurial internally, but we need to work this out before moving forward with it on this effort. It is quite possible that this library and test harness work will become a guinea pig for hg with Linden Lab in the open source arena. Until then, I bring you pyogp on SVN: http://svn.secondlife.com/trac/linden/browser/projects/2008/pyogp.
#License - The Apache V2 License has been suggested by various parties as being appropriate for our work (Zha Ewry, Rob Linden). [[Chttp]] is distributed under this license, and seems to be an apt model. Read up about the license definition at http://opensource.org/licenses/apache2.0.php.
# Contributions - As we are going to be hosting the source code for this, contributions will be subject to Linden Lab's standard [http://secondlifegrid.net.s3.amazonaws.com/docs/SLVcontribution_agmt.pdf contributor's agreement]. I hope this doesn't prevent good work here...
#License - The Apache V2 License has been selected as the license of choice for pyogp (or whatever name we agree upon, see next point).
#Naming (I'd like to not debate for an hour on these. Tao had suggestions, I like em. Please speak up if you have strong reservations about the suggested naming).
#Naming (I'd like to not debate for an hour on these. Tao had suggestions, I like em. Please speak up if you have strong reservations about the suggested naming).
#*Python client library name - pyogp
#*Python client library name - pyogp

Revision as of 21:31, 16 June 2008

Overview

AWG and Linden Lab plan to share the effort in writing a test harness which executes tests against implementations of the Open Grid Protocol (OGP). The intent is not to test SL or OpenSim (or gridX) themselves. Rather, the desire is to create a framework where the implementations of the protocols can be tested in any virtual environment implemented per the Open Grid Protocols as documented. We plan to be able to test at the smallest functional level possible, akin to unit testing, and to have the ability to use the framework to sequence steps to enable state specific tests to be run.

The longer term vision is essentially a client library, capable of navigating the grid and interacting with the various hosts, sitting next to a testing framework, happily running along telling us what works where, and where something needs a little attention to work according to specification...

Open Topics

  1. Repository - So Mercurial, aka hg, was looking promising, but we decided internally that we aren't quite ready for that. There is a move toward Mercurial internally, but we need to work this out before moving forward with it on this effort. It is quite possible that this library and test harness work will become a guinea pig for hg with Linden Lab in the open source arena. Until then, I bring you pyogp on SVN: http://svn.secondlife.com/trac/linden/browser/projects/2008/pyogp.
  2. Contributions - As we are going to be hosting the source code for this, contributions will be subject to Linden Lab's standard contributor's agreement. I hope this doesn't prevent good work here...
  3. License - The Apache V2 License has been selected as the license of choice for pyogp (or whatever name we agree upon, see next point).
  4. Naming (I'd like to not debate for an hour on these. Tao had suggestions, I like em. Please speak up if you have strong reservations about the suggested naming).
    • Python client library name - pyogp
    • Python test framework (unittest/doctest) - ogptest

Components (and supporting environmental details)

These are the currently envisioned components.

  1. Login
  2. Caps (and while it's around the UDP pipe)
  3. Message Handlers (see chttp)
  4. Basic web server parts for the Agent, Region and grid bits (ideally a snap in framework)
  5. Test framework - unittest, doctest
  6. Test data (I put this here, not really as a component of the harness, more as a "i'm not telling you my test account's password and what are we gonna do about it" thing)


Tao Takashi has hit the ground running with an experimental framework which has been made available here. Read more at his blogpost describing the start of his work at his very long url. Once a repository is available, I'd plan to pull this in.

Links and the Like

Please add to the list as you see fit. The more we throw in here, the better off we are in the long run.

  1. OGP documentation - request has been made to keep docs more current
  2. AWG Test Harness
  3. Related scripting efforts
  4. Related AW Groupies Chat Logs

Picture of the Moment

  1. 05/29/08: Using quite nasty code, a first contact of sorts via python into the agent domain and onto a simulator:
    pyogp and ad enabled sl viewer on a vaak sim via aditi's agent domain