Skip to content

Meeting 2013 11 18

kud1ing edited this page Nov 21, 2013 · 2 revisions

Servo Meeting 2013-11-18

Agenda

  • Should we add all of the ACID2 work identified during the workweek to the ACID2 milestone?
  • Windows platform support

Attending

lbergstrom, jack, brson, pcwalton

Acid2

  • jack: there's a bug?
  • lbergstrom: Should we scrub it based on the work the Samsung folks did nailing down concrete issues? https://github.com/mozilla/servo/issues?milestone=4&state=open
  • jack: plus combinator (785) might be there already. z-index and position:fixed we started last week, but no PRs. Not sure what 677 is. And we're missing stuff that was on the board. Fragment navigation. Border rendering for the diamond. overflow:hidden. Some missing stuff, so we need to add issues for the stuff that was in the workweek from servo-in-seoul projects.
  • lbergstrom: No pictures in that room, but we have notes: https://github.com/mozilla/servo/wiki/Transription--Layout-and-ACID2
  • jack: I'll contact Samsung to get the presentation. We can just open bugs. I think young-il wanted us to keep working in groups like we were during the week. We can then just walk through them. Tables and generated content are big ones, and we need design discussions.
  • pcwalton: tables. How do we do it in the 3-pass model? Probably something like if simple (no rowspan & colspan), do something smart, else be really sequential. I'd have to know what the computation algorithm is.
  • jack: Tables are scoped, so less painful than floats, right?
  • pcwalton: Leo showed how you can do them in full generality and parallel,but it required 7 traversals. The overhead will probably be killer.
  • jack: Special for tables?
  • pcwalton: Bottom-up & top-down thing auto-generated by his prolog thing that searches for layout algorithms. You enter the attribute grammar and it produces an algorithm, but it takes 7 passes. Feel like the overhead of that will probably be not worth it. Maybe we can do something simpler if there's no rowspan or colspan.
  • jack: What's the percentage of rowspan or colspan? The usage counters blink uses search the Google index.
  • pcwalton: All we can do is Common Crawl. How do we get access? Maybe a good intern project.
  • jack: Nothing else jumps out from ACID2 as needing significant design. Maybe Simon will have some thoughts on CSS selector stuff.
  • pcwalton: Who will review the border rendering code? kmc is out?
  • jack: I can tomorrow.
  • pcwalton: Looking at it right now. Not very big, but could use some comments.
  • jack: If you want to do a pass and ask for more comments, I can get it after they address yours. They should have something to test it. Maybe an image?
  • pcwalton: They added a testcase.

Window platform support

  • jack: Would vastly help Samsung's productivity. Should we do this now? Sounded like from Andreas that this is worth doing. Using ANGLE instead of Windows-native should help with the port.
  • pcwalton: Fonts will be the hardest thing. You can shortcut graphics, but not fonts.
  • jack: Probably means cleaning up fonts, because nobody understands how that is supposed to work. Pros/cons here? Need Bors gating builds on windows. Bit of a hassle getting test infra setup. And rust upgrades mean another platform to check for those. I assume none of us are currently set up for that.
  • pcwalton: Been dealing with it in Rust. If it works in Rust, it should work for us as well. glfw helps a lot here because they have a Windows port and it takes care of windowing.
  • jack: No dissent, so we should probably look at it. We'll see if we can't get them to help with some of the work.
  • lbergstrom: Window? debugging and perf?
  • jack: debugging is bad
  • pcwalton: can use gdb from mingw, but it's not that great. Enough for backtraces.
  • lbergstrom: Is perf the same across platforms?
  • pcwalton: The LLVM backens are mostly the same, but no perf numbers on Windows yet in malloc or I/O. Malloc is probably slower and might have to fast-track jemalloc in rust. No difference on Mac/Linux, but (from Firefox) helps. Thread spawning and process spawning definitely different. Maybe I/O. But numeric should be identical.
  • jack: Maybe with rustpkg stuff it won't be too bad. With mingw, you probably have gnu make?
  • pcwalton: Yes.
  • jack: Maybe build pain won't be too bad.
  • pcwalton: MSYS gives you make.

Mentoring groups

  • jack: try to look at PRs from the weekend for your groups as they've come in.
Clone this wiki locally