Mozilla Status Board

manishearth@gmail.com

Current Status - 2015-03-09

Done:

Servo:

  • Getting Gonk to work again
  • Mach integration of Gonk
  • Started Travisifying deps
  • Started work on linear types

Rust:

  • Rollups and shepherding
  • Figuring out improvements to the build system
  • Workshop at GNUnify

Next:

  • More travisification
  • Help Philip with linear types
  • Use code similar to humpty_dumpty for unused clone detection
  • Fix SSL SAN

Older Posts

Member of Projects

Team Posts

mgoregaokar@mozilla.com yesterday

Done:

Stylo:

Gc:

Gecko: Added layout support for inset() https://bugzilla.mozilla.org/show_bug.cgi?id=1246762

Servo: Accidentally implemented multiple backgrounds: https://github.com/servo/servo/pull/12945

Next:

  • Run FDD on twitter and github
  • Finish up safety PR
  • url() values (blocked on cam's work)

Ms2ger@gmail.com yesterday

Done:

Servo DOM

Servo other

Testing

Administration

  • 2016-08-16: looked at flights to Hawaii, again
  • 2016-08-16: 1:1
  • 2016-08-18: looked into Hawaii flights

SpiderMonkey

Reviews

Next:

  • more of the same

Coordination:

  • will be out Monday and Tuesday next week.

slyu@mozilla.com yesterday

Done:

Stylo

  • Rewrite the script that generates clean stylo-gecko reftest.list

Servo

  • Landed #12676: Absolutely positioned block box are collapsing margin with its previous sibling
  • Fix #12824: A collapse through block flow should have the collapsed margin on its top edge
  • COSCUP Talk(Aug 20-21)
  • Flow Tree JSON dump & visuliazer: #12675: Pretty print the flow tree
  • Help Taipei Code Sprint contributor to ramp up

Next:

Stylo

  • Mark reftest as skip and fail

Servo

  • Flow Tree JSON dump
  • Modern Web Conf talk (Aug 24)
  • Taipei Code Sprint
  • Help ajeffrey run servo-perf right now
  • Fix #12824 regression if I have time

Coordination:

Will be in Modern Web Conf Wed and Thr

lbergstrom@mozilla.com 2 days ago

Done:

  • TWIS
  • Booked Boston manager offsite stuff
  • Aid in landing MSVC
  • Decision to turn off ffmpeg to restore nightly builds, etc.
  • Tried Cargo workspaces again (hit bugs & version conflicts)
  • Lots of time on the m-c vendoring stuff

Next:

  • TWIS
  • More time on the m-c vendoring stuff
  • Get the Windows builder testing the MSVC bits
  • Fix android
  • Try cargo workspaces again - hopefully this time!

Coordination:

Going to take some PTO to just chill and enjoy summer a bit once all the fire drills are handled.

josh@joshmatthews.net 2 days ago

Done:

Wrangled children instead of web specifications for a week.

Next:

  • Triage some relevant Gecko bugs that were recently opened
  • Address review comments on iterable
  • Start brainstorming UPenn and NCSU projects
  • Address review comments on bug 1264192
  • Address review comments on bug 1277681
  • Outstanding reviews
  • Measure Servo DOM bindings perf with new rustc

gwatson@mozilla.com 3 days ago

Done:

  • Open various upstream PRs (osmesa-sys, glutin etc) for headless rendering + wr2.
  • Abstract common transform related shader code.
  • Various cleanups from WR1 - old shaders, stencil buffer settings etc.
  • Land a number of the basic optimizations applicable to WR2.
  • Support 3d transforms + borders.
  • Review and merge several WR pull requests.
  • Various discussions with gfx team.
  • Refactor the scroll root + layer code from WR1, fixing a heap of scroll related issues.

Next:

  • Fix the remaining servo demo bugs that are related to WR2 (2 to go).
  • Continue working towards getting all the OSMesa related PRs reviewed and merged.
  • Start work on saltfs changes needed for osmesa testing.
  • Continue working on landing some of the basic optimizations that WR2 allows.

kheadley@mozilla.com 6 days ago

Done:

  • wrote benchmark scripts and integrated with gnuplot
  • reorganized repo code
  • extended benchmarks with generated branches
  • wrote new version of incremental tree update

Next:

  • expand and integrate incremental tree update code
  • write tests of new code
  • write benchmarks enabled by new code
  • meet with team to define continuing support

Coordination:

official end of internship this week, need to plan closing and continuing duties

ajeffrey@mozilla.com last week

Done:

  • Gave talk on Rust at Facebook.
  • Added unit test for ipc channels reentrancy (https://github.com/servo/ipc-channel/pull/95).
  • Improved Servo panic display in the case that the constellation has already closed (https://github.com/servo/servo/pull/12657)
  • Next:

    • Work with Kyle on performance measurement of idealized display list incrementalization
    • Work with Connor on navigation history

    Coordination:

    • I'm back from SF
    • This is Kyle's last week
    • Starting two weeks of vacation next week.

    bholley@mozilla.com 2 weeks ago

    Done:

    • stylo administrivia
    • reviews
    • landed: Refactor attribute handling to remove the requirement to get attributes as strings #91
    • landed: bug 1283620 - Add attribute matching hooks for Servo
    • landed: bug 1289617 - Add a bindgen opt-out for the compile-time DEBUG checker
    • landed: bug 1289620 - Upstream most of the hacks in the stylo branch
    • landed: bug 1289622 - Add machinery to invoke CalcStyleDifference directly on a ServoComputedValues and stash the result on the old nsStyleContext
    • landed: bug 1289624 - Clear servo node data when nodes are removed from the tree
    • landed: bug 1289916 - Don't trigger a tree traversal in ProcessPendingRestyles if the tree isn't dirty
    • landed: bug 1290214 - stylo: Stop generating so many backtraces during stylo runs
    • landed: bug 1291390 - Wrong cascade level used for preferences stylesheet
    • landed: bug 1291885 - stylo: Fix various leaks
    • landed: bug 1291891 - stylo: Fix various reftest crashes
    • landed: stylo: fix leaks, and accept null in Servo_InheritComputedValues #12725
    • landed: stylo: Use AtomicUsize to store our initial computed values #12750
    • bug 1292278 - Stylo Assertion failure: aNameSpaceID > 0 && (int64_t) aNameSpaceID <= (int64_t) mURIArray.Length() at dom/base/nsNameSpaceManager.h
    • investigated style situation with various types of anonymous content

    mbrubeck@mozilla.com last month

    Done:

    • London all-hands, then off sick last week
    • Helped write up new overview docs for Servo layout
    • servo/servo#11801 webrender: Don't use OpenGL round() for snapping pixels
    • servo/webrender#294 Truncate glyph positions to whole device pixels
    • servo/servo#11752 code cleanup in layout
    • servo/euclid#140 Don't use SSE4.1 instructions unless the target supports it

    Next:

    • Finish ASCII text shaping work
    • Fix test failures in #11801
    • Transfer more of the Servo layout presentation to the wiki

    jack@metajack.im 2 months ago

    Done:

    • Gave research talk
    • Became professional meeting attender

    Next:

    • Progress on DirectWrite
    • Look into build-cef output
    • Start writing some blog posts

    dhosfelt@mozilla.com 2 months ago

    Done:

    • London
      • Met lots of people--will attempt to remember names next time
      • SSL meeting
      • Lots of fried chicken
    • Found sequential layout bug from #10110
    • Landed first PR! (#11778)

    Next:

    • Tracking down sequential layout bug
    • Modify crowbot to recognize github issues with £
    • Follow ups from London SSL meeting
    • Expense reports

    edunham@mozilla.com 2 months ago

    Done:

    • London!
    • Landed rudimentary mach package
    • landed READMEs in all Servo projects that didn't have them
    • Rated Rustconf proposals

    Next:

    • Catch up on issue review + code triage
    • Follow up on workweek discussions/emails
    • Linux nightly build and tarball upload
    • Hopefully land+deploy Salt-The-Salt-Master (https://github.com/servo/saltfs/pull/350) to unblock + simplify many PRs

    Coordination:

    I'll be giving my Rust's Community Automation talk at CodeConf LA next week.

    tschneidereit@mozilla.com 5 months ago

    Done:

    Since my last update last year, I mostly worked on the SpiderMonkey Promise implementation. That has landed in SpiderMonkey, but not been enabled for Gecko's use. Some additional patches for devtools and Xray wrappers need to land for that.

    Additional work:

    • Re-implemented Function.prototype.bind in self-hosted JS, gaining several-10x speed-ups for the most common usecases in bug 1000780.
    • Continued work on the Typed Objects Explainer, incorporating most discussion results into the core explainer and adding more fleshed-out drafts of explainers for value types and class syntax.
    • Let Object.values and .entries ride the train, after porting them from JS to C++ :(

    Also, I officially joined the browser.html team \o/

    Next:

    • Finish SpiderMonkey Promise.
    • Integrate Promises into Servo's event loop as soon as nox' SMUP work is done.
    • Deepen my understanding of browser.html.
    • Get back into Servo work, now with a focus on browser.html blockers.

    nox@mozilla.com 5 months ago

    Done:

    • Asked questions around #devtools, got a meeting out of it on 2016-04-07 with some devtools people
    • Continued to do SMUP, not many errors, might get a successful build of rust-mozjs soon.

    Next:

    Continue the aforementioned things.

    aramine@mozilla.com 5 months ago

    Done:

    • Repair connection code to devtools
    • Looked at both Gecko and Chrome debugging protocols
    • Started talking with devtools team to understand how the Web Console protocol works

    Next:

    • Continue talking with devtools stuff
    • Continue unforking of rust-bindgen

    Coordination:

    • I will probably need to mess with compartments and whatnot for object grips in devtools. Will ask bholley for help.

    mrobinson@igalia.com 9 months ago

    Done:

    I've been working on making sure that RestyleDamage is less "sticky" when applied to the flow tree. This is useful because it will allow us to more closely track when the tree is actually damaged, allowing fast paths during reflow.

    Next:

    I've been able to isolate certain types of repainting to one part of the tree. Now I need to continue to experiment with this to see if I can make very, very simple display list patches. This will allow us to patch the display list very quickly for a small subset of operations that do now reflow the tree at all.

    After that, I need to extend this optimization to include things that actually reflow the tree.

    pcwalton@mozilla.com 10 months ago

    Done:

    • Made some HiDPI fixes to WebRender.
    • Moved WebRender over to Core Graphics and Core Text for glyph rendering on the Mac (not landed yet).
    • Implemented support for CSS filters in WebRender.
    • Fixed inset box shadow rendering in WR.
    • Improved WebRender scrolling.
    • Made some minor performance improvements in WR.
    • Reviewed a few Servo patches.

    Next:

    • Get Core Graphics and Core Text support for WebRender landed.
    • Improve clipping of gradients.
    • Possibly:
      • Implement batching for raster items.
      • Implement batching for composite operations.
      • Improve the texture atlas allocator.
    • Catch up on Servo patches and reviews.

    coreyf@rwell.org 10 months ago

    Next:

    Coordination:

    banderson@mozilla.com 12 months ago

    Done:

    Full log.

    Next:

    • Manage website project
    • Start convo with package managers
    • Crater improvements
    • Preparing a talk on something
    • Investigate improvements to metadata indexing
    • Finishing multirust

    ncameron@mozilla.com last year

    Done:

    Next:

    More HIR stuff, some Rustfmt things

    simon.sapin@exyr.org last year

    Done:

    • Servo reviews
    • Servo: Drop support for box-sizing: padding-box
    • Rust: Add complex and contextual (but language-independent) case mapping and title case mapping
    • Rust: Deprecate String::from_str in favor of String::from
    • Rust: report bugs on warning inhibition in dependencies
    • string-cache and rust-selectors Rust upgrade
    • multirust: allow callers to override $CARGO_HOME
    • rust-smallvec: fix memory safety issue in drop, make the struct smaller, modernize the API

    kmcallister@mozilla.com last year

    Done:

    Servo security bug triage

    More reading on TLS, opened some relevant Servo issues

    More fuzzing

    Prepared a report on piston-image bugs

    Wrote bindings for a web font sanitizer

    Next:

    Fix build issues with fontsan

    Land tendril in h5e

    Servo security writeup

    Coordination:

    I'm waiting for the new PNG decoder in piston-image, which is apparently almost ready.

    manishearth@gmail.com last year

    Done:

    Servo:

    • Getting Gonk to work again
    • Mach integration of Gonk
    • Started Travisifying deps
    • Started work on linear types

    Rust:

    • Rollups and shepherding
    • Figuring out improvements to the build system
    • Workshop at GNUnify

    Next:

    • More travisification
    • Help Philip with linear types
    • Use code similar to humpty_dumpty for unused clone detection
    • Fix SSL SAN

    acrichton@mozilla.com last year

    Done:

    • Rust
      • Fixed a number of minor bugs relating to -L, -l, and cross compilation.
      • Landed std::env and std::io.
      • Wrote std::fs patch, std::net RFC, and std::net patch
      • Shepherded the from_raw_buf RFC
      • Fixed some assorted missing stabilization attributes
    • Cargo
      • Removed auto-cleaning behavior
      • Added support for --precise with registry dependencies
      • Fixed some assorted bugs

    Next:

    • Land std::fs
    • Land std::net
    • Sheperd some more RFCs to landing
    • Make a plan for stabilizing remaining modules

    czwarich@mozilla.com last year

    Done:

    (Long time since last update)

    Next:

    • Dealing with libgreen / runtime removal from rust in Servo.
    • Helping futureproof Box and related features in Rust 1.0.
    • Moving graphics in Servo to a better state, particularly wrt surface management.

    cgaebel@mozilla.com last year

    Done:

    • Lots of incremental layout work
      • sibling selectors are a thing, so mark siblings of a dirty node are also dirty
      • Word wrapping bug in incremental layout fixed
      • Fixed the bug where wikipedia elements drift down the page
      • Fixed the bug where freshly loaded images wouldn't trigger a reflow
      • Implemented incremental reflow (before it was just incremental style recalc).

    Next:

    • Fix all the bugs with incremental reflow. There's some failing reftests, and I can't seem to be able to remove an image in javascript without having to resize the page to make it disappear...
    • Implement incremental display list sending.

    nmatsakis@mozilla.com last year

    Done:

    • Reviewed:
      • hashmap
      • a DST patch or two
      • ... lost track ...
    • Landed:
    • Read numerous RFCs:
      • comment thread on macro syntax change, collected thoughts
      • comment thread on static drop, collected thoughts
      • ... lost track ...
    • RFCs:
      • Integer literals
      • Defaulted typed parameters
      • Amended privacy RFC
    • Submitted camera ready version of:
      • DLS paper on typed objects
      • HILT extended abstract on Rust
    • Worked on:
      • details of closure inference
      • removing bivariance and requiring markers more strictly
      • rebasing trait-reform branch over top of nrc (now bootstrapping)

    Next:

    Primary plans for this week:

    • trait-reform branch
    • land variance branch
    • settle plan on closures
    • ...a bunch of other stuff that's on my local to do list.

    pwalton@mozilla.com

    Done:

    • Submitted a PR for associated types.

    Next:

    • Implement where clauses.
    • Burn down more P-backcompat-lang issues.
    • Land all my in-progress PRs.

    aturon@mozilla.com

    Done:

    Next:

    • Help bjz land Option/Result RFC
    • Errors RFC with wycats
    • Paper revisions for OOPSLA
    • Concurrent circular buffer (a la Linux)
    • rust-book
    • Research Go's Text/Scanner

    manishsmail@gmail.com

    Done:

    XHR:

    Other:

    Next:

    • Implement a basic synchronous GET request
    • Start work on adding POSTdata support to resource_task
    • Dummy webidl implementation of ProgressEvent

    pnkfelix@mozilla.com

    Done:

    Its been a long time since last status report; d'oh.

    Next:

    Land control-flow graph visualization library with libgraphviz.

    Attempt to clean up control-flow graph code and land it too.

    Continue work on lifetime bounds (namely supporting constructs like ~Foo:'a and trait Bar<'a> : 'a { ... }).

    Coordination:

    Regarding make check-stage1: I am not sure if we could possibly turn it on in buildbots.

    Alex said we probably cannot guarantee that make check-stage1 always works for arbitrary desired changes. Is there some middle ground, like having bors run make check-stage1 and write a note in any PR where it fails?

    I.e. so that it doesn't block landing work, but contributors are at least informed that it is not working? (And might have a hope of tracking down when it started failing in previous PRs that landed?)

    alex@crichton.co

    Done:

    • Forbid unnecessary privacy in functions - #10111
    • Optimize tty usage in libuv (stdout mostly)
    • Implemented unstable::mutex::Mutex to remove all remaining C++ synchronization code
    • Landed the native file I/O patch
    • Re-worked privacy/reachable to put more work in privacy (where it belongs)
    • Removed linked failure

    Next:

    • Get a review for the static linking patch
      • Once static linking is landed, get a libcxxabi/libunwind solution for windows
    • Rewrite channels to be much more optimized and work inside/outside the runtime
      • Drop oneshot, possibly drop SharedPort
    • Once channels are rewritten, add a convenient way of booting the runtime
    • Continue supporting 1:1 by overhauling task creation

    Coordination:

    I'll be in SFO all week, taking Wed-Fri off.

    catamorphism@gmail.com

    Done:

    • Triaged all remaining rustpkg bugs: https://etherpad.mozilla.org/Rustpkg-priorities
    • Worked with Keegan to get more of servo ported to rustpkg (of course, Jack and Keegan get most of the credit for this)
    • Transferred ownership of the weekly triage meeting to Felix
    • Summarized OPW applications received so far (if you'd like to be involved in choosing the Rust intern, let me know, as there are four good candidates)
    • Closed #9569
    • Closed #9311
    • Fixed #10253 (still working on landing it)
    • Compiled list of existing rustpkg packages: https://github.com/mozilla/rust/wiki/Rustpkg

    Next:

    • Select OPW intern
    • Fix as many bugs listed as "important" here ( https://etherpad.mozilla.org/Rustpkg-priorities ) as I can (if you have ideas about which ones are the most important, let me know)
    • Determine new owner for rustpkg (so far, Brian has expressed interest)

    Coordination:

    Friday is my last day of work. I might try to work from San Francisco tomorrow and/or Wednesday; haven't decided.

    Please keep in touch -- my permanent email address is chevalier@alum.wellesley.edu and I still plan to be on IRC and the mailing list when I can.

    eschweickart@mozilla.com

    Done:

    • Initial iframe support with tikue
    • Presentation

    Next:

    • Maintain iframe PR until it lands
    • Finish up a PR that addresses memory management in the compositor

    tkuehn@mozilla.com

    Done:

    • Landed FrameTree changes
    • Changes in compositor to connect the multi-layer changes to the FrameTree changes in constellation
    • Some general code cleanup, especially in constellation.rs

    Next:

    • Get layout to send iframes' assigned positions and sizes to constellation

    Coordination:

    Working with eschweic on the compositor changes. If all goes well, iframes will land this week.

    eatkinson@mozilla.com

    Done:

    • assign_height is now partially bu instead of inorder
    • Type system enforces that traversal visitors can only view descendants

    Next:

    • Work-stealing algorithms for tree traversals
    • Implement a Chase-Lev queue to do work stealing

    Coordination:

    Aaron Todd is working on a CLQ for the rust scheduler; we should avoid duplicating code.

    pcwalton@mimiga.net

    Done:

    • Removed copy from rustc.

    • Removed pub extern from the language.

    • Made @ take a 'static bound.

    • Started porting the visitor to use traits instead of @fns, with the eventual goal of removing @fn from the language.

    Next:

    • Continue working on porting the visitor to use traits.

    • Remove @fn from the language.

    • OSCON Wed-Fri.

    tchevalier@mozilla.com

    Done:

    Landed #7419 (making rustpkg build work without a package argument) Started #7075 (using workcache) -- got blocked on workcache context not being sendable. Graydon did some work on it and it should be possible for me to get back to this if that work has landed. Worked on #6407 (allowing extern mods to name a URL) Debugged sporadic rustpkg test failures on the Mac bot; currently making check-rustpkgtest depend on the rustpkg executable, which I'm hoping will fix it

    Next:

    Finish #6407 Finish #7075 Implement #6411

    Coordination:

    Working remote on Thursday and Friday (doctor's appointment on Thursday, heading to SF office for Feminist Friday).