{"action":"created","issue":{"url":"https://api.github.com/repos/metabase/metabase/issues/2619","repository_url":"https://api.github.com/repos/metabase/metabase","labels_url":"https://api.github.com/repos/metabase/metabase/issues/2619/labels{/name}","comments_url":"https://api.github.com/repos/metabase/metabase/issues/2619/comments","events_url":"https://api.github.com/repos/metabase/metabase/issues/2619/events","html_url":"https://github.com/metabase/metabase/pull/2619","id":155575631,"number":2619,"title":"HoneySQL Part 1 Part 3","user":{"login":"camsaul","id":1455846,"avatar_url":"https://avatars.githubusercontent.com/u/1455846?v=3","gravatar_id":"","url":"https://api.github.com/users/camsaul","html_url":"https://github.com/camsaul","followers_url":"https://api.github.com/users/camsaul/followers","following_url":"https://api.github.com/users/camsaul/following{/other_user}","gists_url":"https://api.github.com/users/camsaul/gists{/gist_id}","starred_url":"https://api.github.com/users/camsaul/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camsaul/subscriptions","organizations_url":"https://api.github.com/users/camsaul/orgs","repos_url":"https://api.github.com/users/camsaul/repos","events_url":"https://api.github.com/users/camsaul/events{/privacy}","received_events_url":"https://api.github.com/users/camsaul/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/metabase/metabase/labels/Tech%20Debt%20/%20Refactoring","name":"Tech Debt / Refactoring","color":"EDD585"}],"state":"open","locked":false,"assignee":{"login":"camsaul","id":1455846,"avatar_url":"https://avatars.githubusercontent.com/u/1455846?v=3","gravatar_id":"","url":"https://api.github.com/users/camsaul","html_url":"https://github.com/camsaul","followers_url":"https://api.github.com/users/camsaul/followers","following_url":"https://api.github.com/users/camsaul/following{/other_user}","gists_url":"https://api.github.com/users/camsaul/gists{/gist_id}","starred_url":"https://api.github.com/users/camsaul/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camsaul/subscriptions","organizations_url":"https://api.github.com/users/camsaul/orgs","repos_url":"https://api.github.com/users/camsaul/repos","events_url":"https://api.github.com/users/camsaul/events{/privacy}","received_events_url":"https://api.github.com/users/camsaul/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/metabase/metabase/milestones/18","html_url":"https://github.com/metabase/metabase/milestones/0.18.0","labels_url":"https://api.github.com/repos/metabase/metabase/milestones/18/labels","id":1736953,"number":18,"title":"0.18.0","description":"Code Complete: May TBD","creator":{"login":"salsakran","id":107439,"avatar_url":"https://avatars.githubusercontent.com/u/107439?v=3","gravatar_id":"","url":"https://api.github.com/users/salsakran","html_url":"https://github.com/salsakran","followers_url":"https://api.github.com/users/salsakran/followers","following_url":"https://api.github.com/users/salsakran/following{/other_user}","gists_url":"https://api.github.com/users/salsakran/gists{/gist_id}","starred_url":"https://api.github.com/users/salsakran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/salsakran/subscriptions","organizations_url":"https://api.github.com/users/salsakran/orgs","repos_url":"https://api.github.com/users/salsakran/repos","events_url":"https://api.github.com/users/salsakran/events{/privacy}","received_events_url":"https://api.github.com/users/salsakran/received_events","type":"User","site_admin":false},"open_issues":12,"closed_issues":43,"state":"open","created_at":"2016-04-28T17:19:48Z","updated_at":"2016-05-19T18:12:36Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2016-05-18T18:54:16Z","updated_at":"2016-05-19T18:50:52Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/metabase/metabase/pulls/2619","html_url":"https://github.com/metabase/metabase/pull/2619","diff_url":"https://github.com/metabase/metabase/pull/2619.diff","patch_url":"https://github.com/metabase/metabase/pull/2619.patch"},"body":"Supercedes #2613. This finishes the transition of the CRUD layer to HoneySQL."},"comment":{"url":"https://api.github.com/repos/metabase/metabase/issues/comments/220418162","html_url":"https://github.com/metabase/metabase/pull/2619#issuecomment-220418162","issue_url":"https://api.github.com/repos/metabase/metabase/issues/2619","id":220418162,"user":{"login":"agilliland","id":1987787,"avatar_url":"https://avatars.githubusercontent.com/u/1987787?v=3","gravatar_id":"","url":"https://api.github.com/users/agilliland","html_url":"https://github.com/agilliland","followers_url":"https://api.github.com/users/agilliland/followers","following_url":"https://api.github.com/users/agilliland/following{/other_user}","gists_url":"https://api.github.com/users/agilliland/gists{/gist_id}","starred_url":"https://api.github.com/users/agilliland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agilliland/subscriptions","organizations_url":"https://api.github.com/users/agilliland/orgs","repos_url":"https://api.github.com/users/agilliland/repos","events_url":"https://api.github.com/users/agilliland/events{/privacy}","received_events_url":"https://api.github.com/users/agilliland/received_events","type":"User","site_admin":false},"created_at":"2016-05-19T18:50:52Z","updated_at":"2016-05-19T18:50:52Z","body":"For the select-* variations I am still of the belief that those should not be coupled with the notion of a db/select.  There is no reason for that when most of those are just conveniences for reorganizing a list of maps.  So instead I believe they should be independent functions and if you want to use them then do `(field->object :id (db/select ...))`.\r\n\r\nI also think that we should avoid creating them where they are not accomplishing any meaningful code such as select-field->objects which is just `(group-by field (apply select entity options))`.  This is superfluous and IMO should just be written as `(group-by :id (db/select ...))`."}}