{"action":"opened","issue":{"url":"https://api.github.com/repos/ribbon/intercom/issues/55","labels_url":"https://api.github.com/repos/ribbon/intercom/issues/55/labels{/name}","comments_url":"https://api.github.com/repos/ribbon/intercom/issues/55/comments","events_url":"https://api.github.com/repos/ribbon/intercom/issues/55/events","html_url":"https://github.com/ribbon/intercom/issues/55","id":78256122,"number":55,"title":"Support chaining methods on Packages","user":{"login":"roberthoner","id":4632927,"avatar_url":"https://avatars.githubusercontent.com/u/4632927?v=3","gravatar_id":"","url":"https://api.github.com/users/roberthoner","html_url":"https://github.com/roberthoner","followers_url":"https://api.github.com/users/roberthoner/followers","following_url":"https://api.github.com/users/roberthoner/following{/other_user}","gists_url":"https://api.github.com/users/roberthoner/gists{/gist_id}","starred_url":"https://api.github.com/users/roberthoner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roberthoner/subscriptions","organizations_url":"https://api.github.com/users/roberthoner/orgs","repos_url":"https://api.github.com/users/roberthoner/repos","events_url":"https://api.github.com/users/roberthoner/events{/privacy}","received_events_url":"https://api.github.com/users/roberthoner/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"roberthoner","id":4632927,"avatar_url":"https://avatars.githubusercontent.com/u/4632927?v=3","gravatar_id":"","url":"https://api.github.com/users/roberthoner","html_url":"https://github.com/roberthoner","followers_url":"https://api.github.com/users/roberthoner/followers","following_url":"https://api.github.com/users/roberthoner/following{/other_user}","gists_url":"https://api.github.com/users/roberthoner/gists{/gist_id}","starred_url":"https://api.github.com/users/roberthoner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roberthoner/subscriptions","organizations_url":"https://api.github.com/users/roberthoner/orgs","repos_url":"https://api.github.com/users/roberthoner/repos","events_url":"https://api.github.com/users/roberthoner/events{/privacy}","received_events_url":"https://api.github.com/users/roberthoner/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/ribbon/intercom/milestones/14","html_url":"https://github.com/ribbon/intercom/milestones/0.4.0","labels_url":"https://api.github.com/repos/ribbon/intercom/milestones/14/labels","id":1118898,"number":14,"title":"0.4.0","description":"","creator":{"login":"roberthoner","id":4632927,"avatar_url":"https://avatars.githubusercontent.com/u/4632927?v=3","gravatar_id":"","url":"https://api.github.com/users/roberthoner","html_url":"https://github.com/roberthoner","followers_url":"https://api.github.com/users/roberthoner/followers","following_url":"https://api.github.com/users/roberthoner/following{/other_user}","gists_url":"https://api.github.com/users/roberthoner/gists{/gist_id}","starred_url":"https://api.github.com/users/roberthoner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/roberthoner/subscriptions","organizations_url":"https://api.github.com/users/roberthoner/orgs","repos_url":"https://api.github.com/users/roberthoner/repos","events_url":"https://api.github.com/users/roberthoner/events{/privacy}","received_events_url":"https://api.github.com/users/roberthoner/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":0,"state":"open","created_at":"2015-05-19T17:30:28Z","updated_at":"2015-05-19T21:24:52Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2015-05-19T21:24:52Z","updated_at":"2015-05-19T21:24:52Z","closed_at":null,"body":"Currently when calling a sequence of methods on a package (e.g., `model.where(...).order(:id).reverse_order.limit(10).to_a`) each method incurs a round-trip with the service. This hurts performance.\r\n\r\nTo improve performance, methods could be chained together and executed within one round-trip. The above example could be written as `model.begin.where(...).order(:id).reverse_order.limit(10).to_a.end`.\r\n"}}