Fixes and Changes
Please be sure to clear viewer cache (for each viewer in use) once the login region has been upgraded to this version. If you don't clear the cache, you may continue to experience inventory/outfit issues that have been resolved, but are still present because the viewer is still using older data that needs to be refreshed under the fixes. Clearing your viewer (inventory) cache will allow the fixes to be applied to your inventory:
- Fixed the inventory descendants fetching to return the folder contents including links without following the links. Fixes several problems with the descendants' folder trees being duplicated internally at the viewer end, and also problems with the expected item counts not matching the actual counts which leads the viewer to think the inventory is incomplete (it actually has too many). This also eliminates a series of false error conditions that flooded region consoles when someone logged into a region and may improve region performance during logins, as well as the performance of inventory loading after login.
- [LibreMetaverse] A critical fix to the underlying OMV/LMV library to specify the correct type ("link_f") for a folder link rather than the assumed type ("linkfolder"). This is critical in the Current Outfit folder (COF) and allows the viewer to recognize the current outfit more reliably. In combination with the fix above, this should allow the viewer to recognize that an outfit is fully loaded and which one it is. Hopefully, this will help or even fix Mantis 3162.
- User profile interests for the "I Want To" and "Skills" sections were reversed from what they should be. This resulted in the two areas of the profile appearing to become swapped every time someone changed them. (They were actually saved correctly with what the user wanted at save-time, but were displayed backwards.) This update fixes Mantis 948.
- Saving OAR files will now skip unknown/invalid UUIDs that can't be read from damaged assets. Previously this caused the OAR save or to fail with an exception. Reported by Vinhold as a null reference exception when
save oarwas called with a 1 (option to include assets). Note that InWorldz backups do not use this option and were unaffected.
- Fixed the viewer's sun position to be timezone-relative to UTC, but unaffected by DST. Keeps estate environment timing consistent between regions even after restarts on different sides of a DST change. Fixes Mantis 1863.
- Some tweaks to region limit checks to help debug reports of problems with the limits (and also for the user to better understand). Recording of hard and soft limits in the log show current usage and limit. User now sees a different message for hard and soft limits. Hard limit reached shows user the current usage and limit values. Soft limit just reports "Region estate limit has been reached" for the limit, since estate staff may temporarily set the limit very small to disable additional agent entry.
- Fixes for Mantis 760 and Mantis 1605: changed events now match the events sent in SL after object Edit form changes:
- Color changes now fire
- Alpha changes now fire
- Texgen mode (e.g. planar vs default) changes no longer fire a changed event at all (as in SL).
- Changes to prim shape now correctly trigger a
CHANGED_SHAPEevent, for both scripted and manual edit changes. Note: SL does not send any changed events AT ALL for scripted changes. Attempts to fix this problem broke some existing content in SL. However, Halcyon servers already send the changed events for scripted changes, so the same concern is unlikely to apply here. See SL JIRA report SVC-914 for more on that issue there (summary in the final comment at the bottom).
- Color changes now fire
- Made the inventory Library name configurable. This adds two new OPTIONAL configuration entries:
[StandAlone]section, the server now supports a
- Similaryly, in
- Added ability to specify the currency symbol at the region level. This is used in various notifications sent to the user, but has nothing to do with the symbol displayed in the top of the viewer window. This is done by specifying
[Economy]section of the
- The default currency symbol is "I'z$", although the hard-coded texts previously contained "$" in those places.
- Added optional economy-specific connection string:
EconomyConnString. If missing, it falls back to using
- Replaced some InWorldz-specific branding on error messages with more generic Halcyon text.
- Added "remote-admin" as an option for aquiring a JSON web token (JWT), matching the semantics for "remote-console".
- Added configuration options, fixups, and docs for the JWT certificate path. This makes the administrator able to specify the path for the certificates used to verify and create JWTs. It also updates the docs for the XMLRPC-based remote-admin.
SSLCertFilewill now be used for
http_listener_ssl_certif the latter is not specified.
- Refactored some repeated code: added common LocationURL, LocationURLPrefix, LocationShortCode operations. The localtion URL prefix can be specified in the
Halcyon.inifile using a
- Added voice chat support for Freeswitch servers.
- For more information, see the Readme.txt file.
- Some work has been applied to make Halcyon more compatible with Docker environments. There is a new
--background truecommand line argument to the GridServer, UserServer, and MessagingServer so they can be started in 'background mode' similar to Halcyon.exe. By adding the "--background true" CLI option that Halcyon already has, the processes do not prompt and idle at 0% CPU.
- The former disabling of Ctrl-C has been replaced with a server shutdown if received. (This isn't really technically part of the Docker support, but is a direct result of making it work better under Docker.)
- Considerable additional progress towards the Halcyon Arbiter project, and mapping between Halcyon objects and .fbs content. A detailed mapping between Halcyon primitives and flatbuffer types is complete. Work in progress continues.