{"action":"closed","number":93,"pull_request":{"url":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93","id":192183553,"node_id":"MDExOlB1bGxSZXF1ZXN0MTkyMTgzNTUz","html_url":"https://github.com/gimli-rs/addr2line/pull/93","diff_url":"https://github.com/gimli-rs/addr2line/pull/93.diff","patch_url":"https://github.com/gimli-rs/addr2line/pull/93.patch","issue_url":"https://api.github.com/repos/gimli-rs/addr2line/issues/93","number":93,"state":"closed","locked":false,"title":"Update object to 0.9.0","user":{"login":"philipc","id":330342,"node_id":"MDQ6VXNlcjMzMDM0Mg==","avatar_url":"https://avatars2.githubusercontent.com/u/330342?v=4","gravatar_id":"","url":"https://api.github.com/users/philipc","html_url":"https://github.com/philipc","followers_url":"https://api.github.com/users/philipc/followers","following_url":"https://api.github.com/users/philipc/following{/other_user}","gists_url":"https://api.github.com/users/philipc/gists{/gist_id}","starred_url":"https://api.github.com/users/philipc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipc/subscriptions","organizations_url":"https://api.github.com/users/philipc/orgs","repos_url":"https://api.github.com/users/philipc/repos","events_url":"https://api.github.com/users/philipc/events{/privacy}","received_events_url":"https://api.github.com/users/philipc/received_events","type":"User","site_admin":false},"body":"Also use the `Object` trait instead of `File` (see https://github.com/gimli-rs/object/issues/53).\r\n\r\n~~This requires https://github.com/gimli-rs/gimli/pull/305.~~\r\n\r\nI played a bit with using `Rc/Arc<Cow<'input, [u8]>>` instead of `EndianRcSlice`, but wasn't sure it was worth the API complexity. So I think `Context::new` should be the simple high level interface, and consumers with more specific needs can use `Context::from_sections`.\r\n\r\nBefore:\r\n```\r\ntest context_new_and_query_location       ... bench:     951,031 ns/iter (+/- 79,277)\r\ntest context_new_and_query_with_functions ... bench:   1,760,225 ns/iter (+/- 54,934)\r\ntest context_new_location                 ... bench:     760,223 ns/iter (+/- 57,231)\r\ntest context_new_with_functions           ... bench:     751,183 ns/iter (+/- 55,055)\r\ntest context_query_location               ... bench:  10,378,538 ns/iter (+/- 92,496)\r\ntest context_query_with_functions         ... bench:  11,578,429 ns/iter (+/- 142,557)\r\n```\r\n\r\nAfter:\r\n```\r\ntest context_new_and_query_location       ... bench:   5,527,469 ns/iter (+/- 285,657)\r\ntest context_new_and_query_with_functions ... bench:   6,809,893 ns/iter (+/- 490,899)\r\ntest context_new_location                 ... bench:   5,230,294 ns/iter (+/- 307,209)\r\ntest context_new_with_functions           ... bench:   5,213,000 ns/iter (+/- 266,617)\r\ntest context_query_location               ... bench:  15,353,989 ns/iter (+/- 309,998)\r\ntest context_query_with_functions         ... bench:  16,591,755 ns/iter (+/- 402,449)\r\n```\r\n\r\nFor reference, `Arc<Cow<[u8]>>`:\r\n```\r\ntest context_new_and_query_location       ... bench:   1,063,159 ns/iter (+/- 57,010)\r\ntest context_new_and_query_with_functions ... bench:   2,483,267 ns/iter (+/- 180,353)\r\ntest context_new_location                 ... bench:     758,812 ns/iter (+/- 16,336)\r\ntest context_new_with_functions           ... bench:     755,755 ns/iter (+/- 31,252)\r\ntest context_query_location               ... bench:  18,362,107 ns/iter (+/- 417,995)\r\ntest context_query_with_functions         ... bench:  19,264,415 ns/iter (+/- 260,564)\r\n```\r\nThe query numbers for `Arc<Cow<[u8]>>` are surprising to me, but I didn't look into it.","created_at":"2018-06-02T06:41:41Z","updated_at":"2018-06-11T22:42:13Z","closed_at":"2018-06-11T22:42:13Z","merged_at":"2018-06-11T22:42:13Z","merge_commit_sha":"93727def51cadd52c0b4fc99fc54c29faa7ff06a","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93/commits","review_comments_url":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93/comments","review_comment_url":"https://api.github.com/repos/gimli-rs/addr2line/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gimli-rs/addr2line/issues/93/comments","statuses_url":"https://api.github.com/repos/gimli-rs/addr2line/statuses/fc4763003225bbdd2f23844acfe5f4f618f5b64b","head":{"label":"philipc:object","ref":"object","sha":"fc4763003225bbdd2f23844acfe5f4f618f5b64b","user":{"login":"philipc","id":330342,"node_id":"MDQ6VXNlcjMzMDM0Mg==","avatar_url":"https://avatars2.githubusercontent.com/u/330342?v=4","gravatar_id":"","url":"https://api.github.com/users/philipc","html_url":"https://github.com/philipc","followers_url":"https://api.github.com/users/philipc/followers","following_url":"https://api.github.com/users/philipc/following{/other_user}","gists_url":"https://api.github.com/users/philipc/gists{/gist_id}","starred_url":"https://api.github.com/users/philipc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipc/subscriptions","organizations_url":"https://api.github.com/users/philipc/orgs","repos_url":"https://api.github.com/users/philipc/repos","events_url":"https://api.github.com/users/philipc/events{/privacy}","received_events_url":"https://api.github.com/users/philipc/received_events","type":"User","site_admin":false},"repo":{"id":83376607,"node_id":"MDEwOlJlcG9zaXRvcnk4MzM3NjYwNw==","name":"addr2line","full_name":"philipc/addr2line","owner":{"login":"philipc","id":330342,"node_id":"MDQ6VXNlcjMzMDM0Mg==","avatar_url":"https://avatars2.githubusercontent.com/u/330342?v=4","gravatar_id":"","url":"https://api.github.com/users/philipc","html_url":"https://github.com/philipc","followers_url":"https://api.github.com/users/philipc/followers","following_url":"https://api.github.com/users/philipc/following{/other_user}","gists_url":"https://api.github.com/users/philipc/gists{/gist_id}","starred_url":"https://api.github.com/users/philipc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philipc/subscriptions","organizations_url":"https://api.github.com/users/philipc/orgs","repos_url":"https://api.github.com/users/philipc/repos","events_url":"https://api.github.com/users/philipc/events{/privacy}","received_events_url":"https://api.github.com/users/philipc/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/philipc/addr2line","description":"A cross-platform `addr2line` clone written in Rust, using `gimli`","fork":true,"url":"https://api.github.com/repos/philipc/addr2line","forks_url":"https://api.github.com/repos/philipc/addr2line/forks","keys_url":"https://api.github.com/repos/philipc/addr2line/keys{/key_id}","collaborators_url":"https://api.github.com/repos/philipc/addr2line/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/philipc/addr2line/teams","hooks_url":"https://api.github.com/repos/philipc/addr2line/hooks","issue_events_url":"https://api.github.com/repos/philipc/addr2line/issues/events{/number}","events_url":"https://api.github.com/repos/philipc/addr2line/events","assignees_url":"https://api.github.com/repos/philipc/addr2line/assignees{/user}","branches_url":"https://api.github.com/repos/philipc/addr2line/branches{/branch}","tags_url":"https://api.github.com/repos/philipc/addr2line/tags","blobs_url":"https://api.github.com/repos/philipc/addr2line/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/philipc/addr2line/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/philipc/addr2line/git/refs{/sha}","trees_url":"https://api.github.com/repos/philipc/addr2line/git/trees{/sha}","statuses_url":"https://api.github.com/repos/philipc/addr2line/statuses/{sha}","languages_url":"https://api.github.com/repos/philipc/addr2line/languages","stargazers_url":"https://api.github.com/repos/philipc/addr2line/stargazers","contributors_url":"https://api.github.com/repos/philipc/addr2line/contributors","subscribers_url":"https://api.github.com/repos/philipc/addr2line/subscribers","subscription_url":"https://api.github.com/repos/philipc/addr2line/subscription","commits_url":"https://api.github.com/repos/philipc/addr2line/commits{/sha}","git_commits_url":"https://api.github.com/repos/philipc/addr2line/git/commits{/sha}","comments_url":"https://api.github.com/repos/philipc/addr2line/comments{/number}","issue_comment_url":"https://api.github.com/repos/philipc/addr2line/issues/comments{/number}","contents_url":"https://api.github.com/repos/philipc/addr2line/contents/{+path}","compare_url":"https://api.github.com/repos/philipc/addr2line/compare/{base}...{head}","merges_url":"https://api.github.com/repos/philipc/addr2line/merges","archive_url":"https://api.github.com/repos/philipc/addr2line/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/philipc/addr2line/downloads","issues_url":"https://api.github.com/repos/philipc/addr2line/issues{/number}","pulls_url":"https://api.github.com/repos/philipc/addr2line/pulls{/number}","milestones_url":"https://api.github.com/repos/philipc/addr2line/milestones{/number}","notifications_url":"https://api.github.com/repos/philipc/addr2line/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/philipc/addr2line/labels{/name}","releases_url":"https://api.github.com/repos/philipc/addr2line/releases{/id}","deployments_url":"https://api.github.com/repos/philipc/addr2line/deployments","created_at":"2017-02-28T01:47:14Z","updated_at":"2017-02-28T01:47:16Z","pushed_at":"2018-06-07T02:56:29Z","git_url":"git://github.com/philipc/addr2line.git","ssh_url":"git@github.com:philipc/addr2line.git","clone_url":"https://github.com/philipc/addr2line.git","svn_url":"https://github.com/philipc/addr2line","homepage":"https://docs.rs/addr2line","size":4074,"stargazers_count":0,"watchers_count":0,"language":"Rust","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"gimli-rs:master","ref":"master","sha":"c1203c63e8b551b7ede91d7450a381121b358bec","user":{"login":"gimli-rs","id":21131604,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxMTMxNjA0","avatar_url":"https://avatars0.githubusercontent.com/u/21131604?v=4","gravatar_id":"","url":"https://api.github.com/users/gimli-rs","html_url":"https://github.com/gimli-rs","followers_url":"https://api.github.com/users/gimli-rs/followers","following_url":"https://api.github.com/users/gimli-rs/following{/other_user}","gists_url":"https://api.github.com/users/gimli-rs/gists{/gist_id}","starred_url":"https://api.github.com/users/gimli-rs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gimli-rs/subscriptions","organizations_url":"https://api.github.com/users/gimli-rs/orgs","repos_url":"https://api.github.com/users/gimli-rs/repos","events_url":"https://api.github.com/users/gimli-rs/events{/privacy}","received_events_url":"https://api.github.com/users/gimli-rs/received_events","type":"Organization","site_admin":false},"repo":{"id":75500718,"node_id":"MDEwOlJlcG9zaXRvcnk3NTUwMDcxOA==","name":"addr2line","full_name":"gimli-rs/addr2line","owner":{"login":"gimli-rs","id":21131604,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIxMTMxNjA0","avatar_url":"https://avatars0.githubusercontent.com/u/21131604?v=4","gravatar_id":"","url":"https://api.github.com/users/gimli-rs","html_url":"https://github.com/gimli-rs","followers_url":"https://api.github.com/users/gimli-rs/followers","following_url":"https://api.github.com/users/gimli-rs/following{/other_user}","gists_url":"https://api.github.com/users/gimli-rs/gists{/gist_id}","starred_url":"https://api.github.com/users/gimli-rs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gimli-rs/subscriptions","organizations_url":"https://api.github.com/users/gimli-rs/orgs","repos_url":"https://api.github.com/users/gimli-rs/repos","events_url":"https://api.github.com/users/gimli-rs/events{/privacy}","received_events_url":"https://api.github.com/users/gimli-rs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gimli-rs/addr2line","description":"A cross-platform `addr2line` clone written in Rust, using `gimli`","fork":false,"url":"https://api.github.com/repos/gimli-rs/addr2line","forks_url":"https://api.github.com/repos/gimli-rs/addr2line/forks","keys_url":"https://api.github.com/repos/gimli-rs/addr2line/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gimli-rs/addr2line/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gimli-rs/addr2line/teams","hooks_url":"https://api.github.com/repos/gimli-rs/addr2line/hooks","issue_events_url":"https://api.github.com/repos/gimli-rs/addr2line/issues/events{/number}","events_url":"https://api.github.com/repos/gimli-rs/addr2line/events","assignees_url":"https://api.github.com/repos/gimli-rs/addr2line/assignees{/user}","branches_url":"https://api.github.com/repos/gimli-rs/addr2line/branches{/branch}","tags_url":"https://api.github.com/repos/gimli-rs/addr2line/tags","blobs_url":"https://api.github.com/repos/gimli-rs/addr2line/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gimli-rs/addr2line/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gimli-rs/addr2line/git/refs{/sha}","trees_url":"https://api.github.com/repos/gimli-rs/addr2line/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gimli-rs/addr2line/statuses/{sha}","languages_url":"https://api.github.com/repos/gimli-rs/addr2line/languages","stargazers_url":"https://api.github.com/repos/gimli-rs/addr2line/stargazers","contributors_url":"https://api.github.com/repos/gimli-rs/addr2line/contributors","subscribers_url":"https://api.github.com/repos/gimli-rs/addr2line/subscribers","subscription_url":"https://api.github.com/repos/gimli-rs/addr2line/subscription","commits_url":"https://api.github.com/repos/gimli-rs/addr2line/commits{/sha}","git_commits_url":"https://api.github.com/repos/gimli-rs/addr2line/git/commits{/sha}","comments_url":"https://api.github.com/repos/gimli-rs/addr2line/comments{/number}","issue_comment_url":"https://api.github.com/repos/gimli-rs/addr2line/issues/comments{/number}","contents_url":"https://api.github.com/repos/gimli-rs/addr2line/contents/{+path}","compare_url":"https://api.github.com/repos/gimli-rs/addr2line/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gimli-rs/addr2line/merges","archive_url":"https://api.github.com/repos/gimli-rs/addr2line/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gimli-rs/addr2line/downloads","issues_url":"https://api.github.com/repos/gimli-rs/addr2line/issues{/number}","pulls_url":"https://api.github.com/repos/gimli-rs/addr2line/pulls{/number}","milestones_url":"https://api.github.com/repos/gimli-rs/addr2line/milestones{/number}","notifications_url":"https://api.github.com/repos/gimli-rs/addr2line/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gimli-rs/addr2line/labels{/name}","releases_url":"https://api.github.com/repos/gimli-rs/addr2line/releases{/id}","deployments_url":"https://api.github.com/repos/gimli-rs/addr2line/deployments","created_at":"2016-12-03T21:14:53Z","updated_at":"2018-06-08T07:47:47Z","pushed_at":"2018-06-11T22:42:13Z","git_url":"git://github.com/gimli-rs/addr2line.git","ssh_url":"git@github.com:gimli-rs/addr2line.git","clone_url":"https://github.com/gimli-rs/addr2line.git","svn_url":"https://github.com/gimli-rs/addr2line","homepage":"https://docs.rs/addr2line","size":4072,"stargazers_count":32,"watchers_count":32,"language":"Rust","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":6,"open_issues":6,"watchers":32,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93"},"html":{"href":"https://github.com/gimli-rs/addr2line/pull/93"},"issue":{"href":"https://api.github.com/repos/gimli-rs/addr2line/issues/93"},"comments":{"href":"https://api.github.com/repos/gimli-rs/addr2line/issues/93/comments"},"review_comments":{"href":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93/comments"},"review_comment":{"href":"https://api.github.com/repos/gimli-rs/addr2line/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gimli-rs/addr2line/pulls/93/commits"},"statuses":{"href":"https://api.github.com/repos/gimli-rs/addr2line/statuses/fc4763003225bbdd2f23844acfe5f4f618f5b64b"}},"author_association":"CONTRIBUTOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"fitzgen","id":74571,"node_id":"MDQ6VXNlcjc0NTcx","avatar_url":"https://avatars2.githubusercontent.com/u/74571?v=4","gravatar_id":"","url":"https://api.github.com/users/fitzgen","html_url":"https://github.com/fitzgen","followers_url":"https://api.github.com/users/fitzgen/followers","following_url":"https://api.github.com/users/fitzgen/following{/other_user}","gists_url":"https://api.github.com/users/fitzgen/gists{/gist_id}","starred_url":"https://api.github.com/users/fitzgen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fitzgen/subscriptions","organizations_url":"https://api.github.com/users/fitzgen/orgs","repos_url":"https://api.github.com/users/fitzgen/repos","events_url":"https://api.github.com/users/fitzgen/events{/privacy}","received_events_url":"https://api.github.com/users/fitzgen/received_events","type":"User","site_admin":false},"comments":3,"review_comments":0,"maintainer_can_modify":false,"commits":3,"additions":37,"deletions":12,"changed_files":2}}
{"actor":{"display_login":"fitzgen"}}