This Week in OpenSim Dev – week ending Saturday 21st June 2008 June 23, 2008Posted by justincc in opensim, opensim-dev, opensim-news, secondlife, twiod.
Hello everybody. This is a short summary of OpenSim development for the past week up until the end of last Saturday, as culled from our source code repository logs. The changes picked out are prominent user visible changes – most refactoring and stability revision are left out, unless they’re of particular interest. The numbers in brackets are the final svn revision numbers in which the work was completed for this week. This is right at the cutting edge so there is no guarantee that this functionality is stable.
From this week onwards, as well as listing features and bug fixes significant to users, I’m going to start listing major infrastructure work going on in the project. This is going to be a little more impressionistic than the features/bug fixes section, but hopefully it will give a better picture of how OpenSim is evolving from week to week.
This week in OpenSim ( r5110 – r5176 )
- This week, ckrinke released OpenSim version 0.5.8 alpha (r5111). The source can be downloaded here. Since OpenSim is still in alpha, we do not yet release official binary builds.
Features & bug fixes
- Dahlia contributed a patch to implement high accuracy and precision collision meshes for the prim types box, cylinder, and prism (r5114).
- Dahlia contributed a patch to implement the Linden viewer editor parameters twist, dimple, path cut, and profile cut to the sphere mesh for meshmerizer/ODE (r5155).
- sdague implemented a database migration so that MySQL now stores asset uuids in standard dashed format as used by sqlite, rather than as a binary field. Databases in the old format will be automatically upgraded, which may take some time if you have a large number of assets (r5122).
- Teravus implemented a feature such that region servers now make their map images available via http. For instance, if you had a region with the uuid cc4583cd-269b-41bf-a525-dd198e19a5c5 at the IP address 192.168.1.127 using the default http_listener_port of 9000, the map image would be available at
(sorry for the line splits, I should get a wider theme). The new osgrid map makes use of this facility (r5137).
- Jonc contributed a patch to implement terrain bake from the region/estate dialog. This patch also contributes code to respect the terrain_raise_limit and terrain_lower_limit values in the estate settings xml file when terraforming, and handles negative values in this xml file (r5156).
- mikem contributed a patch to solve a potential infinite loop in llParseString2List() (r5160).
- Teravus added region ban capability to regions through the Linden client gui. This is only currently implemented for MySQL (r5168).
- I made a small change to remove some redundancy in the xml which allows prim region crossing. Please note, that if region A is before this revision and region B is past it, prim crossings (which includes attachments) will not work properly when moving from region A to region B until region A is updated (r5175).
- sdague added a proper database migration infrastructure. This is a very good thing, since up until now, database migration has been very adhoc and difficult to perform. This will make it easier to preserve existing data as the project evolves.
- sdague continued to work on NHibernate support for data storage or assets, inventory, etc. This will hopefully eventually allow us to support more databases through NHibernate – we won’t have to write plugins for these ourselves.
- I continued to work on a region data archiver/dearchiver. Currently, we have a load-xml2/save-xml2 facility to save and reload region prim data from a file. This does not save or reload the assets required for those prims. The archiver aims to save out and reload the additional data required to fully realize objects. This facility will initially only be accessible from the region console command line. More information as things mature over the coming weeks.
- joha1 implemented plugin support for ClientStack, with LindenUDP as one plugin. This is cool since it means that people can now more easily experiment with alternative communication protocols for OpenSim.