{"action":"created","issue":{"url":"https://api.github.com/repos/servo/servo/issues/9051","labels_url":"https://api.github.com/repos/servo/servo/issues/9051/labels{/name}","comments_url":"https://api.github.com/repos/servo/servo/issues/9051/comments","events_url":"https://api.github.com/repos/servo/servo/issues/9051/events","html_url":"https://github.com/servo/servo/pull/9051","id":123576629,"number":9051,"title":"Split layout wrappers into style+layout and layout-only functionality","user":{"login":"bholley","id":377435,"avatar_url":"https://avatars.githubusercontent.com/u/377435?v=3","gravatar_id":"","url":"https://api.github.com/users/bholley","html_url":"https://github.com/bholley","followers_url":"https://api.github.com/users/bholley/followers","following_url":"https://api.github.com/users/bholley/following{/other_user}","gists_url":"https://api.github.com/users/bholley/gists{/gist_id}","starred_url":"https://api.github.com/users/bholley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bholley/subscriptions","organizations_url":"https://api.github.com/users/bholley/orgs","repos_url":"https://api.github.com/users/bholley/repos","events_url":"https://api.github.com/users/bholley/events{/privacy}","received_events_url":"https://api.github.com/users/bholley/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/servo/servo/labels/S-awaiting-review","name":"S-awaiting-review","color":"d4c5f9"}],"state":"open","locked":false,"assignee":{"login":"pcwalton","id":157897,"avatar_url":"https://avatars.githubusercontent.com/u/157897?v=3","gravatar_id":"","url":"https://api.github.com/users/pcwalton","html_url":"https://github.com/pcwalton","followers_url":"https://api.github.com/users/pcwalton/followers","following_url":"https://api.github.com/users/pcwalton/following{/other_user}","gists_url":"https://api.github.com/users/pcwalton/gists{/gist_id}","starred_url":"https://api.github.com/users/pcwalton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pcwalton/subscriptions","organizations_url":"https://api.github.com/users/pcwalton/orgs","repos_url":"https://api.github.com/users/pcwalton/repos","events_url":"https://api.github.com/users/pcwalton/events{/privacy}","received_events_url":"https://api.github.com/users/pcwalton/received_events","type":"User","site_admin":false},"milestone":null,"comments":31,"created_at":"2015-12-22T23:36:47Z","updated_at":"2015-12-29T00:32:56Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/servo/servo/pulls/9051","html_url":"https://github.com/servo/servo/pull/9051","diff_url":"https://github.com/servo/servo/pull/9051.diff","patch_url":"https://github.com/servo/servo/pull/9051.patch"},"body":"This is a step towards removing the dependency of stylo on layout/.\r\n\r\nThis PR depends on #9004.\n\n<!-- Reviewable:start -->\n[<img src=\"https://reviewable.io/review_button.png\" height=40 alt=\"Review on Reviewable\"/>](https://reviewable.io/reviews/servo/servo/9051)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/servo/servo/issues/comments/167684314","html_url":"https://github.com/servo/servo/pull/9051#issuecomment-167684314","issue_url":"https://api.github.com/repos/servo/servo/issues/9051","id":167684314,"user":{"login":"larsbergstrom","id":475847,"avatar_url":"https://avatars.githubusercontent.com/u/475847?v=3","gravatar_id":"","url":"https://api.github.com/users/larsbergstrom","html_url":"https://github.com/larsbergstrom","followers_url":"https://api.github.com/users/larsbergstrom/followers","following_url":"https://api.github.com/users/larsbergstrom/following{/other_user}","gists_url":"https://api.github.com/users/larsbergstrom/gists{/gist_id}","starred_url":"https://api.github.com/users/larsbergstrom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/larsbergstrom/subscriptions","organizations_url":"https://api.github.com/users/larsbergstrom/orgs","repos_url":"https://api.github.com/users/larsbergstrom/repos","events_url":"https://api.github.com/users/larsbergstrom/events{/privacy}","received_events_url":"https://api.github.com/users/larsbergstrom/received_events","type":"User","site_admin":false},"created_at":"2015-12-29T00:32:56Z","updated_at":"2015-12-29T00:32:56Z","body":"I've spent a bunch of time staring at the layout & script portions of this code, and to my eye they preserve the previous behaviors (including clearing out the `Option` properly on `dispose`, panicing at appropriate places if a value is expected but the `Option` is empty, only calling `transmute` as needed, etc.). Not quite confident enough to r+ it yet, though, and would appreciate if @pcwalton or @SimonSapin could check to make sure that they like the structure of the refactoring in terms of which methods ended up where, to make sure it's in line with the design.\r\n\r\nI'm very happy with the mechanics, though - they appear to have been preserved across the refactoring, so far as I can tell!"}}