mozilla :: #jsapi

13 Sep 2017
00:55tcampbellJohn-Galt: I have a somewhat hacky approach working for IndirectEval. Do we expect the long term solution is to ban eval with CSP and unshare things that really want it?
00:56John-Galttcampbell: Yeah, except for the unshare things that really want it. Things that want eval can use a sandbox.
00:56tcampbellah, got it
00:57John-GaltI think there are only two JSMs that actually use it now for the indirect 'this' thing, and those are simple one line fixes. The other uses it... to eval JSON-ish strings... that are hard coded in a JSM file...
00:57John-GaltThat one, someone really needs to answer for.
00:58tcampbellyeah, that was pretty .. interesting
00:59tcampbellJohn-Galt: have you seen |this.tablesData[table] is undefined| problems in nsUrlClassifierListManager?
01:00John-Galttcampbell: No. Where?
01:00tcampbellwas seeing it while debugging marionette
01:00tcampbellhttps://searchfox.org/mozilla-central/source/toolkit/components/url-classifier/nsUrlClassifierListManager.js#556
01:00John-GaltOh, yeah, I think I did see them and decided they were unrelated to any of our changes
01:01tcampbelloh fun
01:02John-GaltIt may just be that we have hacky ways of disabling a bunch of things like that during test runs.
01:03John-GaltTelemetry also throws a bunch of errors about not being able to send pings, because we flip a pref to point it at a nonexistent endpoint URL :(
01:03John-GaltMakes debugging fun.
01:03tcampbellheh
01:04tcampbellOnce we address IndirectEval, I only have a short list of non-blocking things to double check and inactive footguns to fix
01:05John-GaltWe still have the pref flip thing to fix before we can let it ride to beta, too. Waiting to hear back from my reviewer on that.
01:06tcampbellI noticed the marionette test seems to freak out a little sometimes with --disable-e10s, but that sounds like the same issue
01:08John-GaltFreak out how?
01:08tcampbellfail
01:08tcampbellthe sanity checks don't wory
01:08tcampbell*work
01:09tcampbellset_env;restart;get_env
01:10mrgigglesthe mozilla-inbound tree is now open
01:10tcampbellit wasn't liking when I added sleeps to give me time to attach the debugger, but that may be expected if timeouts expire
01:11John-Galttcampbell: Ah. That might just be because we make the session so short. I know it causes some intermittent shutdown hangs, too, but I haven't gotten around to debugging them because I always forget how to make the marionette harness not eat all process output...
01:12tcampbell|-gecko_log -| worked for me
01:12* tcampbell wasted too much of the day on that
01:12John-GaltI think the last time I tried that, I still only got output from the harness, and it still ate all of the output from the process
01:12John-GaltBut maybe I'm thinking of talos
01:14tcampbellflags seem pretty inconsistent. The docs also talk about |--log-mach -| which works on mochitest but doesn't seem to do anything to marionette
08:13mrgigglesthe mozilla-inbound tree is now closed (crashes from bug 1397593)
08:13firebothttps://bugzil.la/1397593 NEW, michal.novotny@gmail.com Intermittent /content-security-policy/inside-worker/dedicated-inheritance.html | application crashed
08:17mrgigglesthe mozilla-inbound tree is now open
09:18Yoricstandups: Implementing compression in binjs-ref
09:18standupsOk, submitted #50852 for https://www.standu.ps/user/Yoric/
09:55araiI didn&#39;t know that we can do Rooted<Maybe<something>>
09:55araiYoric: do you know where it&#39;s defined?
09:56araior maybe it just works without special case?
09:57Yoricarai: Mmmh... I thought it was defined in GCPolicy, but that might actually be Maybe<Rooted<T>> that&#39;s defined there?
09:57Yorichttp://searchfox.org/mozilla-central/source/js/public/GCPolicyAPI.h#166
09:57YoricI&#39;m not entirely clear how GCPolicy works.
09:58araiYoric: oh, thanks :)
09:58araiyeah, looks like Rooted<Maybe<T>>
09:59nbparai: note that we should avoid the reverse: Maybe<Rooted<>>
09:59araiokay, I see
10:00nbparai: Rooted is maintaining a linked list of stack pointers, and Maybe will disturb the scoping init & deconstruct expected by the Rooted classes.
10:00araimakes sense
10:01nbpYoric: the GCPolicy almost looks like &quot;traits&quot; implementation in rust.
10:10jonconbp, Yoric: yes, it&#39;s a trait for performing GC operations on various types
10:11nbpjonco: sounds like something which might be easier to convert by hand than letting bindgen getting lost with template overloading.
10:12joncowhy is bindgen converting this?
10:13joncoI don&#39;t think GCPolicy-defined methods should be called outside the engine
10:13jonco(or maybe it just converts everything, I dunno)
10:19emiliojonco: it just converts everything that is referenced recursively
10:19emiliojonco: you may want to just blacklist some stuff like that if you&#39;re sure it&#39;s not needed
10:19emiliojonco: I don&#39;t know what&#39;s the SM setup, though
10:20joncoemilio: ok, cheers
10:42bbouvierPSA: AWFY quantum + cmp-win machines are down, with no ETA to get it back up; they probably need hardware reboots at this point
12:17nbpjonco: emilio: I have no idea if bindgen attempt to convert this, but I would expect this is needed for servo.
13:20Yoricarai: Ok, applied feedback.
13:24araiYoric: about the pending Error things, once the error is checked and also reported, we don&#39;t have to (and also and I think we shouldn&#39;t) report it again
13:25araito be clear, I&#39;m not saying it should recover
13:25Yoricarai: I want to ensure that we never reuse the tokenizer (or even the parser, actually, although I haven&#39;t bothered poisoning it I probably sure). How do you suggest we enforce this?
13:25Yorics/sure/should/
13:26araican we check if the tokenizer is poisoned or not there?
13:26araiso, once error is reported, the tokenizer is poisoned (right?)
13:26Yoricarai: That&#39;s the idea, yes.
13:26araiand if the tokenizer is poisoned, we can skip reporting
13:26YoricJust return false without reporting?
13:26araiyes
13:27araiso that we don&#39;t report error twice (and also we won&#39;t overwrite existing error)
13:27YoricOk, that shouldn&#39;t be too hard.
13:31joncosfink: ping
13:35Yoricarai: done
13:35araithanks :)
13:50evilpiejandem: what&#39;s going on with bug 1384562
13:50firebothttps://bugzil.la/1384562 ASSIGNED, jdemooij@mozilla.com Optimize the obj_toString call in OrdinaryToPrimitive
13:53bbouvierPSA: AWFY is back
14:00jandemevilpie: i should check if that&#39;s still worth doing, the ember version in speedometer got updated
14:05jandemevilpie: focusing on sec/fuzz bugs this week
14:05evilpieok
14:06nbpdjvj: can you hear us?
14:08sfinkhttps://wiki.mozilla.org/Bugmasters/Process/Triage
14:10sfinkchia-hung: see js/src/jit/MacroAssembler.cpp, I think it&#39;s called nurseryAllocate? but that might be a new name
14:11sfinkthat&#39;s where it does nursery allocation in the jit
14:11sfinkhttp://searchfox.org/mozilla-central/source/js/src/jit/MacroAssembler.cpp#791
14:28djvjis anyone else getting completely destroyed audio on this meeting?
14:29djvjtcampbell, jandem, arai, evilpie: ^--
14:29evilpieI can understand nbp
14:29tcampbelldjvj: right now alright
14:29djvjoh, reload fixed it :(
14:29araino problem happening for me so far
14:39mrgigglesthe mozilla-inbound tree is now closed (mochitest failures)
14:56tcampbelldjvj: you gonna be around for lunch?
15:08mrgigglesthe mozilla-inbound tree is now open
15:27joncojandem: is it possible to get the JitZone in MacroAssembler?
15:31jandemjonco: can use GetJitContext, or pass it to masm methods that need it
15:32* jandem afk or I would send you a searchfox url
15:32joncojandem: ok, cheers
15:51nbpdjvj: the meeting is always starting with stand-ups, no need to add it as part of the extra meetings.
15:52djvjtcampbell: probably not
15:52djvjnbp: thanks, will remember
15:52nbpdjvj: it is also every two weeks.
15:54nbpdjvj: if you want us to address a specific topic which is not the usual standup, just add it at least a day before, or sooner ;)
15:54djvjnbp: cool
15:55nbpotherwise we will stop you from wasting others time _without warnings_!
15:55nbp:P
16:52tilljonco++ for updating the Rust glue in bug 1396613
16:52firebothttps://bugzil.la/1396613 NEW, jcoppeard@mozilla.com Simplify per-class tenuring actions by using the object moved hook
16:54joncotill: np
16:55joncotill: there&#39;s a try job for this so I noticed pretty quickly
16:55tilljonco: I know, but it&#39;s deliberately not tier-1 to make fixes optional. They&#39;re very welcome, obviously! :)
17:15jdm<3
18:00naveed@all: I&#39;m going through the bugs and assigning &quot;Importance&quot; and setting ff57-affected as appropriate. If I get it wrong please correct me
18:00naveedAlso I would appreciate any help!
18:00naveed:)
19:00evilpiedjvj: so any builtin that comes to mind I should look into?
19:00djvjevilpie: ah, right, lemme take a look
19:03djvjevilpie: bug 1384562 is useful.. jan has it but it&#39;s been a bit since he commented
19:03firebothttps://bugzil.la/1384562 ASSIGNED, jdemooij@mozilla.com Optimize the obj_toString call in OrdinaryToPrimitive
19:03evilpiedjvj: I pinged him today :) He is going to look if it still applies to the new version
19:05djvjevilpie: array_slice should be nice
19:06evilpielike bug 1376572? ^^
19:06firebothttps://bugzil.la/1376572 NEW, nobody@mozilla.org Array.p.splice optimization opportunities
19:07djvjyeah
19:09djvjit seems that the entire set of checks around species can be elimited by a shape check..
19:12djvjIsArraySpecies is doing a property lookup for the constructor, then a species-symbol lookup
19:14evilpiedjvj: isn&#39;t the PIC optimizing for that
19:14djvjevilpie: a CacheIR stub for array_slice that used a shape check to elide that whole business and do a VMCall into a stripped down function..
19:14djvjevilpie: what PIC?
19:14evilpieoh, anba is adding a PIC for this in the C++ code
19:15djvjyeah, it won&#39;t help calls from JS
19:30shumrgiggles: pun
19:30mrgigglesshu: A bicycle can&#39;t stand on its own because it is two tired.
19:54sfinkwtf. String#split *discards* everything past the limit, rather than grouping it into the final value?!
19:54sfinkwha... why...
14 Sep 2017
No messages
   
Last message: 8 days and 5 hours ago