mozilla :: #servo

17 Mar 2017
00:00sajattacknoob question: the stylo hacking guide says "clone the mozilla-central repo, and checkout the stylo bookmark" I cloned the repo and tried git checkout stylo but that didn't work
00:01sajattackI might be in over my head here
00:03Manishearthstandups: more -moz-system-metric (bug 1341086)
00:03standupsOk, submitted #43821 for https://www.standu.ps/user/Manishearth/
00:03firebothttps://bugzil.la/1341086 NEW, manishearth@gmail.com stylo: need to support the :-moz-system-metric pseudo-class
00:19SimonSapinbholley: half done PR is up, in case you want to have a look: https://github.com/servo/servo/pull/15998
00:19crowbotPR #15998: (Do not merge yet) Per-document locks for CSSOM objects - https://github.com/servo/servo/pull/15998
00:19SimonSapinthough Im not sure how many halves of work are left to do
00:20emilioheh
00:29emilioSimonSapin: maybe this comment is stupid, sorry if so: https://github.com/servo/servo/pull/15998#discussion_r106562368
00:29crowbotPR #15998: (Do not merge yet) Per-document locks for CSSOM objects - https://github.com/servo/servo/pull/15998
00:30SimonSapinemilio: certainly not stupid :)
00:31SimonSapinemilio: was the comment not clear?
00:32emilioSimonSapin: ooh, tricky... So the explicit lifetime not only represents the, er., lifetime, but is also used for borrowchecking?
00:33SimonSapinarent these two things the same thing?
00:33mbrubeckThink of the lifetime as being the duration of "a borrow" rather than of any particular value or variable
00:34SimonSapinif you write &quot;fn write(&self, foo: &Foo)&quot; its implicitly &quot;fn write<&#39;a, &#39;b>(&&#39;a self, foo: &&#39;b Foo)&quot;
00:34SimonSapinthere are always lifetime parameters, even if you dont name them
00:34SimonSapinin this case, giving a name allows expressing the constraint that theyre the same
00:34emilioSimonSapin: sure, sure, you&#39;re totally right, my mistake :)
00:35SimonSapinit is tricky
00:35emilioSimonSapin: we should both probably be in bed already, also :P
00:35SimonSapinyeah Im about to :)
00:36SimonSapinit looks like &#39;a in &&#39;a self is the scope at the end of which self will be destroyed, but it can be shorter than that, its only the scope of the borrow for this call
00:36jryanshmm, so i am trying to make changes to the *.mako.rs files in style and it was working fine yesterday, but today it seems like my changes are totally ignored...
00:36SimonSapinso when I take two parameters with the same &&#39;a _ lifetime they dont have to be destroyed at the same time, &#39;a is only a common subset
00:36emilioSimonSapin: right. anyway, this looks great! Also, the comment about getting numbers was pretty much before reading the whole PR, I was just assuming you&#39;d changed it everywhere.
00:37SimonSapinemilio: yeah, still WIP
00:37jryansi&#39;ve tried putting completely invalid nonsense in, and still it says it compiled successfully...
00:37SimonSapinhence the number of halves of work comment :)
00:37SimonSapinjryans: what command are you using to compile?
00:37emilioSimonSapin: yeah, I can see the amount of work it is :(
00:37jryansSimonSapin: ./mach build -d -p style
00:37SimonSapinjryans: do you have more than one copy of the servo repo?
00:38SimonSapin(I sometimes edit files on the wrong machine)
00:38emiliojryans: (touch components/style/build.rs and it should rebuild it for sure)
00:38jryansSimonSapin: well, i have one servo checkout and serveral m-c checkouts floating around... git diff confirms i am editing the same repo that i want to build
00:38emiliojryans: I&#39;m curious about the underlying problem though
00:39mbrubeckjryans: Or maybe the build script is not running for some reason... it should check timestamps on those files and rebuild if they are newer than the last time it ran
00:39SimonSapinjryans: then I dont know, sorry
00:39SimonSapinIm off for today, bye all
00:42jryansemilio: touch didn&#39;t help... it is at least running the built script, i threw an abort() in style/build.py, and that was hit
00:45emiliojryans: oh, are you touching something gecko-only?
00:45emiliojryans: the style crate has different features
00:45emiliojryans: and we compile out some of them depending on the value of &quot;product&quot;
00:46emiliojryans: perhaps you&#39;re editing a block with product=&quot;none&quot; or product=&quot;gecko&quot;? Those shouldn&#39;t build by default I think
00:46jryansemilio: oh, right! i had added products=&quot;gecko&quot; at the end of working yesterday
00:47emiliojryans: well, that explains it then :)
00:47jryansemilio: yay, it&#39;s picking things up now
00:47emiliojryans: should go to sleep now, good luck! :)
00:47jryansthanks!
01:43dmajorbholley: how is reftest-stylo.list generated?
01:44Manishearthdmajor: it isn&#39;t
01:45Manishearthdmajor: ignore the warning up top
01:45dmajorhah
01:45Manishearthit was generated once by copying reftest.list
01:45dmajorok
01:45Manishearthand then replacing == foo foo-ref with == foo foo
01:46dmajorManishearth: so the discrepancy here is not due to some script, just accident? http://searchfox.org/mozilla-central/search?q=%3D%3D+613433&case=false&regexp=false&path=
01:46Manishearthdmajor: yeah probably
01:47dmajor&#39;kay, cheers
02:32jntrnrcan anyone with a recent checkout of servo on Windows (not in a VM) check to see if this repros? https://github.com/servo/servo/issues/15933
02:32crowbotIssue #15933: Windows showcase loses images - https://github.com/servo/servo/issues/15933
02:32jntrnrI can repro it in a VM, but I&#39;m hearing that natively it doesn&#39;t repro.
02:33jntrnrTo get it to repro took a few seconds of playing around, it doesn&#39;t happen right away
04:03globservo-->gecko syncing just broke. i&#39;ve stopped it and am working on a fix
04:20jackWe need an &quot;It has been X days since the sync broke&quot; sign
04:20* Manishearth repurposes pcwalton&#39;s apple gpu bug sign
04:21globheh
04:27jackdid he make one for that? :)
04:29globManishearth: are you able to manually vendor rust and push the changes?
04:42globor xidorn
04:43xidornglob: ok
04:44* xidorn has pulled autoland three times today :/
04:44xidornglob: just revendor?
04:45globxidorn: yes; #15993 touched the libs. revendoring failed on servo-sync. i&#39;ve fixed the failure but seeing something else weird after that
04:45crowbotPR #15993: Remove rust-encoding from geckolib. - https://github.com/servo/servo/pull/15993
04:55KWierso|afkSimonSapin: if you have a gecko-side fix for the build bustage in the next hour or so, ping me and I can get it landed to autoland
04:57KWierso|afkand/or glob ^
04:59xidornheycam: could you help glob to revendor and push?
04:59xidornheycam: I just realized that cargo-vendor doesn&#39;t work properly on windows...
05:00xidornwhich is alexcrichton/cargo-vendor#22. it has been fixed but a new version hasn&#39;t been released since
05:01heycamxidorn: oh, sure.
05:02heycamxidorn: what is the mach command for that again?
05:02xidorn./mach vendor rust
05:02globmach vendor rust
05:02* heycam does so
05:08heycamglob: xidorn: KWierso|afk: done
05:08globheycam: ty
05:08KWierso|afkjust need a ping for when we need autoland reopened for whatever to land in-tree
05:09KWierso|afkooh, heycam just CLOSED TREE&#39;d it
05:09KWierso|afkneat
05:09globon the plus side, it looks like what servo-vcs-sync wanted to push was right
05:09heycamglob: was it the size of the patch that caused a problem?
05:11globheycam: two issues. first, embarrassingly, a username wasn&#39;t configured in hgrc, so the commit failed. second is changes were pushed while the vendoring was running; need to drop in rebasing
05:12xidornglob: that&#39;s actually weird
05:12globi have hit the individual file_size limits in my tests (some of the vendored in files already exceeded the limits), so that will be fun
05:12xidornglob: because IIUC, servo pushes usually have an interval ~1hr because of the CI run
05:12globxidorn: other changes were pushed to integration/autoland
05:12xidornglob: oh, okay
05:18* glob starts up servo-vcs-sync again, crosses fingers
05:21glob&#39;mozvcssync.servo tree &quot;autoland&quot; is closed, unable to continue&#39; :)
05:22KWierso|afkjust waiting for some green builds
05:22globKWierso|afk: yup :)
05:26KWierso|afkgood enough, autoland reopened
05:34globall appears to be well again, thanks xidorn and heycam
05:34heycamglob: thank you!
07:32hiroCould someone tell me what I should do when CI build failed on PR? https://github.com/servo/servo/pull/16005
07:32crowbotPR #16005: Compose animation with servo&#39;s hashmap - https://github.com/servo/servo/pull/16005
07:33hiroI could actually build it locally.
07:37heycamhiro: you typed &quot;retry&quot; but shouldn&#39;t you type &quot;r=someone&quot;?
07:38heycamthe &quot;retry&quot; syntax is only for the bors-servo bot
07:38hiroheycam: OK. I will try the r=. Is there any document about bors-servo? It&#39;s really magic word for me.
07:39hiroah, CI build is not done by bors-servo!
07:39heycamhiro: there is somewhere but now I can&#39;t find it -_-
07:40hiroheycam: thanks, I will search it.
07:40heycamhiro: oh, here: http://build.servo.org/homu/
07:40heycam(at the bottom)
07:40hiroheycam: Thanks! great!
07:40heycambut yes you&#39;re right: the bot commands only control the buildbot build/test jobs
07:41heycamthe ones shown at the bottom of the PR are handled elsewhere
07:41heycam(and I think they don&#39;t even block the PR from getting merged if they fail...?)
07:42hiroif failed? oh...
07:47SimonSapinKWierso|afk: what bustage? Was it https://github.com/servo/servo/pull/15993 ?
07:47crowbotPR #15993: Remove rust-encoding from geckolib. - https://github.com/servo/servo/pull/15993
07:49KWierso|afkSimonSapin: yes. Fixed now.
07:50KiChjangdo servo builds require the usage of bindgen?
07:50SimonSapinI did not in the PR it would probably need revendoring, and it was landed while I was asleep
07:50SimonSapinKiChjang: no, we have the output of bindgen in the repo
07:50SimonSapins/did not/did note/
07:51heycamSimonSapin: the auto-revendoring just failed this time
07:51heycamnormally it shouldn&#39;t require intervention
07:51SimonSapinoh, we have auto-revendoring now?
07:51SimonSapinnice
08:00heycamxidorn: can you tell me how to run the stylo mochitests locally (with the failure expectation stuff)?
08:00* heycam could probably work it out from poking through treeherder logs...
08:02mrobinsonSimonSapin: Do you have a few minutes to chat about overflow?
08:02SimonSapinmrobinson: sure
08:02mrobinsonSimonSapin: I&#39;ve noticed that overflow doesn&#39;t always properly include absolutely positioned descendants.
08:02mrobinsonPerhaps that is because they aren&#39;t in the border box?
08:03SimonSapinI dont know much about this
08:03mrobinsonSimonSapin: Okay. No problem! I can also talk to pcwalton when he appears later.
08:04SimonSapinmrobinson: &quot;overflow&quot; of one element is how much that element can scroll if it has &#39;overflow: scroll&#39; ?
08:05mrobinsonSimonSapin: Ah, Interesting. In that case overflow should not include absolutely positioned descendants (unless a content box is established inside), but stacking contexts should not be clipped to overflow.
08:05SimonSapinmrobinson: I meant this as a question
08:05mrobinsoncontent box => containing block
08:05SimonSapinmrobinson: what is it you call &quot;overflow&quot;?
08:06mrobinsonSimonSapin: I&#39;m referring here simply to the thing that is assigned to stacking contexts. We do use that number to figure out how to scroll overflow:scroll though.
08:07mrobinsonSimonSapin: I&#39;m actually not sure if we use it for anything other than scrolling the area and clipping. That&#39;s a good question.
08:08SimonSapinmrobinson: what I am trying to figure out is what the thing servo internally calls &quot;overflow&quot; is supposed to be, and whether it is suppose to include abspos descendants
08:08SimonSapinits a bounding box, right?
08:09mrobinsonSimonSapin: Well, in the case of scrolling, it should not include absolutely positioned descendants which have a containing block which is a shared ancestor.
08:09mrobinsonSimonSapin: On the other hand, we should include the absolutely positioned descendants when we are making the clipping region.
08:10mrobinsonI&#39;m starting to think that stacking context overflow should not affect clipping at all. That would fix my issue.
08:10KiChjangomg
08:10KiChjangeven homu isn&#39;t listen to jack
08:10KiChjanghttps://github.com/servo/core-graphics-rs/pull/72
08:11crowbotPR #72: Add support for CGEventSetType - https://github.com/servo/core-graphics-rs/pull/72
08:11KiChjanglistening*
08:11mrobinsonSimonSapin: When you ask whether it is a bounding box, what do you mean exactly?
08:11heycamxidorn: (figured it out)
08:12SimonSapinmrobinson: what is the nature of &quot;overflow&quot;? A rectangle?
08:13SimonSapinmrobinson: Im familiar with CSS specs including layout so I can help you interpret that, but not much at all with servos layout code
08:14mrobinsonSimonSapin: Okay. I think that the conclusion here is that we can use what we call &#39;overflow&#39; for clipping or for building overflow:scroll regions, but not both.
08:15emiliobholley: just wake up. Not on muy computer, but that url that we resolve is used for @import, so it&#39;s the main thread. We can pass the URL unconditionally to Gecko and filter there
08:15mrobinsonSimonSapin: I think it makes sense that what we call overflow matches the CSS spec.
08:15emilio*woke up
08:15emilioDammit
08:15emiliobholley: anyway, will comment on the bug when I&#39;m back from class
08:17SimonSapinmrobinson: Im looking at https://drafts.csswg.org/css2/visufx.html , the concept of &quot;overflow&quot; there is &quot;when stuff sticks out&quot; but not a single rectangle, I think. This bit seems relevant though: &quot;A descendant box is positioned absolutely, partly outside the box. Such boxes are not always clipped by the overflow property on their ancestors; specifically, they are not clipped by the overflow
08:17SimonSapinof any ancestor between themselves and their containing block &quot;
08:18SimonSapins/not a single/not a well-defined/
08:19mrobinsonSimonSapin: Hrm. That is sensible, I think. I&#39;m not sure exactly what it means to be clipped by the &quot;overflow&quot; though.
08:19mrobinsonSimonSapin: Certainly things can be clipped by the &quot;overflow property.&quot;
08:19SimonSapinmrobinson: in the &quot;overflow: hidden&quot; case?
08:20heycamare the builders having problems, or am I misreading the buildbot status page
08:20mrobinsonSimonSapin: Oh yeah. Perhaps it&#39;s just weird wording in the spec then.
08:20SimonSapinheycam: servo buildbot?
08:21heycamSimonSapin: yeah. or maybe more homu -- buildbot is running the try jobs for hiro&#39;s try request
08:21heycamSimonSapin: I forget -- what&#39;s the difference between pending and approved in the homu queue?
08:22SimonSapinheycam: home only schedules one non-try build at a time, approved means in the queue to be scheduled
08:22SimonSapinheycam: pending means &quot;waiting to hear results from buildbot&quot;, I think
08:23heycamSimonSapin: ok. I thought CJ&#39;s push happened before hiro&#39;s but maybe I&#39;m wrong
08:23* heycam hopes the comments in https://github.com/servo/servo/pull/16005 haven&#39;t confused homu
08:23crowbotPR #16005: Compose animation with servo&#39;s hashmap - https://github.com/servo/servo/pull/16005
08:23SimonSapinheycam: I closed a PR yesterday because homu was still waiting (pending) to hear results of a build that ended hours prior, and everything else I tried to unclog the queue didnt work
08:24hiroOh, I misunderstand &#39;approved&#39;. I thought it&#39;s waiting for some commands.
08:25SimonSapinapproved by a reviewer
08:26hiroSimonSapin: then it&#39;s automatically landed when the queue is empty?
08:26SimonSapinwhen no other non-try build is pending, homu takes the next approved in the queue, tells buildbot to build it, and marks it pending
08:27heycamSimonSapin: maybe mbrubeck&#39;s one is stuck, actually
08:27SimonSapinas far as homu is concerned, try builds can run at the same time of each other and of a non-try build
08:27hiroSimonSapin: Thanks. I should have been quiet.
08:27SimonSapinbut then buildbot schedules jobs onto builders
08:27SimonSapinonly one job per builder at a time
08:28heycamSimonSapin: I think a number of times I&#39;ve seen issues with homu is when try requests are involved...
08:28SimonSapinwe have slightly more builders than necessary for a full build, but less than two
08:28heycamSimonSapin: so I wonder if this command has got homu stuck: https://github.com/servo/servo/pull/15991#issuecomment-287265280
08:28crowbotPR #15991: Upgrade dependencies with minor/patch updates - https://github.com/servo/servo/pull/15991
08:28farwindls
08:28heycamSimonSapin: (or the one just before it)
08:29SimonSapinI dont know :(
08:31heycamok, well I&#39;ll leave it to someone else who knows what to do...
08:32hiroheycam: Thank you Cameron!
08:33heycamCJKu: if your PR doesn&#39;t merge before you leave, add a comment pointing to the Gecko bug that should be landed. (maybe edit it into the first comment)
08:35CJKuheycam: roger
08:35SimonSapinCJKu: are you waiting for #16004 to land?
08:35crowbotPR #16004: Bug 1339674 - https://github.com/servo/servo/pull/16004
08:36firebothttps://bugzil.la/1339674 ASSIGNED, cku@mozilla.com stylo: update glue to set transform-box as a StyleGeometryBox.
08:36CJKuSimonSapin: hi. yes
08:40KiChjangwait
08:40KiChjangsomething&#39;s wrong
08:40SimonSapinIm cancelling builds
08:41KiChjang#15991 is up to something
08:41crowbotPR #15991: Upgrade dependencies with minor/patch updates - https://github.com/servo/servo/pull/15991
08:41KiChjangugh, the r- try didn&#39;t work
08:41SimonSapinsame (?) happened with #15998
08:41crowbotPR #15998: (Do not merge yet) Per-document locks for CSSOM objects - https://github.com/servo/servo/pull/15998
08:42SimonSapinwith &quot;try&quot; it was &quot;pending (try)&quot;, then with &quot;try-&quot; is went to just &quot;pending&quot;
08:42SimonSapinthen &quot;r-&quot; did nothing
08:42SimonSapinI dont know how to get the PR out of that state
08:42KiChjangthe simplest way is to push a new commit hash
08:42KiChjangso git --amend -C @ and then git push -f
08:42SimonSapinah, good to know
08:42KiChjangthis will reset all the states
08:43SimonSapinwhy &quot;-C @&quot; ?
08:43KiChjangtells git to reuse HEAD&#39;s commit message
08:44SimonSapinoh, so same as --no-edit
08:44KiChjangso that you don&#39;t need to use vim to look at the commit message again
08:44KiChjang@ is shorthand for HEAD apparently
08:44KiChjangSimonSapin, are you going to force push #15991?
08:44crowbotPR #15991: Upgrade dependencies with minor/patch updates - https://github.com/servo/servo/pull/15991
08:44KiChjangi can do it btw
08:45SimonSapingo ahead
08:45SimonSapinI dont know if we can, though, since its in mbrubecks repo
08:45SimonSapinnote to self: dont force push while a PR is closed, then it cant be reopened
08:45KiChjanguh oh
08:46farwindKiChjang -- got it, turns out I was failing to correctly package the C library in the standard way
08:46KiChjangi can&#39;t force push to mbrubeck&#39;s branch
08:46KiChjanghe disabled &quot;allow maintainers to edit PR branch&quot;
08:46KiChjangso in this case, i&#39;d just close the PR and create a new one
08:51KiChjanghiro, are you hiikezoe in github?
08:51hiroKiChjang: yes, exactly.
08:51KiChjangwhy did you repeatedly use try when you already did r=heycam?
08:52heycamKiChjang: hmm I&#39;d hoped that &quot;retry&quot; there would go back to a normal build request, but it&#39;s done another try one
08:52hiroKiChjang: I did not know that &#39;approved&#39; state is automatically merged when home queue is empty.
08:52KiChjangheycam, no, you need try- clean retry just to be safe
08:52KiChjangwait i missed r+ as well
08:52hiroKiChjang: I thought I have to do something to tell bors-servo.
08:52heycamKiChjang: is there a way I can make it interrupt the try run it&#39;s doing right now?
08:52KiChjangheycam, yes, by pushing a new commit hash
08:53heycam:(
08:53SimonSapinheycam: which one do you want to stop?
08:53heycamSimonSapin: #16005
08:53crowbotPR #16005: Compose animation with servo&#39;s hashmap - https://github.com/servo/servo/pull/16005
08:53KiChjanghiro, when you do a r=(someone) or just r+, it gets automatically added to the queue here http://build.servo.org/homu/queue/servo
08:53SimonSapinI can stop buildbot jobs manually
08:53KiChjangit will build your PR once it&#39;s its turn
08:53heycamSimonSapin: just want to do a non-try retry :)
08:54* heycam wonders if people get confused with &quot;try&quot; and &quot;retry&quot;
08:54KiChjanghomu is sort of confusing in a way where when you do an r+, it doesn&#39;t immediately build your PR
08:54KiChjangso, quite unlike how stuff works in geckoland
08:54SimonSapinit is confusing
08:55SimonSapinheycam: looks like its not even building http://build.servo.org/grid
08:55SimonSapinnothing in try right now
08:55SimonSapinah, there it is
08:55heycamSimonSapin: ah yeah just the one that reported a failure, I guess
08:56KiChjanglet&#39;s just push a new commit hash to that PR branch
08:56SimonSapinheycam: but yeah, I think the only way to get it out of &quot;try&quot; state might be to push a new commit
08:57hiroThanks, I will push -f there.
08:58KiChjangok, now everything should be good
08:59hirothank you all.
08:59heycamSimonSapin: am I right that build-time bindgen doesn&#39;t run in Servo CI?
08:59heycamSimonSapin: so if there are bindings-breaking changes, we need to update the in-tree bindings?
09:00SimonSapincorrect, it doesnt run without full gecko sources
09:00heycamok
09:00CJKuhttp://build.servo.org/builders/linux-dev/builds/6188
09:01heycamCJKu: for your build failures here, you&#39;ll need to check in updated in-tree bindings
09:01CJKuheycam: gecko-side?
09:01heycamCJKu: no, in the servo PR
09:02heycamCJKu: I think if you run |./mach build-geckolib --with-gecko=/path/to/your/gecko/objdir/dist| it will update those in-tree bindings files
09:02heycamCJKu: and then you can commit them and re-push your PR
09:03heycamthough it&#39;s been a while since I updated the in-tree bindings --- if that doesn&#39;t make any changes to components/style/gecko_bindings/ files, you can copy then either from your gecko objdir, or from servo&#39;s target dir
09:03heycamjust copying structs_debug.rs and structs_release.rs should be enough
09:03heycamsorry this isn&#39;t more automated...
09:04CJKuheycam: ok, will do.
09:06CJKuheycam: like https://reviewboard.mozilla.org/r/112462/diff/2#index_header ?
09:07heycamCJKu: yes like that
09:07heycamCJKu: but you can just push them as part of your PR, rather than going through mozreview again
09:08CJKuheycam: understand
09:35CJKuheycam: I run ./mach build-geckolib.. and notices that these three files(bindings.rs, structs_debug & _release) changes a lot
09:35CJKuhaycam: is that normal. I don&#39;t think all the change is caused by bt patch
09:36CJKuFor exp
09:36CJKuhttps://irccloud.mozilla.com/pastebin/QK4VsMf3/
09:37CJKuI don&#39;t think my change in the patch will lead to this change in struct_debug..
09:42heycamCJKu: yes I think it&#39;s normal
09:42heycamCJKu: because actually those files are not updated very often
09:42heycamCJKu: only if the stylo CI tests would fail
09:42heycamCJKu: so there are probably many other bindings changes included in your update
09:44KiChjangSimonSapin, are you able to open a new PR with the branch you force-pushed to?
09:44CJKuheycam: phew.. thanks
09:45SimonSapinKiChjang: #15998? Its not important, its not done anyway and the previous try run told me what I needed to know
09:45crowbotPR #15998: (Do not merge yet) Per-document locks for CSSOM objects - https://github.com/servo/servo/pull/15998
09:46KiChjangah right, it wasn&#39;t opened for merging
09:47KiChjang!crate io-surface-rs
09:47rustbotCrate &#39;io-surface-rs&#39; does not exist.
09:47KiChjang!crate io-surface
09:47rustbotio-surface (0.6.0) - Bindings to IO Surface for OS X -> https://crates.io/crates/io-surface <https://docs.rs/io-surface>
09:47KiChjang!crate core_foundation
09:47rustbotcore-foundation (0.3.0) - Bindings to Core Foundation for OS X -> https://crates.io/crates/core-foundation <https://docs.rs/core-foundation>
09:49KiChjanghuh, i can&#39;t seem to publish io-surface
09:49KiChjangdo i actually need a mac in order to publish it?
09:49KiChjangor perhaps i need rust nightly?
09:57bd339emilio: ping
10:36noxreference_child.and_then(Node::GetPreviousSibling).or_else(|| parent.GetLastChild()).and_then(Root::downcast::<Text>)
10:36noxThat&#39;s a mouthful.
10:44noxAnyone r? ^
10:45heycampoor CJKu, so many merge conflicts this week...
10:46heycamCJKu: once you&#39;ve rebased and repushed, you can just `@bors-servo r=heycam` again (since I did delgate+ at the start)
10:51cynicaldevilnox: hey, did you get my mail? :)
10:53noxcynicaldevil: I did, it looks good.
10:55wafflesnox, re: #16010, where is that (insert) function used?
10:55crowbotPR #16010: Properly coalesce whitespace when given a reference child (fixes #15979) - https://github.com/servo/servo/pull/16010
10:56noxcynicaldevil: You seem to be confused about something though.
10:56noxwagle: Grep for super::insert.
10:56wafflesah cool
10:56waffles*waffles bte
10:56noxcynicaldevil: There is no message to send when a script is encountered when parsing synchronously.
10:56noxwaffles: Someone IRCCloud doesn&#39;t want to autocomplete you.
10:56noxReloading it solved the issue.
10:57cynicaldevilnox: yes, I know, that PrepareScript will be a new message I&#39;ll have to create
10:57cynicaldevilor are you saying its not needed?
10:57noxcynicaldevil: Off-main-thread parsing only happens when a script is currently being executed.
10:58noxcynicaldevil: Until one is, parsing is done in a non speculative way on the main thread.
10:58noxcynicaldevil: So while scripts are not executed, your TreeSink will produce values of the enum you mention, and execute them as parsing actions immediately.
10:59wagle8-p
11:00cynicaldevilnox: I got that
11:00cynicaldevilnox: but doesn&#39;t non-speculative parsing happen on the parser thread as well?
11:00cynicaldevilnox: I think that&#39;s how Gecko does it
11:00noxcynicaldevil: I am not sure about that.
11:01noxcynicaldevil: Ask hsivonen, I may very well be wrong about it.
11:01cynicaldevilnox: it does
11:01noxcynicaldevil: It&#39;s a detail anyway, your proposal looks good so far.
11:01cynicaldevilnox: Thanks!
11:01cynicaldevilI&#39;ll also clarify with hsivonen
11:16noxWhy does http://build.servo.org/homu/queue/servo say 52 total,
11:16noxWhen there are 63 PRs in servo/servo?
11:41xidornheycam: I&#39;ve pushed an update in autoland with the argument written in stylo-failures.md. sorry for the confusion.
11:42xidornheycam: bz asked me that question before... and I promised to add that description... but I didn&#39;t do that until today :(
11:59heycamxidorn: cool, thanks :)
12:04heycamxidorn: you mean documentation for the stylo-failures.md format?
12:04heycamoh for how to run it, right
12:04* heycam goes to serve dinner
13:13noxjack: Currently carrying a contributor&#39;s patch to migrate to ws to unblock hyper&#39;s bump.
14:37mrobinsonOkay. So I just got overflow:scroll in a rounded rect working for the first time in Servo, I think.
14:37nical\o/
14:41noxavadacatavra: ^
14:48mbrubecknox: If you use &quot;WIP&quot; then homu will automatically prevent people from merging your PR https://github.com/servo/homu/blob/master/homu/main.py#L355
14:50noxmbrubeck: I was pretty the same happened for &quot;Do not merge&quot;,
14:50noxguess I&#39;m wrong.
15:09noxlarsberg: Is the debugger crate disabled on Android, maybe?
15:09noxOh, [target.&#39;cfg(not(target_os = &quot;android&quot;))&#39;.dependencies]
15:10noxOh.
15:12larsbergnox: Yeah, we got screwed by libc yet again there - https://github.com/servo/servo/issues/14171
15:12crowbotIssue #14171: Debugger update broke the Android build - https://github.com/servo/servo/issues/14171
15:12larsbergand just decided to turn things off
15:13noxlarsberg: r? ^
15:13noxlarsberg: https://github.com/carllerche/mio/blob/master/CHANGELOG.md#065-march-14-2017
15:13larsbergnox: yay
15:14noxlarsberg: This should unblock switch to ws on Android,
15:14noxto finally unblock hyper bump.
15:14jdmyakkety yaks
15:14larsbergnox: such faith that there are no more baby yaks hiding in the herd
15:15noxjdm: Yeah I dropped everything and looked at carrying that ws switch patch instead.
15:15noxlarsberg: Oh there will be.
15:15noxlarsberg: The ws bump isn&#39;t ready yet.
15:15noxs/bump/switch/
15:15noxlarsberg: But that&#39;s one yak less.
15:15larsbergnox: a baby yak is born daily
15:15larsbergwe&#39;re gonna have to buy more clippers
15:16larsbergnext on #servo: how far CAN a meme go?
15:16noxlarsberg: More leather jackets for me.
15:16larsbergnox: I don&#39;t think you&#39;re shaving the yaks correctly, but I admire the enthusiasm
15:16nox:D
15:18noxlarsberg: https://github.com/servo/servo/pull/16011 FML this does the mio bump.
15:18crowbotPR #16011: Upgrade dependencies with minor updates - https://github.com/servo/servo/pull/16011
15:18noxI&#39;m going to get bitrot pretty soon.
15:29noxajeffrey: You missed a comment.
15:30ajeffreynox: which one?
15:30noxajeffrey: A reply on the set_active thread.
15:31ajeffreyDo you mean https://github.com/servo/servo/pull/15799#discussion_r106601276?
15:31crowbotPR #15799: Implement dissimilar-origin window.parent and window.top - https://github.com/servo/servo/pull/15799
15:32noxajeffrey: I mean https://github.com/servo/servo/pull/15799#discussion_r106668021
15:32crowbotPR #15799: Implement dissimilar-origin window.parent and window.top - https://github.com/servo/servo/pull/15799
15:33ajeffreynox: ah, that&#39;s weird it wasn&#39;t showing up, I must have needed to reload the github page.
15:33noxajeffrey: Or check your emails. :)
15:34ajeffreynox: the idea is to return a browsing context which has the given window as its currently active window.
15:35ajeffreyshall I add a comment to that effect?
15:35noxajeffrey: Changing the active window seems unrelated to retrieving a browsing context to me.
15:36ajeffreynox: it&#39;s a bit wasteful to retrieve the browsing context then set the currently active window, in the case of a cache miss,
15:36mib_4qsxleHello, I am planning to apply for an internship on the servo project through GNOME OPW and I&#39;m a beginner. I just wanted to say hi. :)
15:36noxajeffrey: But why does retrieving the browsing context needs to change the active window?
15:36ajeffreysince we&#39;re constructing a new browsing context whose active document is already the window.
15:36noxThis is completely at odds with the method&#39;s name.
15:37ajeffreynox: I can rename it.
15:40noxavadacatavra: We need to fix https://github.com/housleyjk/ws-rs/issues/103 for ws to be usable.
15:40crowbotIssue #103: Ability to return Result from io::Handler::handle_queue - https://github.com/housleyjk/ws-rs/issues/103
15:42avadacatavranox: can you comment that on the ws issue?
15:42noxavadacatavra: Will do
15:42avadacatavra|ptonox: thanks. I might do some work over the next week but don&#39;t want to forget things like that
15:43ajeffreynox: browsing_context_with_currently_active?
15:43jackjdm: https://www.irccloud.com/pastebin/glWSJRGO/
15:43noxajeffrey: I still don&#39;t understand why it needs to set a different window active,
15:43noxso I can&#39;t suggest a better name.
15:43jackthis error happens a alot
15:44jackhttps://www.irccloud.com/pastebin/UVFcKRc2/
15:44jackalso that one
15:44jackManishearth: ^
15:44jdmjack: how delightfully inscrutable!
15:44ajeffreynox: the place its used is: https://github.com/servo/servo/pull/15799/files#diff-1879ac6bd5d567e2aa43529d33474677R1764
15:45jdmjack: I guess the key_error is the repo_label?
15:45ajeffreywhich is when we&#39;ve built the window, and need to get a browsing context for it.
15:45noxajeffrey: Your anchor link is invalid and doesn&#39;t point me to the code you are talking about.
15:46jackjdm, Manishearth: our homu is from feb. should i update it?
15:47ajeffreynox: hmm, very odd, try again: https://github.com/servo/servo/pull/15799/files#diff-1879ac6bd5d567e2aa43529d33474677R1776
15:47noxBetter.
15:47noxSo what&#39;s the issue?
15:47noxWhy can&#39;t you call set_currently_active here?
15:47jackManishearth: also your easter egg is over triggering for some reason
15:48jdmjack: that&#39;s because we haven&#39;t depployed https://github.com/servo/homu/commit/9f56ee580fa1e8bc99af106dd4baaf2db4bf6174
15:48jackaccording to https://github.com/servo/homu/commit/612d2b25bcf37e55bbf115edd30d8e548d15b658 i requies &quot;are you still there&quot; but clearly it&#39;s triggering all the time
15:48noxjack: When do we deploy the death of mingw?
15:48ajeffreynox: because in the case that the browsing context was freshly constructed, it already has the window currently active.
15:48jackuh, that is not all the problem
15:48jackthe word list doesn&#39;t match
15:49noxajeffrey: Ok, I don&#39;t get it but I guess the former code did the same weird thing, so I don&#39;t care.
15:49jackoh, is it reading manish&#39;s comment multiple times?
15:49jdmjack: right
15:49jackok. i&#39;ll deploy a new homu quick
15:50jacknox: one thing at a time
15:50noxNo, all of them, at once, right now!
15:50ajeffreynox &quot;don&#39;t care&quot; == &quot;no change needed&quot;?
15:50noxajeffrey: Yes.
15:50ajeffreynox: thanks!
15:50noxjack: This society of over consumption made me this way.
15:50jdmjack: I wonder if the database got messed up so the core-graphics-rs repo is missing?
15:50jdmor something?
15:51* jdm doesn&#39;t know what g.states is
15:57noxavadacatavra|pto: It shouldn&#39;t be too hard to fix xit.
15:58jackjdm: r? ^
15:58jackor anyone reall
16:06larsbergnox: did you see the thread? removing mingw is basically giving up the internet to the forces of evil.
16:07larsbergnox: I suspect that, for now, we should at least keep it building (either via msvc cross-compile or PATHs&#39;ing all the things)
16:07noxlarsberg: Ok,
16:07noxlarsberg: ball is in your hands then.
16:07larsbergI&#39;m assuming firefox will hit the exact same problem with rustc and cargo
16:07noxThis is ridiculous though,
16:07noxand Cargo just shouldn&#39;t be broken.
16:08noxAFAIU, Cargo says we shouldn&#39;t put a mingw rustc in PATH,
16:08noxthis doesn&#39;t seem like a sane thing to ask at all.
16:09larsbergnox: FWIW, I will do my best, but blocking on me is not strategy for immediate success. Finding an uninterrupted hour to work on something technical is kinda a challenge right now. I can try to find somebody to help once it&#39;s clear what route we should go, otherwise I think I have some free time next wed/thurs to look at it :-)
16:09noxlarsberg: This is &quot;only&quot; blocking the openssl bump.
16:10noxlarsberg: But if ws cannot land, it&#39;s not the only blocker,
16:10noxso it doesn&#39;t matter.
16:10larsbergnox: Oh, wait, this is blocking avadacatavra|pto? Then I&#39;d better get on it! I thought it was just you :-) tee hee hee
16:10noxlarsberg: She is on PTO so it doesn&#39;t matter either. :)
16:11SimonSapinnox: https://tokio.rs/blog/tokio-io/ looks very nice, Im looking into whether it would make sense for h5e to use it instead of Tendril
16:11noxSimonSapin: Instead of Tendril?
16:11SimonSapinhttps://carllerche.github.io/bytes/bytes/struct.Bytes.html
16:11avadacatavra|ptolarsberg: the OpenSSL bump is a mess of blockers
16:11noxSimonSapin: Oh nice.
16:11SimonSapintheres also https://docs.rs/tokio-io/0.1.0/tokio_io/trait.AsyncRead.html
16:16noxavadacatavra|pto: TIL ws isn&#39;t ready for rust-openssl 0.9 too.
16:17* avadacatavra|pto dies
16:27jacknox: accidentally deployed
16:27jackjdm: homu updated
16:48* jdm_ disappears for a while
17:26ajeffreystandups: Landed PR #15799: &quot;Implement dissimilar-origin window.parent and window.top&quot;.
17:26crowbotPR #15799: Implement dissimilar-origin window.parent and window.top - https://github.com/servo/servo/pull/15799
17:26noxTIL .top is a TLD.
17:26noxDamn, aimtothe.top is taken.
17:31ajeffreyAt this point, we have x-origin windows and same-origin-domain security checks, hooray!
17:32ajeffrey(though for some reason standups isn&#39;t talking to me)
17:33ajeffreystandups: !help
17:34ajeffreyhmm, so standups is alive.
17:35ajeffreystandups: Landed PR #15799: &quot;Implement dissimilar-origin window.parent and window.top&quot;.
17:35crowbotPR #15799: Implement dissimilar-origin window.parent and window.top - https://github.com/servo/servo/pull/15799
17:36ajeffreystandups: !trust ajeffrey
17:48cbrewsterajeffrey: \o/ nice work!
17:48ajeffreycbrewster: thanks!
17:56noxajeffrey: See how that one commit PR was easy to review,
17:57noxand way less scary to the eye than your interdependent PR with dozens of WIP. :P
17:57ajeffreynox: that was a dependent PR originally :P
17:58noxajeffrey: I know!
17:58noxThat&#39;s why I said it.
17:58noxThe moment it wasn&#39;t one, it took a couple of days to land.
17:59canaltinovaManishearth: does :-moz-empty-except-children-with-localname parses string values too?
17:59canaltinovaManishearth: It looks like it just parses ident as argument. But current parse function in servo uses expect_ident_or_string for it
18:03mbrubeckstandups: Landed :-moz-any, working on :-moz-first-node and :-moz-only-whitespace (bug 1337068)
18:03standupsOk, submitted #43867 for https://www.standu.ps/user/mbrubeck/
18:03firebothttps://bugzil.la/1337068 ASSIGNED, mbrubeck@mozilla.com stylo: implement support for :-moz-only-whitespace and :-moz-first-node in rust-selectors
18:06standupsI trust ajeffrey
18:06standupsOk, submitted #43868 for https://www.standu.ps/user/ajef