{"action":"created","issue":{"url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/2237","labels_url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/2237/labels{/name}","comments_url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/2237/comments","events_url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/2237/events","html_url":"https://github.com/greasemonkey/greasemonkey/issues/2237","id":101168917,"number":2237,"title":"Pass sameZoneAs to sandbox constructor to make GCs cheaper","user":{"login":"the8472","id":1065730,"avatar_url":"https://avatars.githubusercontent.com/u/1065730?v=3","gravatar_id":"","url":"https://api.github.com/users/the8472","html_url":"https://github.com/the8472","followers_url":"https://api.github.com/users/the8472/followers","following_url":"https://api.github.com/users/the8472/following{/other_user}","gists_url":"https://api.github.com/users/the8472/gists{/gist_id}","starred_url":"https://api.github.com/users/the8472/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/the8472/subscriptions","organizations_url":"https://api.github.com/users/the8472/orgs","repos_url":"https://api.github.com/users/the8472/repos","events_url":"https://api.github.com/users/the8472/events{/privacy}","received_events_url":"https://api.github.com/users/the8472/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/greasemonkey/greasemonkey/milestones/65","html_url":"https://github.com/greasemonkey/greasemonkey/milestones/3.4","labels_url":"https://api.github.com/repos/greasemonkey/greasemonkey/milestones/65/labels","id":1140176,"number":65,"title":"3.4","description":"","creator":{"login":"arantius","id":84729,"avatar_url":"https://avatars.githubusercontent.com/u/84729?v=3","gravatar_id":"","url":"https://api.github.com/users/arantius","html_url":"https://github.com/arantius","followers_url":"https://api.github.com/users/arantius/followers","following_url":"https://api.github.com/users/arantius/following{/other_user}","gists_url":"https://api.github.com/users/arantius/gists{/gist_id}","starred_url":"https://api.github.com/users/arantius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arantius/subscriptions","organizations_url":"https://api.github.com/users/arantius/orgs","repos_url":"https://api.github.com/users/arantius/repos","events_url":"https://api.github.com/users/arantius/events{/privacy}","received_events_url":"https://api.github.com/users/arantius/received_events","type":"User","site_admin":false},"open_issues":8,"closed_issues":12,"state":"open","created_at":"2015-05-29T14:42:50Z","updated_at":"2015-08-19T16:31:09Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-08-15T11:53:31Z","updated_at":"2015-08-19T16:31:09Z","closed_at":"2015-08-19T16:31:09Z","body":"According to about:memory greasemonkey sandboxes all seem to live within the same zone (in process/remote tab child global, depending on e10s).\r\n\r\nAs I understand it this has a negative impact on GC performance since allocation by greasemonkey scripts triggers GCs in this fairly large zone instead of GCing in a window-specific zone.\r\n\r\nThis can be mitigated by using the [sameZoneAs option](https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.Sandbox#options).\r\n\r\nThe addon SDK [does this for its sandboxes](https://github.com/mozilla/addon-sdk/blob/8e6cc79651aae915471913e45a2d38a4d651ac6f/lib/sdk/content/sandbox.js#L150), so it's probably best practice."},"comment":{"url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/comments/132685383","html_url":"https://github.com/greasemonkey/greasemonkey/issues/2237#issuecomment-132685383","issue_url":"https://api.github.com/repos/greasemonkey/greasemonkey/issues/2237","id":132685383,"user":{"login":"arantius","id":84729,"avatar_url":"https://avatars.githubusercontent.com/u/84729?v=3","gravatar_id":"","url":"https://api.github.com/users/arantius","html_url":"https://github.com/arantius","followers_url":"https://api.github.com/users/arantius/followers","following_url":"https://api.github.com/users/arantius/following{/other_user}","gists_url":"https://api.github.com/users/arantius/gists{/gist_id}","starred_url":"https://api.github.com/users/arantius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arantius/subscriptions","organizations_url":"https://api.github.com/users/arantius/orgs","repos_url":"https://api.github.com/users/arantius/repos","events_url":"https://api.github.com/users/arantius/events{/privacy}","received_events_url":"https://api.github.com/users/arantius/received_events","type":"User","site_admin":false},"created_at":"2015-08-19T16:31:09Z","updated_at":"2015-08-19T16:31:09Z","body":"Pull request merged."}}