Chat log from the meeting on 2016-12-06

From OpenSimulator

Jump to: navigation, search

[11:02] Sheera Khan: Wus? Ubit has PioF?
[11:02] Sheera Khan: How so?
[11:02] Andrew.Hellershanks PioF?? what is that?
[11:02] Sheera Khan: Payment Info on File
[11:03] George Equus: FoiP backwards
[11:03] Sheera Khan: dan and Ubit are shown with payment info on file ...
[11:03] Ubit Umarov: i have Pinfo ?
[11:03] Sheera Khan: and there I thought there's no money here
[11:04] Ubit Umarov: i don't see it on my profile
[11:04] Sheera Khan: yes, my viewer shows PioF for the both of you and not for us mere visitors
[11:04] Ubit Umarov: odd we do not send that flag
[11:05] dan banner: its set ubit
[11:05] George Equus: Mine say Resident No Payment Info On File
[11:05] Ubit Umarov: well that is not core code
[11:05] Ubit Umarov: but with FS i don't see it
[11:06] George Equus: Ubit have no info at all on that
[11:07] Ubit Umarov: ohh on radar
[11:07] Sheera Khan: I'm on FS too
[11:07] Ubit Umarov: yes i see it on dan also
[11:08] George Equus: Never use Radar... looking for it..
[11:08] Ubit Umarov: well People on fs
[11:08] George Equus: Yes
[11:08] Sheera Khan: right, it's the people's tab
[11:09] George Equus: Radar in other viewers, People in FS?
[11:09] Sheera Khan: when I click on the peoples icon in FS this picture opens
[11:10] Sheera Khan: nearby people
[11:11] Sheera Khan: George is a resident of OSG too, but he has no PioF
[11:12] Sheera Khan: Selby, Andrew and me are from other grids
[11:13] Selby.Evans I have no money on this grid, so that indication is reasonable
[11:13] Andrew.Hellershanks PioF? Hm... isn't that just a flag in the user account info?
[11:13] Andrew.Hellershanks One of the bits
[11:13] George Equus: People = Radar in FS too, "Radar" wording is actually used in a sub menu...
[11:14] Kayaker.Magic Ahh! How many ubits are there?
[11:14] Sheera Khan: maybe it's just a simple flag. I was wondering why it is set with some people but not with others
[11:14] Andrew.Hellershanks Sheera, that is an interesting question
[11:15] Kayaker.Magic Ubit: Thanks for answering my questions about uploading mesh, I was able to reproduce the "bad mesh" problem and educate some people on how to get their mesh houses to a state where they could walk through the doors again.
[11:15] Sheera Khan: just to keep Ubit busy ^^
[11:15] Sheera Khan: *giggles*
[11:16] Ubit Umarov: :)
[11:16] Ubit Umarov: well mesh only bad if the upload is to use with type PRIM if not it is ok
[11:17] Kayaker.Magic Kitely has dome something to the mesh upload, they always arrive with HIGH physics detail and physics shape type PRIM, even though the default for mesh is supposed to be physics type CONVEX.
[11:17] Ubit Umarov: bullet may do that
[11:18] Ubit Umarov: even on 0.91 i didn't touch bullet
[11:18] Kayaker.Magic Ohh, I could test that!
[11:18] Kayaker.Magic Understood, I wouldn't touch Bullet either...
[11:19] George Equus: Use ubODE, never Bullet
[11:21] Sheera Khan: I see Kayaker typing and typing ...
[11:22] Kayaker.Magic Oh I've noticed that there are a few syntax differences between SL's LSL parser and the one here, so there are a lot of scripts that fail to compile for that reason. The BWind sailing script is one of those, so people say "it doesn't work with upODE" but if you fix the syntax, then it does.
[11:22] Andrew.Hellershanks What is the current state of ubODE vs. BulletSim? Is one more complete than the other? Are the each missing features that the other may have?
[11:22] Ubit Umarov: well if(akey) does not work here
[11:22] Ubit Umarov: you need to do compare with the null key
[11:22] Don.Smith Kayakers keyboard has a "stress relief" mode, where he can type and type and nothing happens...... like a squeeze ball, lol
[11:23] Kayaker.Magic ?
[11:23] Ubit Umarov: we also have a issue with math expressions having vectors.. better you add ()
[11:23] Don.Smith Dons bad joke 1, room 0
[11:24] Ubit Umarov: like (<a,b,b>) - (<d,ef,>)
[11:24] Ubit Umarov: both old problems and hard to fix
[11:25] Kayaker.Magic BWind had a construct: if (a) if (b) x; else y; else z; If you just put {} around everything our parser could figure it out.
[11:25] Ubit Umarov: also you should not use lond events
[11:25] Ubit Umarov: or long llSleep
[11:25] Kayaker.Magic flüstert: NEVER USE llSLEEP! EVER!@
[11:25] Ubit Umarov: if a event takes more than hmm 300ms??? it gets killed
[11:26] Ubit Umarov: they may have bad side effects
11:26] Kayaker.Magic llSleep locks up one of the threads for the entire time period.
[11:27] Kayaker.Magic I've seen all scripts in a region stop waiting for a bunch of blinking lights that said llSleep(2.0);
[11:28] Andrew.Hellershanks Ubit, the issue with math and vectors is a known issue. There is an open mantis about it.
[11:28] Sheera Khan: it seems not so easy to be fixed, or it would be ?
[11:28] Don.Smith I hope everyone is ready for the upcoming holidays and i hope it is everything you desire it to be! I must be going, i am needed at a Project site on a new grid about to open in Jan, Encore Escape, i designed and built an 3 sim airport.
[11:28] Andrew.Hellershanks Don, nice. Do the planes fly? :)
[11:28] Kayaker.Magic Oh, OSCC is coming up, and in Expo area 4, boot 22 (Ocean Engineering) I am giving away some full perm lights that make the viewer do all the blinking.
[11:29] Don.Smith yes
[11:29] Ubit Umarov: no sheera.Khan
[11:29] Don.Smith but i didnt build the planes, just the airport itself
[11:29] Andrew.Hellershanks Don, nice.
[11:29] Ubit Umarov: its a problem on the parser we use to convert lsl to c#
[11:30] Kayaker.Magic Justin looked into it, he said it was hard, might be doable with co-routines.
[11:30] Andrew.Hellershanks I've been wanting to look in to some of the parsing issues in the scripting engine but haven't had time to do that yet.
[11:30] Kayaker.Magic (fixing the llSleep() problem is hard)
[11:31] Andrew.Hellershanks yea, that would be a more difficult issue.
[11:31] Ubit Umarov: can't be fixed on xEngine
[11:32] Kayaker.Magic That is what Justin said
[11:32] Kayaker.Magic without a major re-write
[11:33] Kayaker.Magic As a stopgap measure, we could put a test in llSleep to refuse to sleep longer than 0.5 seconds.
[11:33] Kayaker.Magic We did something similar with llSetTimerEvent() not allowing times LESS than 0.5 seconds
[11:34] Ubit Umarov: llSetTimerEvent() min time is an option
[11:34] Andrew.Hellershanks llSleep with short time values is what contributes to high script runtimes.
[11:35] Kayaker.Magic Kitely changed the formula so top scripts doesn't count sleep time any more.
[11:35] Kayaker.Magic But I think it should count DOUBLE!
[11:35] Ubit Umarov: well on xengine sleep time should be counted
[11:35] Ubit Umarov: so you can see issues
[11:35] Kayaker.Magic yes
[11:35] Andrew.Hellershanks Most of the time when I find scripts with high runtimes it is because of uses of llSleep(0.2)
[11:36] Ubit Umarov: but worse is possible if even timeout kicks in
[11:36] Andrew.Hellershanks For long delays you can use a timer.
[11:37] Ubit Umarov: if it was chaning a object it may break it also
[11:37] Ubit Umarov: so keep events code short :)
[11:37] Kayaker.Magic Yes, long delays with timer, short with llSleep, but that is work and there is a lot of lazy code out there.
[11:38] Andrew.Hellershanks I know that all too well.
[11:39] Andrew.Hellershanks Most of it comes from Sl.
[11:40] Ubit Umarov: i did if(akey) work on a branch
[11:40] Ubit Umarov: but a lot got broken lol
[11:40] Kayaker.Magic I like to say "A free script is rarely worth as much as you paid for it"
[11:40] Andrew.Hellershanks Kayaker, :)
[11:41] Andrew.Hellershanks I often find myself rewriting those free scripts if it is for something I would find useful.
[11:43] Andrew.Hellershanks Ubit, I did track down the origins of the parser portion of XEngine and the Lex/Yacc type rules. I was hoping some of the problems can be fixed by updating the lex/yacc files and rebuilding.
[11:43] Ubit Umarov: i did update it
[11:44] Andrew.Hellershanks You said it broke a lot of things.
[11:44] Andrew.Hellershanks I'd be interested to see what you changed.
[11:44] Ubit Umarov: that was the lsl key
[11:44] Andrew.Hellershanks oh
[11:44] Ubit Umarov: diferent problem
[11:44] Andrew.Hellershanks ok
[11:45] Ubit Umarov: if( key ) is always true
[11:45] Kayaker.Magic I find the syntax differences minor, not worth fixing.
[11:45] Kayaker.Magic Usually it is something that can be done in a more clear way to avoid the problem.
[11:46] Kayaker.Magic Like putting in all the {} on a nested else if.
[11:46] Andrew Hellershanks: Kayaker, it can be worth if only as a means to dig in to the parsing portion of XEngine and be able to understand it better.
[11:46] Kayaker.Magic true
[11:46] Andrew Hellershanks: Kayaker, that was definitely poor coding using nested if/else combos like you showed earlier.
[11:46] Ubit Umarov: think the vectors thing is a bug on the parser
[11:47] Ubit Umarov: it does not have depth enough on rules
[11:47] Andrew Hellershanks nods
[11:47] Andrew Hellershanks: something in the rules related to expressions, or in how the expressions are handled.
[11:47] Ubit Umarov: the rules seem ok
[11:47] Ubit Umarov: but gets lost
[11:48] Andrew Hellershanks: I wanted to add some regression tests to check things like if(akey) and the vector math.
[11:48] Ubit Umarov: bc it is a chain od rules active on that case..
[11:48] Ubit Umarov: well they are broken lol
[11:49] Ubit Umarov: always where also
[11:49] Andrew Hellershanks: It could be a bug in the LSL to C# conversion.
[11:49] Ubit Umarov: and you keep saying regression
[11:49] Ubit Umarov: how is regression on things that never worked? :P
[11:50] Andrew Hellershanks: I'm not saying it is a regression. I'm talking about the automatic testing of various things that can be invoked. They are usually referred to as regression tests.
[11:51] Ubit Umarov: AndrewBrain.StringReplace("regression","bug");
[11:51] Ubit Umarov: more broken tests like the ones we have?
[11:51] Andrew Hellershanks: Ubit: yea, those are the ones I'm talking about, what ever you want to call them. :)
[11:52] Ubit Umarov: many are no good at all
[11:53] Ubit Umarov: and many done with wrong assumptions how things are
[11:53] Andrew Hellershanks: If they aren't any good they should be updated so they are good or else remove them.
[11:53] Ubit Umarov: yeap.. one day u can do it
[11:54] Ubit Umarov: a few are comented out already ;)
[11:54] Simulator Version v0.5 ruft: OpenSim Dev 181b1ad: 2016-12-04 23:02:40 +0000 (Unix/Mono)
[11:55] Ubit Umarov: well testing is hard :(
[11:55] Kayaker.Magic testing is hard....
[11:56] Andrew Hellershanks: One way to check the parsing is to test the code which is at the heart of the XEngine parsing as a standalone program.
[11:57] Ubit Umarov: yes andrew justin added tools for that
[11:57] Ubit Umarov: some still on libs repo
[11:57] Andrew Hellershanks: I have the source for the CSTools package that was used to build the parser
[11:58] Ubit Umarov: it is on the libs repo updated
[11:58] Andrew Hellershanks: I'm not sure if the parser we are using is based on the latest version of CSTools.
[11:59] Andrew Hellershanks: The latest I found from the original author is CSTools-4.7m
[12:00] Andrew Hellershanks: We are at the top of the hour. I have some errands to run. Does anyone else have a topic they want to discuss before we wrap things up for today?
[12:00] Ubit Umarov: cstools is a dead project
[12:00] Andrew Hellershanks: Ubit, yes but it is the root of the parsing code.
[12:02] Andrew Hellershanks: ok, since no one else seems to have anything more for today we can call this meeting to a close.

Personal tools
About This Wiki