On February 27, 2020 at 10:10:28 AM, Oz Linden (Scott Lawrence) ( o...@lindenlab.com) wrote:
On 2020-02-27 08:21 , Cinder Roxley wrote: On February 25, 2020 at 2:17:16 PM, Henri Beauchamp (sl...@hotmail.com) wrote: On Tue, 25 Feb 2020 10:48:03 -0500, Oz Linden (Scott Lawrence) wrote: Sadly, you used an LLSD sub-array into the LLSD map, and "old" viewers (i.e. all viewers not based on LL's v3 viewer code for the XML RPC part) do not know what to do with such an array (they can only deal with simple key/value pairs, not with key/arrays); this was the case of my viewer (but I thankfully and by pure "luck" noticed the issue a few weeks before LL did stealthily modify the login server on the main grid, because the beta grid already had the changes which caused me to fail to login in it at that time, and I could diagnose and fix the issue). Lost a day out of my weekend diagnosing and resolving this in LibreMetaverse/Radegast-ng. It really is a death blow to the unmaintained OMV library. Heads up before this kind of deployment would be very appreciated. The definition of LLSD and our open source implementations of it have always included the possibility of arbitrary nesting in arrays and maps (and we use it extensively internally without problems). We're not able to constrain our designs to maintain compatibility with incomplete implementations we may not even know about, much less ones that are unmaintained. Understood. Naturally, the onus for compatibility is on the client developer. In this case, the failure happened because the XmlRpc library being utilized is poor quality… most C# XmlRpc libraries are. This has been remedied in LibreMetaverse/Radegast. I had only wanted to mention advanced warning is appreciated because these “rouge” implementations do exist and people use them to connect. Seconded. Always appreciated when API changes are documented on the wiki as well. I admit that I expected that an entry in a map that you didn't expect wouldn't be a problem; I assumed that it would be ignored (as it is in ours) and that it would be more useful to give you changes when there was something you could test against. I suggest that in the future your implementations be guided by Postel's Law. <https://en.wikipedia.org/wiki/Robustness_principle> Indeed. I have no commit access to OMV (which is why I forked Libremetaverse) and a lot of it hrmmmm… questionable to say the least. :) That having been said, we'll try to provide more advance warning for future changes when possible. Note that the further in advance the notice comes, the less specific and actionable it can be. Thanks kindly, Oz. I do appreciate the notice and communication you and the rest of the lab have and do provide via this list, open e-mail inboxes, meetings, and wiki articles. It’s a lot more developer support than I’ve had from Mojang and other companies writing third party addons and I don’t take that for granted.
_______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/OpenSource-Dev Please read the policies before posting to keep unmoderated posting privileges