0.7.6 Release

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Changes)
(Changes)
Line 35: Line 35:
 
* Websockets support added to the builtin HTTP server used by OpenSimulator.  This allows experiments with using Websockets to communicate with an OpenSimulator instead of UDP and long-poll mechanisms such as the HTTP event queue used in the Linden Lab protocol.
 
* Websockets support added to the builtin HTTP server used by OpenSimulator.  This allows experiments with using Websockets to communicate with an OpenSimulator instead of UDP and long-poll mechanisms such as the HTTP event queue used in the Linden Lab protocol.
 
* Region modules and other codes (though not scripts) can now expose [http://www.jsonrpc.org/specification JSON-RPC] handlers for external calls.
 
* Region modules and other codes (though not scripts) can now expose [http://www.jsonrpc.org/specification JSON-RPC] handlers for external calls.
 +
* Internal HTTP server reliability improved.
  
 
=== General Simulator ===
 
=== General Simulator ===
Line 50: Line 51:
 
=== Mesh/Sculpt ===
 
=== Mesh/Sculpt ===
 
* Mesh upload now correctly rotates the constituent parts of the mesh object to match the preview.
 
* Mesh upload now correctly rotates the constituent parts of the mesh object to match the preview.
 +
* Mesh upload no longer fails if another user has entered and exited the region.
  
 
=== Avatars ===
 
=== Avatars ===
Line 55: Line 57:
 
* Changing the running flag in scripts in attachments is now correctly saved without having to detach the attachment.
 
* Changing the running flag in scripts in attachments is now correctly saved without having to detach the attachment.
 
* A worn item no longer becomes invalid if is renamed after being edited in the same viewer session.
 
* A worn item no longer becomes invalid if is renamed after being edited in the same viewer session.
 +
 +
=== Teleport ===
 +
* Teleport cancellation improved.
  
 
=== Physics ===
 
=== Physics ===
Line 96: Line 101:
 
* llTransferLindenDollars() made available.  However, any action on money transfers still has to be performed by a third-party module.
 
* llTransferLindenDollars() made available.  However, any action on money transfers still has to be performed by a third-party module.
 
* llCastRay() significantly improved.
 
* llCastRay() significantly improved.
 +
* llGetObjectDetails() now correctly returns the world rotation of a sitting avatar rather than its local rotation with respect to the seat.
 +
* llGetNotecardLine() and llGetNumberOfNotecardLines() will no longer occasionally lose dataserver calls if the same notecard is read simultaneously by different scripts.
 
* llGetObjectDetails() can now be used with the OBJECT_CHARACTER_TIME, OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE, OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ constants.  Those associated with pathfinding currently returns dummy values since OpenSimulator currently has no pathfinding implementation.
 
* llGetObjectDetails() can now be used with the OBJECT_CHARACTER_TIME, OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE, OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ constants.  Those associated with pathfinding currently returns dummy values since OpenSimulator currently has no pathfinding implementation.
 
* Default particle count (PSYS_SRC_BURST_PART_COUNT) on calling llParticleSystem() is now 1 instead of 0.
 
* Default particle count (PSYS_SRC_BURST_PART_COUNT) on calling llParticleSystem() is now 1 instead of 0.
 
* llSetPrimParams() can now correctly disable flexi.
 
* llSetPrimParams() can now correctly disable flexi.
 +
* osGetPrimitiveParams() now works correctly for prims with the same owner as the executing script, rather than for prims with different owners.
 +
* C# scripts now correctly return error line and column numbers.
  
 
== Acknowledgements ==
 
== Acknowledgements ==

Revision as of 15:35, 26 September 2013

Contents

Release Notes

General

These are draft release notes for a package which is not yet available.

Welcome to OpenSimulator 0.7.6 release candidate 1, an open-source multi-user 3D virtual environment and metaverse server platform.

As ever, OpenSimulator is a highly complex piece of software. It's very likely but not guaranteed to work and various usage scenarios (standalone, grid, hypergrid, etc.) in combination with different dependencies (e.g. different versions of mono on Linux/Mac) can produce unexpected or unstable behaviour.

If you are upgrading from a version prior to 0.7.x, make sure to read the 0.7 Release notes. There have been extensive changes in OpenSimulator from 0.6.x to 0.7.

When you are upgrading, we strongly recommend that you start off with the default configuration files and port over any changes you made to your older version of OpenSimulator.

As this is a wiki page, please feel free to update it with more information about migration or other issues as and when these come to light.

You can download this release of OpenSimulator from http://opensimulator.org/wiki/Download

Known issues

  • Arbitrary key:value storage for regions has not yet been implemented for SQLite or MSSQL. This is necessary for temporary attachments settings to be persisted. This functionality is considered experimental.
  • Regression in RLV functionality where objects given via the llGiveInventoryFolder() function with a folder name with the format #RLV/~gift are still placed in the #RLV folder but now with the name still as "#RLV/~gift" rather than just "~gift". This is being addressed in http://opensimulator.org/mantis/view.php?id=6311. Any help from viewer developers on this would be much appreciated.
  • No form of prim equivalence is implemented for meshes.
  • Loading scripts from the library section of inventory does not work properly.

Requirements

OpenSimulator requires:

  • .NET Framework 3.5 when running under Windows.
  • At least Mono 2.4.3 when running under Mono (Linux or Mac). Mono 2.6.x and Mono 2.10.x onwards work well. Mono 2.8.x versions are reported as less stable in some situations. OpenSimulator should also run under Mono 3.0.3 and later although, as with Mono 2.10 and earlier, there are still issues when running under the optional new sgen garbage collector.

Backwards Compatibility Notices

  • This release includes database migrations but these should be backward compatible with OpenSimulator 0.7.5 (i.e. one could rollback to the previous version of OpenSimulator if necessary without also rolling back the database). However, this is not a guarantee - please always backup your data before migrating from earlier OpenSimulator versions.

Changes

General Server

  • Websockets support added to the builtin HTTP server used by OpenSimulator. This allows experiments with using Websockets to communicate with an OpenSimulator instead of UDP and long-poll mechanisms such as the HTTP event queue used in the Linden Lab protocol.
  • Region modules and other codes (though not scripts) can now expose JSON-RPC handlers for external calls.
  • Internal HTTP server reliability improved.

General Simulator

  • New functions added to JsonStore Module, which allows scripts and region modules to share structured data between themselves.

Configuration

Services

Hypergrid

  • There is now a [Hypergrid] configuration section in bin/config-include/*.ini files for standalone and grid. Here, a HomeUri and GatekeeperURI can be set which will apply to all other sections unless specifically overriden. The previous configuration arrangements where these settings were made separately in all relevant sections will continue to work. See Installing and Running Hypergrid for more details.

Objects

Mesh/Sculpt

  • Mesh upload now correctly rotates the constituent parts of the mesh object to match the preview.
  • Mesh upload no longer fails if another user has entered and exited the region.

Avatars

  • Avatars now roll when flying.
  • Changing the running flag in scripts in attachments is now correctly saved without having to detach the attachment.
  • A worn item no longer becomes invalid if is renamed after being edited in the same viewer session.

Teleport

  • Teleport cancellation improved.

Physics

  • A very large number of improvements were made to the BulletSim physics engine plugin, including improvements to avatar movement, collision detection, linksets, mesh, physical objects, physical properties, terrain and vehicles. It should general perform better than the OpenDynamicsEngine plugin and has much better behaviour in many situations (e.g. vehicles). In this release it is not yet default and has to be switched to explicitly in config.
  • An osGetPhysicsEngineType() OSSL function to allow scripts to determine what physics engine they are running under.

Sound

  • No noteworthy changes in this release.

Parcels/Region/Estates

  • Administrators and estate owners are no longer blocked from entering a region with a misconfigured telehub.
  • Estate settings are now obeyed for sub position on a region.
  • The IRC module will now alert users when they enter a region where it is active.

Map

  • Different regions on a single simulator can now use different fixed map tiles. This is specified using the MaptileStaticUUID optional setting in the region configuration file.

Instant Messaging

  • OpenSimulator now comes with a core message save and redelivery system for offline avatars. This is not currently enabled by default.

Friends

  • No noteworthy changes in this release.

Archiving

  • Inventory Archive (IAR) loads will now skip corrupted coalesced objects rather than terminating the load.
  • Specifying "/" as the inventory path in the "save iar" command will now save just the root folders instead of also saving the parent "My Inventory" folder. This makes it easier to restore entire avatar inventories. Previously, this could also be done by specifying the path "/*".

NPC

Inventory

Groups

A groups service was added directly to the OpenSimulator core distribution. This has been reliable but is not yet enabled by default. External documentation is also scarce - please see the [Groups] section in the OpenSim.ini config file and in other relevant config files for instructions on how to enable it.

Monitoring

Test

Scripting

  • Scripts can now run with co-operative termination rather than forced. This should be more stable since it does not rely on thread aborts where there is a non-zero chance that the Mono/.NET virtual machine will be left in an inconsistent state. However, this feature is still considered experimental. See the ScriptStopStrategy in the [XEngine] config section of OpenSimDefaults.ini for more details.
  • llTransferLindenDollars() made available. However, any action on money transfers still has to be performed by a third-party module.
  • llCastRay() significantly improved.
  • llGetObjectDetails() now correctly returns the world rotation of a sitting avatar rather than its local rotation with respect to the seat.
  • llGetNotecardLine() and llGetNumberOfNotecardLines() will no longer occasionally lose dataserver calls if the same notecard is read simultaneously by different scripts.
  • llGetObjectDetails() can now be used with the OBJECT_CHARACTER_TIME, OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE, OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ constants. Those associated with pathfinding currently returns dummy values since OpenSimulator currently has no pathfinding implementation.
  • Default particle count (PSYS_SRC_BURST_PART_COUNT) on calling llParticleSystem() is now 1 instead of 0.
  • llSetPrimParams() can now correctly disable flexi.
  • osGetPrimitiveParams() now works correctly for prims with the same owner as the executing script, rather than for prims with different owners.
  • C# scripts now correctly return error line and column numbers.

Acknowledgements

Many, many thanks to all the developers, testers and community members who contributed to this release and who help out with OpenSimulator generally. Your hard work makes this all possible.

Personal tools
General
About This Wiki