mozilla :: #servo

16 Mar 2017
00:03poesiacbrewster: Thanks, now I see. The artificial "about:blank" load triggers a load event because the iframe has no src, so there's no issue when it does have a src and process_the_iframe_attributes won't fire a load event, only when the actual load happens. Right?
00:03bholleyManishearth: hi
00:04Manishearthbholley: so, two questions
00:04Manishearth(a) why are system fonts weird in gecko, and do we have to copy that weirdness (of a fake second property)?
00:04Manishearth(b) how should we match functional pseudos like -moz-system-metric?
00:04fabricegw: so things should work through llvmpipe?
00:05bholleyManishearth: -moz-system-metric is bug 1341086
00:05firebot NEW, stylo: need to support the :-moz-system-metric pseudo-class
00:05gwfabrice: it should work, yea - just that all the rendering will be getting done on the cpu, not in hardware - so it'll be slow
00:05Manishearthoh ok mbrubeck is on it
00:05Manishearthmbrubeck: are you actively working on this?
00:05fabricegw: ok, worth trying. How do I enable that mode?
00:06bholleyManishearth: as for the weirdness of system fonts, I'm not the right guy to ask - bz can probably answer or point you to the right person
00:06Manishearthbz: ^ ?
00:06cbrewsterpoesia: I believe so
00:06mbrubeckManishearth: Currentnly wrapping up bug 1340683, was looking at doing bug 1337068 next.
00:06gwfabrice: I think it will just work by default?
00:06firebot NEW, mbrubeck stylo: need to support -moz-any
00:06firebot NEW, mbrubeck stylo: implement support for :-moz-only-whitespace and :-moz-first-node in rust-selectors
00:07fabricegw: well, it doesn't :)
00:07Manishearthmbrubeck: okay. I'm going to churn our pseudo support a bit
00:08Manishearthmbrubeck: basically, adding support for gecko-based pseudo function thingies
00:08mbrubeckManishearth: Note, is churning it somewhat too
00:08crowbotPR #15966: WIP: Bug 1340683 - stylo: Implement the :-moz-any pseudo-class -
00:09mbrubeckManishearth: and 1337068 is going to build on top of that
00:09mbrubeckugh, silly bug numbers.
00:09mbrubeckI should add support to crowbot
00:10TD-Linuxfabrice, there is a vc4 accelerated mesa driver, but to get it you need to flip an option in your devicetree
00:10gwfabrice: heh :) I ok, maybe glutin tries to create a hardware context only or something? not really sure, would need to look into it
00:10TD-Linux(the blob driver only does GLES 2 with EGL)
00:11fabricegw: well, we manage to paint the window in full white
00:11bholleyManishearth: dbaron might also be a good person to ask if bz isn't around
00:12fabricegw: oh, briefly got the browser.html input field!
00:12gwfabrice: success!!
00:12fabricelooks like something is not going well with the even loop though
00:12fabricethings are not refreshing as they should
00:13fabriceor it's just super slow...
00:14poesiacbrewster: but in the case of an iframe with no src, isn't the correct load the one that takes place in process_the_iframe_attributes when it sees there's no src? In this case, a solution would be to simply check again if the iframe has an src in ScriptThread, not invoking load steps in that case
00:14dbaronManishearth: what about weirdness of system fonts?
00:14poesiacbrewster: does it make sense? I tried that and it seems to work, with and without a src
00:15fabricegw: yep, so everything is just really slow. I'll profile tomorrow
00:15Manishearthdbaron: we have a weird -x-system-font property that's handled separately but ultimately folded into the regular font-family?
00:16Manishearthoh wait, this seems to set other properties too
00:16dbaronManishearth: should I assume you've read the spec for system fonts?
00:16cbrewsterpoesia: hmm that seems like it would cause load events when iframes have a src to not be fired.. but maybe I am not following you
00:16Manishearthdbaron: this is specced? I didn't expect it to be
00:16ManishearthI'll go do that :)
00:17dbaronManishearth: ok, start with and come back to me
00:17crowbotdbaron: that's probably not the spec you want. Please read
00:17gwfabrice: ok, sounds good - it's quite likely that it's simply that slow to software render on arm - but perhaps there's also some event loop issues etc
00:17dbaronManishearth: or maybe
00:17dbaronManishearth: probably the latter is better
00:17dbaronManishearth: you'll probably still have questions once you've read it, but better to read it first :-)
00:19poesiacbrewster: sorry, I meant making ScriptThread only invoke load steps when the iframe has an src
00:19cbrewsterpoesia: ahh I see, that sounds reasonable
00:19Manishearthdbaron: ugh looks like we're going to have to use a fake property to implement this as well
00:19poesiacbrewster: all right, thank you! I'll submit the PR
00:19Manishearthfake properties are hard because we do properties individually and interdependence is tricky to handle
00:20cbrewsterpoesia: thanks for looking into this! ;)
00:20* cbrewster keeps awkwardly putting ;) instead of :)
00:21poesiaglad to do it!
00:23cbrewsterpoesia: hmmm actually I think if we did that we would have 2 load events in the case of the src being set to something
00:23mbrubeckManishearth: What's the workflow for updating stylo test expectations? e.g. #15966 is a servo-only patch, but it causes some stylo tests to pass. Do I need to do anything when it lands, or are people just periodically updating the test manifests?
00:23crowbotPR #15966: WIP: Bug 1340683 - stylo: Implement the :-moz-any pseudo-class -
00:23firebot ASSIGNED, stylo: need to support -moz-any
00:23cbrewsterpoesia: not sure if that should be the expected behaviour
00:23Manishearthmbrubeck: preferably land a patch updating the expectations directly
00:24mbrubeckokay, fun...
00:24poesiacbrewster: I think the load event from the about:blank is only fired when the iframe has no src (by looking at the "if" in process_the_iframe_attributes)
00:25Manishearthmbrubeck: push directly to autoland (or ask a sheriff to do it), with the commit message blocking 1341102
00:25poesiacbrewster: it seems to work now in simple tests, firing only one event in both cases
00:25Manishearthbholley: well, my guess was right, -moz-system-metric is why it doesn't work. I added parse support, but not actual handling support
00:26cbrewsterpoesia: ah right, sorry!
00:26poesiacbrewster: oh no, thanks for double-checking :)
00:26cbrewsterpoesia: well, we would have one load event from the initial about:blank and then one from the actual src (if it was set to something else)
00:27cbrewsterI think the best solution would be a way to know specifically in the ScriptThread if the load that is occurring is the "initial about:blank" and not fire the load event
00:28poesiacbrewster: hmm, you mean the about:blank would still trigger a load event when src is set? I'm not seeing that
00:29cbrewsterpoesia: ahh ok, yeah Im not sure what actually happens. so if you set the src to something else, it only fires a single load event?
00:29cbrewsterif so, then we should be good
00:30mbrubeckManishearth: And that push should happen at the same time (approx.) as the Servo PR gets merged?
00:30dbaronManishearth: I should point out that things like:
00:30poesiacbrewster: right, if I get it correctly it's because process_the_iframe_attributes explicitly checks if the iframe has no src before queueing a load event. Otherwise it doesn't do that, and I guess the load event comes from ScriptThread
00:30* mbrubeck spends a lot of time these days shouting "WORKFLOW!" to nobody into particular
00:31dbaronManishearth: font: caption; font-style: italic;
00:31dbaronManishearth: mean that all the subproperties of 'font' should use the system font *except* for font-style
00:31dbaronManishearth: this is why we have both an -x-system-font subproperty that holds the system font value
00:31dbaronManishearth: and a special value within each subproperty that says that it uses the value from the system font
00:32dbaronManishearth: although I suppose it could have been implemented only with the special value, given a special value for every system font value
00:32cbrewsterpoesia: right, I was worried about the case were you set src to the iframe would load about:blank and fire a load event and then load and fire a load event. For some reason this does not seem to be the case, so no need to worry about it.
00:32Manishearthdbaron: yeah, i was thinking of doing something like that
00:33Manishearthmbrubeck: right after basically
00:33dbaronManishearth: in fact, I'm not entirely sure why I didn't do it that way...
00:33Manishearthdbaron: the only problem is that it will duplicate the effort in computing the system property
00:33cbrewsterpoesia: anyways, I think you change should be ok. It would be great if we could add a test for this
00:33Manishearthunless that's a cheap op
00:33dbaronManishearth: might have just been that it involved fewer changes to the prior code
00:34dbaronManishearth: at computation time, there should always be at most one system font to retrieve, between all the font subproperties
00:34dbaronManishearth: since by inheritance time you should already have converted on the parent
00:35poesiacbrewster: oh, I was going to ask about how to add a test now :) is there a simple test environment in which I could get JavaScript's output?
00:35Manishearthdbaron: right, in the servo model we would fetch it a bajillion times :)
00:35Manishearthwell, like 5 times
00:36dbaronManishearth: it's not clear to me how having -x-system-font reduces that, though
00:36Manishearth(we compute props individually)
00:36Manishearthdbaron: it doesn't
00:36Manishearthboth introduce different kinds of annoyances to the computation process
00:36Manishearthboth can be handled
00:36Manishearthboth are annoying and icky :)
00:38dbaronManishearth: and, for the record, I probably know more about system fonts than bz, given that I think I did the last major update to the Gecko implementation
00:38dbaron(the style system bits, anyway)
00:38Manishearthdbaron: thanks
00:38cbrewsterpoesia: right so, we have wpt tests where you can use our test harness to setup expectations in javascript. Let me find a link, you can see the other (many) tests in tests/wpt/web-platform-tests
00:38Manishearthif I get around to this I'll ask you more qs
00:41cbrewsterpoesia: You'll need to dig around to find the other relevant iframe tests. I have to go for a bit, just let me know if you run into any issues (others here can also help with adding a new wpt test)
00:42poesiacbrewster: oh nice, I had written reftests before and thought they were all wpt tests were about
00:43poesiacbrewster: thanks a lot, I think it should go fine :)
00:44cbrewsterpoesia: no problem! thank you!
03:40gwThat moment after 2.5 days GPU debugging when you start to wonder if it's a driver bug...
03:41sebanmbrubeck: I built a fresh one. Thanks for helping :-)
03:46fabricegw: I did a quick run under perf on the rpi: the top culprits are in llvmpipe
03:48gwfabrice: ok, that makes sense
03:48fabricegw: not sure what to do from there
03:53gwfabrice: I think using an es3 device is the only real possibility in the short term
03:54fabricegw: ok, I'll check the odroid c2 then
03:56gwfabrice: It may also be worth getting hold of a nexus9 tablet or something similar - they are fairly cheap and I was able to order one through the service now portal
03:57fabricegw: I have a brand new Pixel phone. Still black screen on it and the OpenGL tracer doesn't start... way to go android tooling!
03:57gwfun times
04:34wafflesjdm, TWiS is getting merged before I even wake up :P
04:34waffleswhat if I find an issue?
04:34wafflescan I still push it to the branch?
04:34jdmwaffles: for sure!
04:34wafflesand it will get republished?
04:34jdmit's automatic
04:34wafflesoh cool
06:02gwstandups: Several improvements to performance and AA quality of transforms -
06:02crowbotPR #988: Reduce transforms fillrate, improve AA quality, fix some transform tests. -
06:02standupsOk, submitted #43781 for
06:06heycamis the rust compiler good at optimizing |some_object.clone().into()| so that it doesn't actually need to clone the object?
06:56Manishearthheycam: no
07:44Manishearthstandups: -moz-system-metric part 1 (bug 1341086)
07:44standupsOk, submitted #43785 for
07:44firebot NEW, stylo: need to support the :-moz-system-metric pseudo-class
07:56* Ms2ger grins at Manishearth's and gsnedders's public transport
08:00* Manishearth uses TLS
08:05wafflesheh :D
08:42Ms2gernox, ping
08:44* Ms2ger waves at jdm
08:44Ms2gerStill in India?
08:44jdmMs2ger: nope, but my internal clock is
08:44* jdm will try going back to bed around 6am, probably
08:45jdmcan&#39;t wait to screw myself up all over again by going to australia in <3 weeks
08:54wafflesjdm, lol
08:58mrmiywjWhat&#39;s about the journey to India?
09:05jdmmrmiywj: I went there for two weeks on vacation
09:05jdmnow my body is very confused about when I should be asleep
09:09KiChjangjdm: good norming
09:09Ms2gerjdm, okay if I kick the structured cloning back to you?
09:09jdmMs2ger: seems reasonable
09:09jdmthanks for doing the initial review!
09:10* jdm just saw :OOO
09:10* jdm wonders if we can get that as part of the backtrace crate, too
09:11KiChjangthat looks prett sweet
09:12KiChjangcrowbot, what should i work on?
09:12crowbotKiChjang: extract font-feature settings into an independent crate (
09:15jdmcrowbot: what&#39;s new
09:15jdmcrowbot: what&#39;s new?
09:15crowbotBREAKING NEWS: Servo outdid Brave in HTTP throughput!!
09:16wafflesoh, I did notice the new backtrace yesterday just after updating my nightly and crashing soemthing
09:17KiChjangwish i could auto-download the new nightly somehow
09:17KiChjangand replace the existing one
09:19wafflesKiChjang, I have a giant crontab-ish thingy in python that does time-dependent things (running specific commands every X interval)
09:19wafflesfrom notifying me every 15 mins to updating rustup toolchains :P
09:20KiChjangtoo bad i don&#39;t have cron at all
09:20KiChjangusing systemd
09:20KiChjangthey use something else instead
09:20wafflesI don&#39;t use cron
09:21KiChjangthe typing on the address bar of the nightly is much smoother right now, at least on linux
09:21KiChjangi dunno what changed
09:22KiChjanghuh, not sure what happened, but my wikipedia side bar is gone
09:23KiChjangoh wait no
09:23KiChjangit&#39;s in textual format
09:24KiChjangyeah the styling is completely messed up
09:24KiChjangor shall i say, the CSS isn&#39;t even loading
09:24KiChjanguh oh, now it froze
09:29jdm - this continues to describe my attempts to solve layout/display list bugs
09:32* waffles always wants to get into layout, but it scares him away by yelling, &quot;You aren&#39;t prepared for battle yet!&quot;
09:35KiChjangbtw, how can i check the nightly version/hash that i&#39;m running?
09:36wafflesrustc -V ?
09:36wafflesoh servo&#39;s?
09:39KiChjangwas testing out google docs again
09:39wafflespretty sure it&#39;s the same for all programs
09:41KiChjangwas thinking that there might be a menu button that i would need to press, oh well
09:53Ms2gerwaffles, r?
09:53crowbotPR #15981: Enable remaining html5lib tests. -
09:57Ms2gerjdm, if you&#39;re still around, got work for me?
09:57crowbotIssue #14972: TransitionEnd event can include nodes that have been GCed -
09:58* waffles just got back from lunch
09:58Ms2gerjdm, I was hoping for something not-GC-related, but okay :)
09:59jdmthis one makes google docs crash all the time in debug builds for me
09:59jdmI think it&#39;s pretty high priority
10:00Ms2gerjdm, is that with clean master?
10:00jdmit was at the time, yes
10:01wafflesjdm, iirc, highfive and servo-wpt work is still pending, right?
10:01wafflesI&#39;ve procrastinated those forever
10:01jdmoh, right
10:02jdmservo-wpt stuff is still in progress
10:02Ms2gerDelete the non-exist key:ImageKey(9, 0)
10:02* Ms2ger wonders what that means
10:03wafflesjdm, highfive is on my end - only a few tweaks for making it work as an integration (I just need to allocate time for it, sigh)
10:05KiChjangMs2ger, i just searched the entire servo codebase and didn&#39;t even find that error message string
10:05KiChjangperhaps it&#39;s a bhtml error?
10:08jdmno, it&#39;s from the image cache
10:09jdmwait, wow
10:09jdmI also can&#39;t find any record of it
10:09jdmoh, webrender I bet
10:12Ms2gerGot some ellipsis assertion
10:16Ms2gerassertion failed: ellipsis_fragments.len() == 1 (thread <unnamed>, at /components/layout/
10:54xidornjdm: wouldn&#39;t #15977 be too easy for outreachy?
10:54crowbotIssue #15977: counter-reset and counter-increment should serialize empty vec to &quot;none&quot; rather than empty -
10:54jdmxidorn: sure, but everybody starts somewhere
10:54xidornjdm: ok, makes sense
10:56xidornjdm: are outreachy interns expected to do some non-trivial projects like normal interns?
10:56jdmxidorn: absolutely
10:57jdmxidorn: this is just for the &quot;make a small contribution as part of your application&quot; part of it
10:57xidornas part of application :)
10:57xidornok, thanks for explaining
11:14stshineGiven the complexities of width and height calculations on table cells and table elements, math expressions involving percentages for widths and heights on table columns, table column groups, table rows, table row groups, and table cells in both auto and fixed layout tables MAY be treated as if auto had been specified.
11:15* stshine hopes this not all the spec that indicates how calc() should behave in a infinite container size...
11:17stshineIf there are special rules for computing percentages in a value (e.g. the height property), they apply whenever a calc() expression contains percentages.
11:17* stshine feels satisfied
11:17stshinejdm: morning!
11:19wafflesoh, a *wild* morning to you too :)
11:20wafflesnothing makes mornings disastrous than staring at a spec :P
11:20noxI just woke up and I&#39;m fixing parsing code.
11:20Ms2gerSorry :)
11:21noxMs2ger: Why?
11:21noxMs2ger: These were my first Servo patches,
11:21* stshine will try to find the courage to start on svg spec again
11:22noxMs2ger: and my Mozilla cakeday was 2 days ago,
11:22noxMs2ger: so it&#39;s like I should thank you. :P
11:22Ms2gerFor the parsing code to start your day :)
11:32noxMs2ger: r? ^
11:40wafflesnox, how can one &quot;check each commits in the PR&quot;?
11:40noxwaffles: What do you mean?
11:40wafflesyour comment
11:40noxwaffles: Take the head of the PR,
11:40noxcheck its parents,
11:40noxfail if there are more than one,
11:40noxcontinue until the base of the PR is reached.
11:47wafflesnox, yes, but can we differentiate the merge commits from bors-servo?
11:49noxwaffles: Why would we do that?
11:50noxwaffles: There shouldn&#39;t be a single merge commit.
11:50xidornif a function has signature like &quot;fn func(&self) -> &something&quot;, does rust deduce a lifetime param to connect the lifetime of self and the returned reference?
11:50wafflesnox, I&#39;m still unable to reason how we can detect commits belonging to a PR
11:50waffles(in tidy, locally)
11:51wafflesxidorn, if something is a part of self, then yes, possibly
11:51wafflesor else, it won&#39;t even compile :)
11:52xidornwaffles: what if there is an unsafe transmute?
11:52wafflesxidorn, unsafe? no idea then
11:54wafflesMs2ger or nox will know
11:54noxxidorn: Yes.
11:54noxxidorn: It&#39;s called lifetime elision.
11:55noxxidorn: The body of the function doesn&#39;t matter.
11:55xidornnox: oh, I see, thanks!
11:55noxxidorn: You shouldn&#39;t need transmute though.
11:55wafflesso, it works the same way then, regardless of whether we do unsafe stuff
11:56jdmwaffles: doesn&#39;t test-tidy already have logic that figures out commits that only exist on the current branch?
11:56wafflesjdm, nope
11:56wafflesit cheats :P
11:56wafflesby getting the commits after the last merge
11:56waffles(which we blindly assume to be &#39;bors-servo&#39;) :)
11:57waffleswe previously did have a check for bors-servo as author
11:57wafflesdunno when that was removed
12:01wafflesemilio, re: merges, all those will return bors-servo&#39;s merge commits, which is clearly not what we want
12:02emiliowaffles: isn&#39;t it?
12:02waffleswhy do we need bors-servo&#39;s merge commits?
12:02emiliowaffles: we just want to see if there&#39;s a merge commit before bors-servo&#39;s last merge and tip
12:02wafflesthey already exist in upstream
12:02emiliowaffles: and you can do it easily with git log --merges
12:02emilio*after bors&#39; last merge, I mean
12:02wafflesemilio, in our current tidy&#39;s setup, we don&#39;t know whether the last merge commit is bors-servo&#39;s
12:02waffleswe just blindly get the last merge commit
12:04emiliowaffles: but you can do that, right? You just want to use --author bors-servo
12:04wafflesyes, but we don&#39;t currently, that&#39;s why I suggested author checking :)
12:05emiliowaffles: mainly, you want git log --author bors-servo -1 to get the last bors commit, then git log --merges <that-commit>..HEAD
12:05emiliowaffles: then check if empty. It should be pretty fast
12:07emiliowaffles: mainly, with an author check you don&#39;t prevent an empty merge commit by you, which we _do_ want to prevent
12:08wafflesemilio, or more easily, just list the author name along with the commit hash and make sure it&#39;s bors-servo
12:08waffleswhich is what I said -
12:08crowbotPR #15984: Make tidy check for merge commits -
12:09emiliowaffles: oh, so we already get the last merge. Then yeah, that should be sufficient
12:10wafflesyeah :)
12:10emiliowaffles: sorry, I thought we only had the list of commits by the same author. That&#39;s better
12:10wafflesemilio, oh, no worries! :)
12:27noxMs2ger: wtf
12:27Ms2gerThat&#39;s a few timeouts
12:27wafflesfew? :)
12:30noxMs2ger: I retried it.
12:33scoopremilio, btw. there is an bug I&#39;ve been trying to debug in bindgen, but it happens to cause a segmentation fault, and lldb is not being all that helpful for me ..
12:33scooprfortunately I managed to handreduce the case to a three-liner
12:33emilioscoopr: huh, that&#39;s weird. Do you have steps to reproduce?
12:34emilioscoopr: we&#39;ve definitely had to deal with llvm crashes in a few places, see the cursor_mangling function for example :)
12:35emilioscoopr: lol, that&#39;s a nice reduced test case :)
12:35scooprtook me a while
12:36emilioscoopr: reproduced, fun
12:36scooprat first I thought I was looking at infinite recursion or something like that, as I was feeding Foundation.h to it.. RUST_LOG=bindgen produced a 400megs worth of irrelevant logs, and then just that
12:37emilioscoopr: well, it does seem like a stack overflow to me
12:37emilioscoopr: looking at the #1643 lines of backtrace
12:37crowbotPR #1643: Rename &quot;get_applicable_declarations&quot; to &quot;push_applicable_declarations&quot;. -
12:38scooproh yeah!
12:41scooprwelp, I had bit of hard time figuring whats happening there
12:42emilioscoopr: it seems to get stuck trying to get the return type from the objective-c return type, but I&#39;d have to look into more details to figure out exactly why
12:43emilioscoopr: seems like the cursor.ret_type() is ending up recursing into the function. We enter there because ty.ret_type is Some(), so perhaps the objc code should use something like ty.ret_ty().or_else(|| cursor.ret_ty())?
12:44emilioscoopr: anyway, I need to run now, but if you need anything feel free to ping me :)
12:44noxMs2ger: Can you r+ h5e?
12:45scoopremilio, alright, thanks! I&#39;ll look more into it in the evening perhaps
12:45crowbotPR #260: Update html5lib-tests -
12:45emilioscoopr: no problem, good luck! :)
12:45emilioscoopr: this patch does indeed seem to fix it
12:46scooproh, cool!
12:46emilioscoopr: would need a lot of testing and objc knowledge to know whether it&#39;s correct, though I suspect it should be :D
12:47Ms2gernox, update to c75a9f5? I just landed that
12:47noxMs2ger: What?
12:47Ms2gernox, the html5lib-tests submodule
12:48noxYou did not?
12:48crowbotPR #90: fix #89, add missing &#39;content&#39; string in template element in tests18.dat -
12:48noxSo what did you land?
12:49Ms2gerThat PR
12:49Ms2ger> @Ms2ger Ms2ger merged commit c75a9f5 into html5lib:master 28 minutes ago
12:49noxMs2ger: Well that confusing,
12:49noxMs2ger: I linked to an h5e PR.
12:50noxNot html5lib.
13:00stshineLooks like I got an E-Easy issue for layout
13:15crowbotPR #260: Update html5lib-tests -
13:23noxjack, edunham: When do we deploy the death of windows-gnu?
13:39stshineemilio: heyo
13:40stshineemilio: ,would you like to add a E-Easy tag for that? ^
13:41emiliostshine: heh, fun you mentioned it, I was about to go for lunch, but I was skimming your PR a few seconds ago.
13:41emiliostshine: sure, I&#39;ll add the tag, want to mentor it? If not, I could help out I guess :)
13:42emiliostshine: but yeah, that calc handling is quite broken :(
13:42stshineemilio: yep, It should not be a big deal, isn&#39;t it?
13:43emiliostshine: I don&#39;t think so, it&#39;s mostly a matter of fixing all the callsites, which is annoying
13:43jackNox: I&#39;ll do it in a few hours
13:44noxjack: Yay!
13:44noxjack: I filed this btw
13:44crowbotIssue #15985: Refactor the document loader to properly accommodate for iframes -
13:44stshineemilio: Maybe I am too familiar with layout code :)
13:44emiliostshine: btw, if that is the only failure of your auto PR, we should be able to mark it as failing temporarily
13:44stshineemilio: Thanks!
13:45stshineemilio: Well since I know clearly why it fails I would rather wait
13:45* stshine may change his mind another day :)
13:46emiliostshine: sure, that&#39;s fine, as long as the root cause is fixed soon :)
13:46emiliostshine: anyway, got to grab lunch, see you! :)
13:47stshineemilio: see you!
14:03noxMs2ger: Seems like you must update html5lib tests in wpt.
14:03noxMs2ger: The menuitem tests are wrong in it.
14:03Ms2gerThat seems plausible
14:06noxMs2ger: Will look at the other tests then.
14:09noxMs2ger: So,
14:09noxMs2ger: for,
14:09crowbotIssue #15980: Issues with annotation-xml parsing -
14:09noxMs2ger: how do we that without the MathML DOM?
14:10noxWait, nevermind.
14:10noxWe need some special shenanigans only if there are scripts running.
14:17larsbergnox: jack: edunham: Should we have a dev-servo thread around removing the mingw platform? It feels like a big enough that I feel weird to be learning about it through IRC, even if I wholeheartedly agree :-)
14:18* larsberg may have missed a GH issue or similar with conversation
14:19noxlarsberg: The removal comes from the Cargo change that we discussed about.
14:21larsbergnox: I&#39;m aware. I&#39;m pointing out that, AFAIK, we&#39;re ripping out support for a platform based on a discussion in IRC.
14:22larsbergIf you&#39;d like me to send the mail, I can :-)
14:22noxlarsberg: And someone just posted their troubles with mingw there.
14:22noxlarsberg: If you have the time for it, yeah please.
14:23larsbergnox: Yeah, I saw it. It&#39;s also not clear to me if this will break something else (e.g., does firefox need to build with mingw?) so good to share.
14:23larsbergI don&#39;t promise a great thread, but I&#39;ll write something up.
14:23* larsberg tries to track down the original cargo issue
14:24noxlarsberg: I can do that.
14:24noxlarsberg: ->
14:24crowbotPR #15852: Update to cargo-0.18.0-nightly (fa1b12a 2017-02-07) -
14:24crowbotPR #3651: Attempt to solve #3366, regarding spurious shared library search paths. -
14:24noxlarsberg: Some people use mingw firefox,
14:25noxlarsberg: but it&#39;s not tier1.
14:25noxlarsberg: Tor browser depends on it.
14:25noxBut removing it from our CI shouldn&#39;t break mingw.
14:26noxshouldn&#39;t break stylo*
14:31larsbergnox: I wrote a thing
14:34ajeffreystandups: Landed PR #15965: &quot;Disable tinyfiledialog popups when running in headless mode&quot;.
14:34crowbotIssue #15965: Disable tinyfiledialog popups when running in headless mode -
14:34standupsOk, submitted #43802 for
14:43noxMs2ger: Hah!
14:43noxMs2ger: All your expectations with the bug: keys,
14:44noxMs2ger: update-wpt only removes &quot;expected: FAIL&quot; when fixing them.
14:48noxjdm: Ah ah ah ah.
14:48noxSo old.
14:48noxMs2ger: That insertion issue is quite weird.
14:50noxMs2ger: Never mind, I think I got it.
14:55avadacatavranox: ^
14:55noxWhat did you do?
14:55noxDon&#39;t do that.
14:55noxJust run the test normally.
14:55noxOr start wpt outside of Servo.
14:56avadacatavrai guess now that i&#39;m println debugging in websocket i don&#39;t need rust_log so i can do that lol
14:56* avadacatavra makes things complicated
14:57mbrubeckstandups: un-bitrotting, starting on bug 1337068
14:57crowbotPR #15966: WIP: Bug 1340683 - stylo: Implement the :-moz-any pseudo-class -
14:57standupsOk, submitted #43806 for
14:57firebot ASSIGNED, stylo: need to support -moz-any
14:57firebot ASSIGNED, stylo: implement support for :-moz-only-whitespace and :-moz-first-node in rust-selectors
14:58mbrubeckManishearth: Feel free to steal the -moz-system-metric bug if it&#39;s related to other stuff you&#39;re working on
15:04jdmavadacatavra: RUST_LOG can be used with test-wpt, too
15:05avadacatavrajdm: good to know
15:06Ms2gernox, yeah, it&#39;s a little annoying
15:06noxMs2ger: r? ^
15:08Ms2gernox, r&#39;d
15:15* Ms2ger steps out for a bit
15:21jacklarsberg: thanks for the ML message. I had thought about doing that yesterday but it got lost among other things.
15:29avadacatavranox: i think i figured out why we aren&#39;t creating websockets
15:29noxavadacatavra: Yes?
15:30Manishearthmbrubeck i already stole it :)
15:30avadacatavranox: so creating a websocket calls connect_ssl_socket, which eventually calls stream.try_clone, which fails
15:30avadacatavrai have an idea about why but i need to double check before i say anything further :p
15:30noxajeffrey: Why change the cross-origin.htmk expectations?
15:31noxavadacatavra: haHAA.
15:31* avadacatavra hopes that fixing creating a socket fixes all the other things
15:31noxavadacatavra: Didn&#39;t you make try_clone unconditionally return an error?
15:32avadacatavranox: i didn&#39;t...but i&#39;m pretty sure it does unconditionally return an error lol
15:32noxavadacatavra: You did my friend.
15:32avadacatavra...yes i did
15:32avadacatavraliterally just realized that
15:32* avadacatavra headdesk
15:32noxI made you change it from panic to error,
15:32noxbut error was wrong too,
15:33noxso I headdesk with you.
15:33avadacatavrawell it can&#39;t be done
15:33noxWhy does it even need to call try_clone?
15:33avadacatavraso...i will find an alternative :)
15:33avadacatavrai have no clue
15:33* avadacatavra switches to a new pub will return shortly
15:34noxA new public item?
15:34ajeffreynox: good point.
15:34jdmjgraham: what&#39;s the secret sauce to stop making appear in the manifest?
15:35ajeffreyjdm: you beat me to it,
15:35noxjdm: Never happened for me.
15:35ajeffreyI keep checking in that change and then having to check it back out again, sigh.
15:36jdmnox: it happens when you run those tests totally and the pyc files appear, then you update the manifest
15:36jdmhow did I make that typo
15:36noxWhy do the pyc files appear?
15:36jdmnox: python compiles them when they are imported
15:37cynicaldevilyou don&#39;t need to worry about strange things appearing in the manifest if you don&#39;t have a manifest
15:37cynicaldevil*taps temple*
15:43Ms2gernox, that wasn&#39;t an r+, btw
15:43noxMs2ger: Oh, sorry.
15:43noxMs2ger: Want me to ABORT THESE STEPS?
15:43Ms2gerNo, you get r+ now :)
15:44noxOk. :)
15:44noxMs2ger: Your review was approving the changes btw,
15:45noxbut I didn&#39;t even notice that when I did r=Ms2ger.
15:45canaltinovaManishearth: hi! do these seem unexpected fails or passes to you? I&#39;m not quite familiar with stylo mochitest thing yet >.<
15:46Ms2gernox, so it did! I was sure I&#39;d changed that back
15:46canaltinovaalso there is a gecko part to land(but 1341739) but I don&#39;t think that would cause failure
15:47canaltinova(bug 1341739)
15:47firebot NEW, stylo: need support for :valid/:invalid/:-moz-ui-valid pseudo-classes
15:55Ms2gerjack, running a few minutes late
16:01Ms2gerjack, here now
16:13noxjdm: Oh damn.
16:13noxOh, seems like Homu doesn&#39;t care, great.
16:16Manishearthcanaltinova you only added parse support, right?
16:16Manishearththen that failure seems legit
16:16Manishearthit probably passed before since we didnt support the selector at all
16:18Manishearthbasically, does the test touch functionality that isnt implemented yet?
16:19Manishearth(not at home so cant check)
16:19canaltinovaManishearth: but error says `*|a` and `*|a:not(*)` I didn&#39;t touch them
16:23canaltinovaManishearth: and the ones I implemented are &quot;state&quot; pseudo-classes. I don&#39;t think they need additional support for functionality other then aligning the bitflags with servo and gecko
16:23canaltinovaManishearth: (the bugzilla bug does that but not merged yet)
16:24canaltinovaxidorn: ping
16:31avadacatavranox: ok so i figured out why it does that try clone thing
16:31avadacatavrait uses the stream to create a request
16:31avadacatavrapub fn new<T: ToWebSocketUrlComponents>(components: T, reader: R, writer: W)
16:31avadacatavraand it uses the same stream for reading and writing, hence the clone
16:31avadacatavraso...that&#39;s annoying
16:31noxavadacatavra: Is this easily fixable?
16:32avadacatavranox: not 100% sure
16:32avadacatavraneed to look at what it will take to fix--hoping it will be easy to make it so that we just use one stream for reading and writing
16:32noxavadacatavra: Definitely another breaking change AFAIK.
16:32avadacatavrai guess do we want to keep dealing with this
16:33avadacatavraor suck it up and bump to the other lib
16:33noxavadacatavra: Pinged sfackler.
16:33noxSo fast.
16:33avadacatavrahi sfackler :)
16:33noxsfackler: rust-websocket separates the reader from the writer in its stream stuff,
16:33noxsfackler: by cloning said stream,
16:33noxand that&#39;s not doable in current openssl, right?
16:33sfacklerah yes this thing
16:34sfacklerwhile you could previously clone an SslStream, doing so was to