Chat log from the meeting on 2019-10-15

[11:03] Gavin.Hird @grid.xmir.org:8002: Hi Andrew

[11:03] Selby.Evans @grid.kitely.com:8002: hi Andrew

[11:03] Andrew Hellershanks: Hello, everyone.

[11:03] Leighton.Marjoram @grid.outandproud.life:8002: Hi Andrew

[11:04] Kayaker Magic: Start of Meeting!

[11:04] Andrew Hellershanks: Kayaker, yup. :)

[11:04] Andrew Hellershanks: I was just soldering the last wire on an adapter I'm building. Just got it done in time. :)

[11:05] Kayaker Magic: First question: Where does the viewer script editor get the help line for OSSL functions?

[11:05] Gavin.Hird @grid.xmir.org:8002: depends

[11:05] Gavin.Hird @grid.xmir.org:8002: Dayturn gets it from an xml in app_settings

[11:05] Bill Blight: yeah, a syntax file, but depends on the viewer

[11:05] Bill Blight: FS actually actively updates from the web

[11:05] Andrew Hellershanks: Are there some OS functions that aren't being highlighted correctly?

[11:06] Gavin.Hird @grid.xmir.org:8002: keywords_lsl_default.xml

[11:06] Ubit Umarov: correct way should be, from file, then overriden by region provided information

[11:06] Bill Blight: There are some, and some that are not even there, and some that are there that don't exist

[11:06] Bill Blight: I agree with Ubit,

[11:06] Kayaker Magic: So when I add a new OSSL function, where do I go to add a help line for it?

[11:07] Ubit Umarov: fs kinda does that, but does let override the ones on file

[11:07] Bill Blight: but FS will not include things from the server that it already has ... (I'm going to take a hammer to that at some point)

[11:07] Ubit Umarov: so its more like merge

[11:07] Gavin.Hird @grid.xmir.org:8002: I try to add them as soon as they are up on master

[11:07] Ubit Umarov: and puts os things in 2 dif places on list

[11:07] Gavin.Hird @grid.xmir.org:8002: so generally for the next viewer build

[11:08] Bill Blight: FS has two files it pulls, one for LSL and one for OSSL, pain

[11:08] Gavin.Hird @grid.xmir.org:8002: but you can be adventurous and edit keywords_lsl_default.xml

[11:08] Ubit Umarov: gavin why.. regions do send the data

[11:08] Gavin.Hird @grid.xmir.org:8002: as I have told you multiple times before the viewer msut have a fallback

[11:08] Ubit Umarov: well 0.91 regions

[11:08] Bill Blight: well Master regions send it

[11:08] Bill Blight: LOL

[11:09] Gavin.Hird @grid.xmir.org:8002: so the fallback might just as well be updated, yeah?

[11:09] Ubit Umarov: why?

[11:09] Ubit Umarov: old regions don't have all ossl

[11:09] Ubit Umarov: you are adding things they don't have

[11:10] Gavin.Hird @grid.xmir.org:8002: no, but the user might have a script that orignates in a region with a never version

[11:10] Gavin.Hird @grid.xmir.org:8002: it is kinda cool to see everything highligted always, right?

[11:10] Ubit Umarov: don't see why

[11:10] Ubit Umarov: it will smoke anyway on save :p

[11:10] Gavin.Hird @grid.xmir.org:8002: suit yourself ;-)

[11:11] Ubit Umarov: i do.. i use fs

[11:11] Ubit Umarov: oops this was bad, sorry :)

[11:11] Gavin.Hird @grid.xmir.org:8002: as if I did not know, hehe

[11:11] Ubit Umarov: :)

[11:11] Gavin.Hird @grid.xmir.org:8002: you use whatever pleases you

[11:13] Kayaker Magic: I don't feel particularly enlightened... So it is a viewer configuration and we have to talk the viewer devs into adding new OSSL functions?

[11:14] Gavin.Hird @grid.xmir.org:8002: it depends on the viewer

[11:14] Gavin.Hird @grid.xmir.org:8002: but yes

[11:14] Andrew Hellershanks: :)

[11:14] Ubit Umarov: no just have them do it right :p

[11:14] Kayaker Magic: Well if the viewers did it right, what file do I modify? keywords_lsl_default.xml?

[11:15] Ubit Umarov: none

[11:15] Gavin.Hird @grid.xmir.org:8002: for my viewer, yes

[11:15] Bill Blight: you would not need to edit them, as regions on master code, send it to the viewers

[11:16] Kayaker Magic: But if I add a new OSSL function there is no help line for the regions to send, how do I create that line for master to send?

[11:16] Ubit Umarov: you don't

[11:16] Ubit Umarov: remember me to do it :p

[11:16] Kayaker Magic: OK, well if that is the procedure, OK.

[11:16] Ubit Umarov: i made a littel program to generate it

[11:17] Ubit Umarov: from our sources

[11:17] Gavin.Hird @grid.xmir.org:8002: there is a file in bin on master called ScriptSyntax.xml that has all the OSSL entries

[11:18] Ubit Umarov: the region side file is a sintaxe something .xml

[11:18] Ubit Umarov: ahh that

[11:18] Kayaker Magic: Yes, that xml file has the syntax, but not the text that appears when you wave a cursor over the function name.

[11:18] Ubit Umarov: no bc i didn't add it to sources :p

[11:18] Gavin.Hird @grid.xmir.org:8002: my keywords_lsl_default.xml has all lsl, ossl + constants

[11:19] Gavin.Hird @grid.xmir.org:8002: I add the hover text manually to keywords_lsl_default.xml

[11:19] Ubit Umarov: my prog can extract some coments from source files

[11:19] Ubit Umarov: but that is not suposed to be a LSL/OSSL manual

[11:19] Kayaker Magic: there are comments on some of the OSSL functions???!!!

[11:19] Ubit Umarov: just a parameters reminder

[11:20] Gavin.Hird @grid.xmir.org:8002: the problems with the current format is that you cannot specify overloaded functions and get it to show in the hover text

[11:21] Gavin.Hird @grid.xmir.org:8002: so the hover is not complete for everyting

[11:21] Ubit Umarov: and shows energy that we don't have

[11:21] Gavin.Hird @grid.xmir.org:8002: not on dayturn

[11:21] Object: Script running

[11:22] Object: Script running

[11:22] Andrew Hellershanks: Dayturn, FTW? :)

[11:22] Kayaker Magic: OK, a different question" Where are the sources for the ini file reading code.

[11:22] Gavin.Hird @grid.xmir.org:8002: I have filtered it out

[11:22] Andrew Hellershanks: Kayaker, IIRC, it uses Nini.

[11:23] Ubit Umarov: if you see here with fs osSlerp is listed, etc

[11:23] Ubit Umarov: the ones with no coments are the oficial ones :p

[11:24] Ubit Umarov: the ones that have coments are from the FS files

[11:24] Ubit Umarov: that the damm thing does not override as we said

[11:25] Ubit Umarov: viewer files are a mistake now, that regions do provide the info

[11:25] Gavin.Hird @grid.xmir.org:8002: there are worse mistakes that can be made

[11:26] Kayaker Magic: Next question: I have a region running YEngine, a script that has been working for months suddenly gave me an error "OutOfHeapException: oldtotal=262135, newtotal=262170, limit=262144". Should I put a copy of the console log for this error in a mantis, or do you want to see that now Ubit?

[11:26] Andrew Hellershanks: If the list of available functions is sent to viewers on entering a region that is part of the long(ish) list of stuff that has to be passed to a viewer on region crossings.

[11:26] Gavin.Hird @grid.xmir.org:8002: it is Andrew

[11:26] Ubit Umarov: oops i forgot that again

[11:26] Ubit Umarov: it is already on mantis

[11:26] Gavin.Hird @grid.xmir.org:8002: another reason why I have a local file

[11:27] Ubit Umarov: NO

[11:27] Ubit Umarov: bahh

[11:27] Ubit Umarov: there is a version control

[11:27] Ubit Umarov: gezzz

[11:27] Bill Blight: I just gave my heap more ram, my servers have ram to spare ...

[11:28] Bill Blight: :P

[11:28] Ubit Umarov: it is not a real memory usage

[11:28] Ubit Umarov: its a bug on the accounting of it

[11:28] Ubit Umarov: well if i remember :)

[11:28] Bill Blight: True enough, but more ram keeps it from happening, have not seen it for a long time ..

[11:29] Kayaker Magic: But this script was fine for ages, was there a recent change to OpenSim that caused this problem? I do upgrade that server to the latest Snail Master often.

[11:29] Ubit Umarov: no changes on that for sometime now

[11:30] Kayaker Magic: So the bug is still there and may be fixed some day?

[11:30] Ubit Umarov: but to make clear.. the syntaxe is only downloaded if it has diferent version than the one viewer already has

[11:31] Kayaker Magic: (the bug that threw the OutOfHeapException)

[11:31] Ubit Umarov: no one should try crossings btw regions on diferent versions anyway

[11:31] Gavin.Hird @grid.xmir.org:8002: so if you tp around OSG it might be updated often

[11:31] Ubit Umarov: it is suposed 2

[11:32] Ubit Umarov: to not fool users

[11:32] Andrew Hellershanks: Ubit, That is a problem in osgrid as you can't tell what region is running what version of code until you enter the region.

[11:32] Gavin.Hird @grid.xmir.org:8002: there is no fooling if the viewer knows about all of the script syntax at all times

[11:33] Ubit Umarov: well wasted too much time on a obvius thing

[11:33] Ubit Umarov: it is wrong to list osSlerp on a region that does not have it

[11:34] Ubit Umarov: next issue?

[11:34] Kayaker Magic: When a script in a region gets an error, why does it send the debug message to every avatar? Can it not tell who owns the offending script?

[11:35] Ubit Umarov: to have all users telling user STOP THAT SCRIPT

[11:35] Kayaker Magic: LOL

[11:35] Bill Blight: the viewer picks up the entire debug channel, just like it picks up region notices

[11:36] Ubit Umarov: we could change that

[11:36] Ubit Umarov: but that effect is usefull :P

[11:37] Kayaker Magic: I'm working on an osPermissionToCall(string function) that will silently tell your script if you can call an OSSL function by name.

[11:37] Ubit Umarov: well will need to allow proper use of try/cache on that

[11:38] Ubit Umarov: yeah, seem the emails

[11:38] Ubit Umarov: that's just add another damm dictionay

[11:39] Kayaker Magic: The internal CheckThreatLevelTest function caches the permission bits already, I'll just call that.

[11:39] Ubit Umarov: and fill it with defaults by hand

[11:39] Andrew Hellershanks: As have I. I also saw the one where someone suggested adding an option to set the channel for debug messages.

[11:39] Ubit Umarov: then update for the total overload ini parser

[11:40] Kayaker Magic: If threat level is added to the ini for each function, is it necessary to cache that? It is already in memory in the ini structures.

[11:40] Bill Blight: I am still unsure how useful that will be Kayaker ..

[11:40] Ubit Umarov: no it has no business on ini file

[11:41] Kayaker Magic: Why not?

[11:41] Ubit Umarov: it is a fall back for funtions not on the file

[11:41] Bill Blight: your script will bomb if that function is in it and not allowed regardless if you call the other function first.

[11:41] Ubit Umarov: actually not that sure why we have it

[11:42] Kayaker Magic: Well one of my suggestions is to move the threat levels from being hard-coded in each function to a table that can be checked by a test-before-calling function.

[11:42] Bill Blight: If you are the region owner, all you have to do is look at your osslEnable.ini to know what you have enabled, if you are not the region owner, you really have no business beating up the sim to find what you can get away with .. just my .02

[11:43] Ubit Umarov: no question is having it or remove it

[11:43] Gavin.Hird @grid.xmir.org:8002: agreed Bill

[11:43] Bill Blight: I like the threat levels

[11:44] Bill Blight: gives as it gives you levels of control as a grid owner, not just individual on and off

[11:44] Kayaker Magic: The threat levels are used less often, if a function appears in osslEnable.ini, the threat level is never checked.

[11:44] Bill Blight: umm that is wrong

[11:44] Andrew Hellershanks: I know of a couple of grid owners who ignore threat levels for some functions because they like the convenience of being able to use the functions.

[11:44] Ubit Umarov: yeap

[11:44] Bill Blight: it is checked,

[11:44] Bill Blight: and if you have no allow it does not function

[11:45] Kayaker Magic: I tested it recently: Set threat level to very low, called osGetGridName, it worked. Removed osGetGridName from ini, then it failed to work.

[11:45] Ubit Umarov: they are not used on shiped configuration

[11:45] Andrew Hellershanks: There are quite a few os functions that are not in osslEnable.ini as the functions are always allowed.

[11:45] Ubit Umarov: ( unless we forgot some function :p )

[11:46] Kayaker Magic: (threat level for osGetGridName is moderate)

[11:46] Ubit Umarov: i may remove all those from osslenable.ini

[11:46] Ubit Umarov: jut go see the wiki

[11:46] Bill Blight: default for it in the ini is  Allow_osGetGridName =             true

[11:47] Ubit Umarov: ( i mean the ones with no checks )

[11:47] Bill Blight: so of course if you remove it, it will not work

[11:47] Bill Blight: at a lower threat level

[11:47] Kayaker Magic: One could change the CheckThreatLevelTest function to ALSO check threat level when Allow_* = true. Currently it does not.

[11:47] Bill Blight: a setting of TRUE allows it to work a any threatlevel

[11:47] Kayaker Magic: Correct

[11:48] Ubit Umarov: no thats not the meaning og true

[11:48] Ubit Umarov: true is always enable as bill said

[11:48] Ubit Umarov: false is disabled

[11:48] Kayaker Magic: And neither means "check threat level"

[11:49] Ubit Umarov: commented line means that

[11:49] Kayaker Magic: Right

[11:49] Kayaker Magic: by neither, I meant no line in the ini for that function.

[11:50] Ubit Umarov: but we try to have lines for all

[11:50] Bill Blight: but there is also Creators_ as well as Allow_ so it is used for more than just that

[11:50] Kayaker Magic: Well, my problem is, I want to write a function to tell me "the threat level is too low for you to ask the grid name" so I can punt and substitute "OpenSim".

[11:50] Ubit Umarov: but Allow is master key

[11:50] Ubit Umarov: creator: depends on Allow

[11:51] Ubit Umarov: ( don't ask.. )

[11:51] Ubit Umarov: yeah we understud your thing

[11:51] Bill Blight: If you own the region, you can just look at your INI

[11:52] Ubit Umarov: but that will not help you than much

[11:52] Ubit Umarov: you can't supend the execution of a script

[11:53] Kayaker Magic: I write scripts that people take all over the metaverse. The script works most places, then spams everyone with ANGRY RED ERRORS when they take my script to LBSA plaza because that region has the Allow_osGetRegionName line commented out.

[11:53] Ubit Umarov: you would need to put it on all events that use ossl

[11:53] Bill Blight: best you could hope for is to send it to a state that does not do anything

[11:53] Ubit Umarov: yeap the angry is intencional

[11:53] Kayaker Magic: No, just one call per region to get grid name

[11:53] Ubit Umarov: its psico war :p

[11:54] Ubit Umarov: on the users or region owner :p

[11:54] Ubit Umarov: to fix things :)

[11:54] Bill Blight: but you would have to call it, on TP's and crossings, or when that function would do nothing, and the script would still errors

[11:54] Kayaker Magic: CHANGED_REGION

[11:55] Bill Blight: and hope it hits that before the other function

[11:55] Bill Blight: depending on where the script was at, at the moment of the change

[11:55] Kayaker Magic: if (you can call) then call function. No error.

[11:55] Ubit Umarov: whats the poinf of checking on CHANGED if you have the function on touch:start?

[11:56] Kayaker Magic: In the example case of getting the grid name, I could check on changed, and read the grid name in a global.

[11:56] Bill Blight: (for things like radars, speed huds, things that run all the time I assume)

[11:57] Ubit Umarov: no idea why gridname has enable :)

[11:57] Ubit Umarov: gridname is a secret?

[11:57] Bill Blight: lol

[11:57] Bill Blight: yeah

[11:57] Kayaker Magic: go figure.

[11:57] Gavin.Hird @grid.xmir.org:8002: for RLV users it might be

[11:58] Andrew Hellershanks: It is useful to know the region name for vendor sxrips.

[11:58] Andrew Hellershanks: sxrips -> scripts

[11:58] Kayaker Magic: Ubit, why are you adamant that the threat level for each function should not be changable in the ini files?

[11:58] Bill Blight: and osGetGridHomeURI and osGetGridLoginURI

[11:59] Ubit Umarov: bc it is a waste

[11:59] Ubit Umarov: it is active for things NOT on file

[11:59] Bill Blight: yeah it is, the way I look at it, in that case, is, if the grid owner does not know how to set perms correctly for the needed functions in the osslEnable.ini, I'm not trusting them with my money either ..

[12:00] Ubit Umarov: and ( mistakes aside) we ship it with entries for everything

[12:00] Bill Blight: (I was referring to Andrew's comment)

[12:01] Andrew Hellershanks: My cat is wanting play time.

[12:01] Ubit Umarov: well oosl threat and enable is a issue

[12:02] Gavin.Hird @grid.xmir.org:8002: you have a needy cat :-)

[12:02] Andrew Hellershanks: :)

[12:02] Ubit Umarov: as i said on email it is confusing, it is heavy..

[12:02] Kayaker Magic: So Ubit, would you object to a table in the OSSL source file that lists which functions are at what threat level, using that in the Check function, and moving away from the hard-coded threat levels?

[12:02] Ubit Umarov: yes

[12:03] Bill Blight: oh that is gonna be a mess

[12:03] Ubit Umarov: unless as side effect of a more deep change

[12:03] Andrew Hellershanks: Kayaker, how would you ensure the information in the table matches the code and osslEnable.ini file?

[12:03] Bill Blight: people can't set them now, what kind of mess is it gonna make when they have to decide for themselves ...

[12:04] Kayaker Magic: The code would still read the osEnable.ini, which does not have thread level data.

[12:04] Kayaker Magic: If a function is not in the ini, it would just get threat level from a table instead of a hard-coded value imbedded in each function.

[12:04] Kayaker Magic: That would caus NO DIFFERNCE in the behavior

[12:05] Ubit Umarov: yeah but thats a BUG atractor

[12:05] Kayaker Magic: Just a better organization internally

[12:05] Kayaker Magic: How does tht attract bugs?

[12:05] Ubit Umarov: having it 100Km away on the file is a bug attractor

[12:06] Kayaker Magic: Ar you talking aobut INI? I'm asking about table inside the code.

[12:06] Ubit Umarov: .. 100km away on source file

[12:06] Bill Blight: HOw is it better organized when it allows every person to decide differently what they want at each threat level and given the opportunity to screw it up

[12:06] Bill Blight: so osGetGridName could be low on one grid and severe on another

[12:07] Bill Blight: that sounds very confusing

[12:07] Kayaker Magic: There is currently no way for any function to know what the threat level is for another function. A table would allow that.

[12:07] Ubit Umarov: they are no suposed to know

[12:08] Ubit Umarov: and only yr function may meed it

[12:08] Kayaker Magic: osGetGridName is already low on most places and high in LSBA plaza. I'm trying to find a solution to that.

[12:08] Andrew Hellershanks: Many users and some grid owners don't understand why some functions have a given threat level. Letting them mess with changing the threat level for a function could lead to problems.

[12:08] Bill Blight: but if that table is in the ini and changeable by the user, that would give a HUGE place for misconfigurations and inconsistency

[12:08] Andrew Hellershanks: If a grid or reigon owners wants a function they can always just add an Allow_ line to osslEnable.ini.

[12:08] Gavin.Hird @grid.xmir.org:8002: if they did you could potentially use it to eek out all allowed functions and use it maliciously

[12:08] Ubit Umarov: and there is other issue

[12:09] Ubit Umarov: unsupported functions or typos

[12:09] Kayaker Magic: Grid owners CAN change the threat level by adding an Allow_ line to the ini, which bypasses threat level. That problem already exists

[12:09] Bill Blight: Personal opinion, this would be a self fulfilling prophecy for issues ..

[12:09] Ubit Umarov: checkAllow("osSsetTerrain...") will compile

[12:10] Ubit Umarov: and do a mess :p

[12:10] Andrew Hellershanks: Kayaker, that isn't changing the threat level. It just allows deciding if the function is to be allowed regardless of the setting of the overall allowed threat level.

[12:10] Kayaker Magic: osGetGridName is just an example. Another example could be a script that tests first and then calls osStartAnimation or llStartAnimation.

[12:10] Kayaker Magic: osAvatarPlanAnimation

[12:11] Ubit Umarov: ohh the blow thing?

[12:11] Kayaker Magic: smelting copper, yes.

[12:11] Ubit Umarov: :)

[12:12] Bill Blight: seems to me gives one more place to screw it up, they could mess up the table, and the osslEnable.ini, now they have to check two places to see why their function does not work

[12:12] Kayaker Magic: So one of my scripts lands in a grid with stupid OSSL threat level settings, I want to give an inteligent error message: "Ask your grid administrator to add osGetGridNAme to the ini files"

[12:13] Kayaker Magic: Instead of spamming all the avatars with unintelligible red text

[12:13] Bill Blight: debug already tells you the function and that it was denied, in that red text

[12:13] Ubit Umarov: the type of error message is not fixed that way

[12:13] Andrew Hellershanks: I thought the only functions not listed in the enable file are ones that are always allowed.

[12:14] Ubit Umarov: those are currently listed, i may remove them..

[12:14] Kayaker Magic: Unless you land in LBSA plaza where they apparently removed the osslEnable.ini file.

[12:14] Ubit Umarov: (well the recent ones aren't )

[12:15] Ubit Umarov: and to have those took a little fight :p

[12:15] Bill Blight: seems to me simpler solution is to send ossl Denied messages to the owner instead of debug

[12:15] Ubit Umarov: all OSSL functions had to have checks.. uff

[12:16] Ubit Umarov: yeah if the error message is the issue.. that can be changed

[12:16] Kayaker Magic: Is that an easy change Bill?

[12:16] Ubit Umarov: thing is that there are worse issues

[12:16] Ubit Umarov: you ask bill?

[12:16] Bill Blight: easier than adding a whole new permission system

[12:16] Ubit Umarov: :)

[12:16] Bill Blight: LOL

[12:17] Kayaker Magic: Yeah, but I can't fix the hard issues and I can one little function that returns a string.

[12:17] Leighton.Marjoram @grid.outandproud.life:8002: interesting discussion I need to head off to RL I need to eat.

[12:17] Ubit Umarov: but the send to all had reasons

[12:18] Leighton.Marjoram @grid.outandproud.life:8002: See you all next week ttfn

[12:18] Ubit Umarov: like the one i said :)

[12:18] Andrew Hellershanks: Enjoy your meal, Leighton.

[12:18] Gavin.Hird @grid.xmir.org:8002: cheers

[12:18] Kayaker Magic: Same here, it is lunch time and I have not had breakfast yet.

[12:18] Leighton.Marjoram @grid.outandproud.life:8002: :waves:

[12:18] Ubit Umarov: alert all for a problem so it is fices

[12:18] Ubit Umarov: fixed

[12:18] Gavin.Hird @grid.xmir.org:8002: I should dahs too. I need to see the next video that kills CNN

[12:18] Bill Blight: Sounds to me, where this should have been "fix the error message" it became, "Rewrite the whole thing, give them another place to screw it up and hope they don't see that error anymore"

[12:19] Andrew Hellershanks: It is almost 20 past the hour. About time to wrap up the meeting for today. I don't think we will come up with a complete solution to the problem today.

[12:19] Gavin.Hird @grid.xmir.org:8002: see you guys next week

[12:20] Kayaker Magic: bye all

[12:20] Andrew Hellershanks: Bill, you may have raised a good point. What is the actual problem that needs solving? :)

[12:20] Andrew Hellershanks: ok, let's call this meeting to a close for today. Thank you all for coming. See you next week.