0.7 Planning

Release 0.7 will be the first one featuring the completed major refactoring and rearchitecting work that happened during the second half of 2009 and the first quarter of 2010. This work targeted mainly the resource services and servers previously known as UGAIM. These servers have been replaced by one single server shell called ROBUST which can now run any combination of services in it. The services themselves have been reconceptualized; we now have the following set of main services:


 * Assets -- the asset store
 * Authentication -- passwords and auth tokens
 * Authorization -- access control
 * Avatar -- the visual representation of users, formerly known as "avatar appearance"
 * FreeSwitch -- voice
 * Friends -- social net
 * Gatekeeper -- hypergrid foreign users control
 * Grid -- maps map locations to IPs and regions
 * Grid User -- grid-local information about users
 * Inventory -- the inventory store
 * Login -- the login service
 * Presence -- tracks where in the grid user agents are
 * Profile (Basic) -- user profiles
 * User Accounts -- administrative info about users
 * User Agents -- hypergrid local users protection

The simulators access these services through abstract interfaces, therefore being isolated from implementation details. The services can now be seamlessly instantiated as plugins in any process, namely ROBUST server shells and the simulators processes themselves, which means that we have complete reuse of service code between standalone and grid configurations. The plugin specification is done in configuration files (.ini). Moreover, access to remote services is also seamlessly achieved through the instantiation of stubs (aka service connectors) as plugins; again, the specification of which stubs the simulators use is done externally in configuration files (.ini) -- this allows for alternative third-party implementations of the resource service infrastructure, of which there is already one (SimianGrid), without having to affect one line of code in the simulator.

Because the changes were extensive, we are dedicating particular attention to release 0.7. This page is the main planning document for it.

MUST DO features

 * InventoryService replaced by XInventoryService and corresponding connectors. (will keep an eye for issue reports)
 * GridUser service in place, replacing the home info storage that is currently done awkwardly by the presence service (done)
 * Estate owner feature restored, as a replacement of Master Avatar
 * Migrations for existing data? Justincc 17:36, 16 April 2010 (UTC) (fixed)
 * Finish HG1.5 client IP verification (done)
 * Finish up map tile regeneration feature: configu var + timer + console command. Make sure that GridRegion regionMapTexture is either updated or ignored. (probably won't happen for 0.7; it can be done later)

MUST FIX bugs

 * Assorted DB migration issues fleshed out and fixed (several mantis) (this may have been fixed with Melanie's patches; will keep an eye for specific issue reports)
 * 2549: Avatars always login into T pose Not fixable
 * 3522: After login sometimes the avatar is in over 10 kilometers height and looks to the stars (Fixed)
 * 4405: Even if object was attached to avatar, the attachment of the object comes off by next login. (I don't think this bug exists in 0.7dev code)
 * 4561: Set Home makes the users table show random values (fixed)
 * 4603 Remote Admin bugs (fixed)
 * 4613: IAR load/save (fixed)
 * 4622: Incoming connection requests fail if the agent is already present (fixed)
 * 4641: Library module (fixed)
 * 4658: service URLs in user accounts (won't fix, is working according to intention)
 * 4691: Gestures active on logout are not activated when logging in again (fixed)

MUST DO documentation

 * Improve ROBUST
 * Add 0.7 Troubleshooting

Plan

 * Address MUST DO features and MUST FIX bugs prior to branching 0.7.
 * Start documenting after branching
 * Fix critical bugs that show up after branching