{"action":"created","comment":{"url":"https://api.github.com/repos/2600hz/kazoo/pulls/comments/31079307","id":31079307,"diff_hunk":"@@ -46,7 +46,7 @@ test_convert(AccountDb) ->\n                                           [CdrDoc | Acc]\n                                   end, [], JObjs),\n             CsvData = json_objs_to_csv(CdrDocs),\n-            maybe_save_csv(<<\"test.csv\">>, CsvData)\n+            maybe_save_csv(\"test.csv\", CsvData)","path":"applications/cdr/src/csv_util.erl","position":5,"original_position":5,"commit_id":"6af2974b51118419be98dfa1c5b1c1b698cb9731","original_commit_id":"6af2974b51118419be98dfa1c5b1c1b698cb9731","user":{"login":"jamesaimonetti","id":160921,"avatar_url":"https://avatars.githubusercontent.com/u/160921?v=3","gravatar_id":"","url":"https://api.github.com/users/jamesaimonetti","html_url":"https://github.com/jamesaimonetti","followers_url":"https://api.github.com/users/jamesaimonetti/followers","following_url":"https://api.github.com/users/jamesaimonetti/following{/other_user}","gists_url":"https://api.github.com/users/jamesaimonetti/gists{/gist_id}","starred_url":"https://api.github.com/users/jamesaimonetti/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jamesaimonetti/subscriptions","organizations_url":"https://api.github.com/users/jamesaimonetti/orgs","repos_url":"https://api.github.com/users/jamesaimonetti/repos","events_url":"https://api.github.com/users/jamesaimonetti/events{/privacy}","received_events_url":"https://api.github.com/users/jamesaimonetti/received_events","type":"User","site_admin":false},"body":"`file:filename()` and `file:name()` both accept binaries; why the change?","created_at":"2015-05-26T21:00:28Z","updated_at":"2015-05-26T21:00:28Z","html_url":"https://github.com/2600hz/kazoo/pull/1057#discussion_r31079307","pull_request_url":"https://api.github.com/repos/2600hz/kazoo/pulls/1057","_links":{"self":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/comments/31079307"},"html":{"href":"https://github.com/2600hz/kazoo/pull/1057#discussion_r31079307"},"pull_request":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/1057"}}},"pull_request":{"url":"https://api.github.com/repos/2600hz/kazoo/pulls/1057","id":36081549,"html_url":"https://github.com/2600hz/kazoo/pull/1057","diff_url":"https://github.com/2600hz/kazoo/pull/1057.diff","patch_url":"https://github.com/2600hz/kazoo/pull/1057.patch","issue_url":"https://api.github.com/repos/2600hz/kazoo/issues/1057","number":1057,"state":"open","locked":false,"title":"dialyze-apps: cleanse Dialyzer warnings for applications/","user":{"login":"fenollp","id":278727,"avatar_url":"https://avatars.githubusercontent.com/u/278727?v=3","gravatar_id":"","url":"https://api.github.com/users/fenollp","html_url":"https://github.com/fenollp","followers_url":"https://api.github.com/users/fenollp/followers","following_url":"https://api.github.com/users/fenollp/following{/other_user}","gists_url":"https://api.github.com/users/fenollp/gists{/gist_id}","starred_url":"https://api.github.com/users/fenollp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fenollp/subscriptions","organizations_url":"https://api.github.com/users/fenollp/orgs","repos_url":"https://api.github.com/users/fenollp/repos","events_url":"https://api.github.com/users/fenollp/events{/privacy}","received_events_url":"https://api.github.com/users/fenollp/received_events","type":"User","site_admin":false},"body":"warn_umatched_return          webhooks_util.erl:392: Expression produces a value of type ['ok'], but this value is unmatched\r\nwarn_umatched_return          webhooks_util.erl:490: Expression produces a value of type ['ok'], but this value is unmatched\r\nwarn_umatched_return          trunkstore_maintenance.erl:32: Expression produces a value of type [any()], but this value is unmatched\r\nwarn_umatched_return          sysconf_acls.erl:182: Expression produces a value of type ['ok'], but this value is unmatched\r\nwarn_matching                 stepswitch_resources.erl:288: Clause guard cannot succeed. The pattern <IP, Port, _, Gateway = {'gateway', _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, 'true'}> was matched against the type <_,'undefined' | integer(),_,_>\r\nwarn_failing_call             spyvsspy_handlers.erl:102: The call spyvsspy_handlers:respond_error(JObj::any(),'timeout') breaks the contract (wh_json:object(),ne_binary()) -> 'ok'\r\nwarn_umatched_return          gcm.erl:85: Expression produces a value of type 'ok' | {'error',_} | {'ok',timer:tref()}, but this value is unmatched\r\nwarn_umatched_return          apns.erl:52: Expression produces a value of type 'ok' | {'error',_}, but this value is unmatched\r\nwarn_umatched_return          apns_connection.erl:190: Expression produces a value of type ['ok'], but this value is unmatched\r\nwarn_umatched_return          pivot_call.erl:107: Expression produces a value of type 'ok' | [any()], but this value is unmatched\r\nwarn_failing_call             pivot_call.erl:249: The call pivot_call:maybe_debug_req(Call::any(),Url::'undefined' | binary(),'post',Headers::[{[45 | 67 | 84 | 101 | 110 | 111 | 112 | 116 | 121,...],[1..255,...]},...],Body::any(),Debug::boolean()) breaks the contract (whapps_call:call(),iolist(),atom(),wh_proplist(),iolist(),boolean()) -> 'ok'\r\nwarn_failing_call             pivot_call.erl:317: The call pivot_call:maybe_debug_resp(Debug::boolean(),Call::any(),any(),RespHeaders::[{atom() | <<_:8,_:_*8>> | fun() | [<<_:8,_:_*8>> | char()] | number(),_}],RespBody::'undefined' | binary()) breaks the contract (boolean(),whapps_call:call(),ne_binary(),ne_binary(),[any()]) -> 'ok'\r\nwarn_failing_call             pivot_call.erl:368: The call pivot_call:maybe_debug_resp(Debug::boolean(),Call::any(),RespCode::'undefined' | binary(),RespHeaders::'undefined' | [binary()],RespBody::'undefined' | binary()) breaks the contract (boolean(),whapps_call:call(),ne_binary(),ne_binary(),[any()]) -> 'ok'\r\nwarn_contract_types           pivot_call.erl:569: Invalid type specification for function pivot_call:maybe_debug_resp/5. The success typing is (boolean(),_,_,'undefined' | [binary() | {atom() | <<_:8,_:_*8>> | fun() | [any()] | number(),_}],'undefined' | binary()) -> 'ok'\r\nwarn_matching                 konami_code_fsm.erl:90: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:91: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:137: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:144: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:152: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:159: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:194: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:201: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:278: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:455: The pattern 'true' can never match the type 'false'\r\nwarn_matching                 konami_code_fsm.erl:462: The pattern 'true' can never match the type 'false'\r\nwarn_umatched_return          konami_event_listener.erl:211: Expression produces a value of type [any()], but this value is unmatched\r\nwarn_umatched_return          konami_event_listener.erl:212: Expression produces a value of type [any()], but this value is unmatched\r\nwarn_umatched_return          konami_event_listener.erl:217: Expression produces a value of type [any()], but this value is unmatched\r\nwarn_umatched_return          konami_event_listener.erl:376: Expression produces a value of type [any()], but this value is unmatched\r\nwarn_umatched_return          konami_maintenance.erl:143: Expression produces a value of type ['ok'], but this value is unmatched\r\nwarn_contract_types           fax_worker.erl:758: Invalid type specification for function fax_worker:get_sizes/1. The success typing is ('undefined') -> {_,non_neg_integer()}\r\nwarn_matching                 ecallmgr_fs_notify.erl:241: The pattern 'undefined' can never match the type binary()\r\nwarn_matching                 ecallmgr_fs_notify.erl:247: The pattern 'undefined' can never match the type binary()\r\nwarn_contract_types           crossbar_maintenance.erl:809: Invalid type specification for function crossbar_maintenance:find_apps/1. The success typing is (atom() | [atom() | [any()] | char()]) -> any()\r\nwarn_matching                 crossbar_maintenance.erl:887: The pattern [{IconId, IconData} | _] can never match the type []\r\nwarn_not_called               crossbar_maintenance.erl:891: Function add_icon/4 will never be called\r\nwarn_failing_call             crossbar_maintenance.erl:908: The call crossbar_maintenance:read_icon(IconPath::binary() | string(),Icon::string()) breaks the contract (ne_binary(),ne_binary()) -> binary()\r\nwarn_contract_types           crossbar_maintenance.erl:910: Invalid type specification for function crossbar_maintenance:read_icon/2. The success typing is (binary() | string(),string()) -> binary()\r\n\r\nwarn_bin_construction         stepswitch_resources.erl:982: Binary construction will fail since the value field Port in segment Port/binary-unit:8 has type 'undefined' | integer()\r\n\r\nwarn_umatched_return          acdc_agent_sup.erl:50: Expression produces a value of type 'ok' | {'error','not_found'}, but this value is unmatched\r\nwarn_umatched_return          cf_voicemail.erl:723: Expression produces a value of type 'false' | {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          cf_voicemail.erl:728: Expression produces a value of type 'false' | {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          cf_voicemail.erl:733: Expression produces a value of type 'false' | {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          cf_park.erl:119: Expression produces a value of type {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          cf_hotdesk.erl:80: Expression produces a value of type 'ok' | {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          cf_hotdesk.erl:84: Expression produces a value of type 'ok' | {'error',_} | {'ok',_}, but this value is unmatched\r\nwarn_umatched_return          camper_offnet_handler.erl:198: Expression produces a value of type {'error',_} | {'ok',timer:tref()}, but this value is unmatched\r\nwarn_umatched_return          camper_offnet_handler.erl:205: Expression produces a value of type {'error',_} | {'ok','cancel'}, but this value is unmatched\r\nwarn_matching                 cdr_v3_migrate_worker.erl:52: The pattern {'error', _E} can never match the type 'ok'\r\nwarn_matching                 cdr_v3_migrate_worker.erl:71: The pattern Error = {'error', _} can never match the type 'ok'\r\nwarn_failing_call             cdr_v3_migrate_worker.erl:85: The call filelib:ensure_dir(ArchivePath::binary()) breaks the contract (Name) -> 'ok' | {'error',Reason} when is_subtype(Name,filename() | dirname()), is_subtype(Reason,file:posix())\r\nwarn_contract_types           cdr_v3_migrate_worker.erl:180: Invalid type specification for function cdr_v3_migrate_worker:create_view_options/1. The success typing is ({non_neg_integer(),1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12,1..255}) -> ['include_docs' | {<<_:48,_:_*16>>,non_neg_integer()},...]\r\nwarn_failing_call             csv_util.erl:66: The call filelib:ensure_dir(TestPath::binary()) breaks the contract (Name) -> 'ok' | {'error',Reason} when is_subtype(Name,filename() | dirname()), is_subtype(Reason,file:posix())\r\nwarn_contract_types           cdr_sup.erl:38: Invalid type specification for function cdr_sup:get_migrate_server_pid/1. The success typing is (pid()) -> none()\r\nwarn_failing_call             cdr_sup.erl:40: The call cdr_sup:child_of_type(Super::'cdr_sup','cdr_v3_migrator') breaks the contract (pid(),atom()) -> pids()\r\nwarn_contract_types           cdr_sup.erl:45: Invalid type specification for function cdr_sup:child_of_type/2. The success typing is ('cdr_sup','cdr_v3_migrator') -> ['restarting' | 'undefined' | pid()]\r\nwarn_umatched_return          cdr_sup.erl:81: Expression produces a value of type 'ok' | {'error','not_found' | 'simple_one_for_one'}, but this value is unmatched\r\nwarn_umatched_return          ecallmgr_call_control.erl:958: Expression produces a value of type queue(), but this value is unmatched\r\nwarn_umatched_return          fax_xmpp_sup.erl:48: Expression produces a value of type 'ok' | {'error','not_found' | 'simple_one_for_one'}, but this value is unmatched\r\nwarn_umatched_return          whistle_snmp.erl:38: Expression produces a value of type 'ok' | {'error',_}, but this value is unmatched\r\nwarn_failing_call             pivot_call.erl:442: The call pivot_call:send(UpdatedCall::any(),maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),'get',[],[],Debug::boolean()) will never return since it differs in the 2nd argument from the success typing arguments: (any(),binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean())\r\nwarn_contract_types           pivot_call.erl:449: Invalid type specification for function pivot_call:send/6. The success typing is (_,binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean()) -> {'stop',_} | {'ok',_,_}\r\n\r\nwarn_matching                 crossbar_maintenance.erl:887: The pattern [{IconId, IconData} | _] can never match the type []\r\nwarn_not_called               crossbar_maintenance.erl:891: Function add_icon/4 will never be called\r\nwarn_failing_call             crossbar_maintenance.erl:908: The call crossbar_maintenance:read_icon(IconPath::binary() | string(),Icon::string()) breaks the contract (ne_binary(),ne_binary()) -> binary()\r\nwarn_contract_types           crossbar_maintenance.erl:910: Invalid type specification for function crossbar_maintenance:read_icon/2. The success typing is (binary() | string(),string()) -> binary()\r\n\r\nwarn_failing_call             csv_util.erl:66: The call filelib:ensure_dir(TestPath::binary()) breaks the contract (Name) -> 'ok' | {'error',Reason} when is_subtype(Name,filename() | dirname()), is_subtype(Reason,file:posix())\r\nwarn_failing_call             crossbar_maintenance.erl:887: The call crossbar_maintenance:add_icon(AppId::any(),MasterAccountDb::<<_:8,_:_*8>>,IconId::[any()],IconData::binary()) breaks the contract (ne_binary(),ne_binary(),ne_binary(),binary()) -> 'ok'\r\nwarn_contract_types           crossbar_maintenance.erl:890: Invalid type specification for function crossbar_maintenance:add_icon/4. The success typing is (_,<<_:8,_:_*8>>,[any()],binary()) -> 'ok'\r\nwarn_return_only_exit         cb_sup.erl:94: Function system_terminate/4 only terminates with explicit exception\r\nwarn_failing_call             pivot_call.erl:443: The call pivot_call:send(UpdatedCall::any(),string(),'get',[],[],Debug::boolean()) will never return since it differs in the 2nd argument from the success typing arguments: (any(),binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean())\r\nwarn_contract_types           pivot_call.erl:450: Invalid type specification for function pivot_call:send/6. The success typing is (_,binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean()) -> {'stop',_} | {'ok',_,_}\r\nwarn_contract_types           fax_worker.erl:758: Invalid type specification for function fax_worker:get_sizes/1. The success typing is ('undefined') -> {_,non_neg_integer()}\r\n\r\nwarn_failing_call             pivot_call.erl:443: The call pivot_call:send(UpdatedCall::any(),string(),'get',[],[],Debug::boolean()) will never return since it differs in the 2nd argument from the success typing arguments: (any(),binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean())\r\nwarn_contract_types           pivot_call.erl:451: Invalid type specification for function pivot_call:send/6. The success typing is (_,binary(),'get' | 'post',[{[any(),...],[any(),...]}],maybe_improper_list(binary() | maybe_improper_list(any(),binary() | []) | byte(),binary() | []),boolean()) -> {'stop',_} | {'ok',_,_}\r\n\r\nwarn_failing_call             fax_worker.erl:764: The call filelib:file_size(OutputFile::<<_:8,_:_*8>>) breaks the contract (Filename) -> non_neg_integer() when is_subtype(Filename,filename())\r\nwarn_failing_call             csv_util.erl:66: The call filelib:ensure_dir(TestPath::binary()) breaks the contract (Name) -> 'ok' | {'error',Reason} when is_subtype(Name,filename() | dirname()), is_subtype(Reason,file:posix())\r\nwarn_opaque                   ecallmgr_fs_channels.erl:643: The call ecallmgr_fs_channels:query_channels('$end_of_table' | {[[any()]],'$end_of_table' | {atom() | tid(),integer(),integer(),binary(),[any()],integer()} | {atom() | tid(),_,_,integer(),binary(),[any()],integer(),integer()}},Fields::any(),any()) contains an opaque term as 1st argument when terms of different types are expected in these positions\r\nwarn_opaque                   ecallmgr_fs_channels.erl:648: The call ecallmgr_fs_channels:query_channels('$end_of_table' | {[[any()]],'$end_of_table' | {atom() | tid(),integer(),integer(),binary(),[any()],integer()} | {atom() | tid(),_,_,integer(),binary(),[any()],integer(),integer()}},Fields::any(),any()) contains an opaque term as 1st argument when terms of different types are expected in these positions\r\nwarn_contract_types           ecallmgr_fs_channels.erl:653: Invalid type specification for function ecallmgr_fs_channels:query_channels/3. The success typing is ('$end_of_table',_,_) -> any()\r\nwarn_matching                 ecallmgr_fs_channels.erl:656: The pattern <{[Channel = {'channel', CallId, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _}], Continuation}, <<97:8/integer-unit:1,108:8/integer-unit:1,108:8/integer-unit:1>>, Channels> can never match the type <{[[any()]],'$end_of_table' | {atom() | tid(),integer(),integer(),binary(),[any()],integer()} | {atom() | tid(),_,_,integer(),binary(),[any()],integer(),integer()}},_,_>\r\nwarn_matching                 ecallmgr_fs_channels.erl:663: The pattern <{[Channel = {'channel', CallId, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _, _}], Continuation}, Fields, Channels> can never match the type <{[[any()]],'$end_of_table' | {atom() | tid(),integer(),integer(),binary(),[any()],integer()} | {atom() | tid(),_,_,integer(),binary(),[any()],integer(),integer()}},_,_>\r\nwarn_umatched_return          ecallmgr_fs_conference.erl:172: Expression produces a value of type 'continue' | 'stop' | {'continue',[{<<_:64,_:_*8>>,_},...]}, but this value is unmatched","created_at":"2015-05-23T03:31:52Z","updated_at":"2015-05-26T21:00:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":"12026d01f74c0d3953f9579dc216c76db91fa087","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/2600hz/kazoo/pulls/1057/commits","review_comments_url":"https://api.github.com/repos/2600hz/kazoo/pulls/1057/comments","review_comment_url":"https://api.github.com/repos/2600hz/kazoo/pulls/comments{/number}","comments_url":"https://api.github.com/repos/2600hz/kazoo/issues/1057/comments","statuses_url":"https://api.github.com/repos/2600hz/kazoo/statuses/6af2974b51118419be98dfa1c5b1c1b698cb9731","head":{"label":"2600hz:dialyze-apps","ref":"dialyze-apps","sha":"6af2974b51118419be98dfa1c5b1c1b698cb9731","user":{"login":"2600hz","id":408801,"avatar_url":"https://avatars.githubusercontent.com/u/408801?v=3","gravatar_id":"","url":"https://api.github.com/users/2600hz","html_url":"https://github.com/2600hz","followers_url":"https://api.github.com/users/2600hz/followers","following_url":"https://api.github.com/users/2600hz/following{/other_user}","gists_url":"https://api.github.com/users/2600hz/gists{/gist_id}","starred_url":"https://api.github.com/users/2600hz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/2600hz/subscriptions","organizations_url":"https://api.github.com/users/2600hz/orgs","repos_url":"https://api.github.com/users/2600hz/repos","events_url":"https://api.github.com/users/2600hz/events{/privacy}","received_events_url":"https://api.github.com/users/2600hz/received_events","type":"Organization","site_admin":false},"repo":{"id":2966241,"name":"kazoo","full_name":"2600hz/kazoo","owner":{"login":"2600hz","id":408801,"avatar_url":"https://avatars.githubusercontent.com/u/408801?v=3","gravatar_id":"","url":"https://api.github.com/users/2600hz","html_url":"https://github.com/2600hz","followers_url":"https://api.github.com/users/2600hz/followers","following_url":"https://api.github.com/users/2600hz/following{/other_user}","gists_url":"https://api.github.com/users/2600hz/gists{/gist_id}","starred_url":"https://api.github.com/users/2600hz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/2600hz/subscriptions","organizations_url":"https://api.github.com/users/2600hz/orgs","repos_url":"https://api.github.com/users/2600hz/repos","events_url":"https://api.github.com/users/2600hz/events{/privacy}","received_events_url":"https://api.github.com/users/2600hz/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/2600hz/kazoo","description":"","fork":false,"url":"https://api.github.com/repos/2600hz/kazoo","forks_url":"https://api.github.com/repos/2600hz/kazoo/forks","keys_url":"https://api.github.com/repos/2600hz/kazoo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/2600hz/kazoo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/2600hz/kazoo/teams","hooks_url":"https://api.github.com/repos/2600hz/kazoo/hooks","issue_events_url":"https://api.github.com/repos/2600hz/kazoo/issues/events{/number}","events_url":"https://api.github.com/repos/2600hz/kazoo/events","assignees_url":"https://api.github.com/repos/2600hz/kazoo/assignees{/user}","branches_url":"https://api.github.com/repos/2600hz/kazoo/branches{/branch}","tags_url":"https://api.github.com/repos/2600hz/kazoo/tags","blobs_url":"https://api.github.com/repos/2600hz/kazoo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/2600hz/kazoo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/2600hz/kazoo/git/refs{/sha}","trees_url":"https://api.github.com/repos/2600hz/kazoo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/2600hz/kazoo/statuses/{sha}","languages_url":"https://api.github.com/repos/2600hz/kazoo/languages","stargazers_url":"https://api.github.com/repos/2600hz/kazoo/stargazers","contributors_url":"https://api.github.com/repos/2600hz/kazoo/contributors","subscribers_url":"https://api.github.com/repos/2600hz/kazoo/subscribers","subscription_url":"https://api.github.com/repos/2600hz/kazoo/subscription","commits_url":"https://api.github.com/repos/2600hz/kazoo/commits{/sha}","git_commits_url":"https://api.github.com/repos/2600hz/kazoo/git/commits{/sha}","comments_url":"https://api.github.com/repos/2600hz/kazoo/comments{/number}","issue_comment_url":"https://api.github.com/repos/2600hz/kazoo/issues/comments{/number}","contents_url":"https://api.github.com/repos/2600hz/kazoo/contents/{+path}","compare_url":"https://api.github.com/repos/2600hz/kazoo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/2600hz/kazoo/merges","archive_url":"https://api.github.com/repos/2600hz/kazoo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/2600hz/kazoo/downloads","issues_url":"https://api.github.com/repos/2600hz/kazoo/issues{/number}","pulls_url":"https://api.github.com/repos/2600hz/kazoo/pulls{/number}","milestones_url":"https://api.github.com/repos/2600hz/kazoo/milestones{/number}","notifications_url":"https://api.github.com/repos/2600hz/kazoo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/2600hz/kazoo/labels{/name}","releases_url":"https://api.github.com/repos/2600hz/kazoo/releases{/id}","created_at":"2011-12-12T18:08:02Z","updated_at":"2015-05-21T18:29:04Z","pushed_at":"2015-05-26T20:37:17Z","git_url":"git://github.com/2600hz/kazoo.git","ssh_url":"git@github.com:2600hz/kazoo.git","clone_url":"https://github.com/2600hz/kazoo.git","svn_url":"https://github.com/2600hz/kazoo","homepage":"","size":522300,"stargazers_count":255,"watchers_count":255,"language":"Erlang","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":127,"mirror_url":null,"open_issues_count":12,"forks":127,"open_issues":12,"watchers":255,"default_branch":"master"}},"base":{"label":"2600hz:master","ref":"master","sha":"92508b8011f9c937f7f7e0289d4ec2c3a60b5e39","user":{"login":"2600hz","id":408801,"avatar_url":"https://avatars.githubusercontent.com/u/408801?v=3","gravatar_id":"","url":"https://api.github.com/users/2600hz","html_url":"https://github.com/2600hz","followers_url":"https://api.github.com/users/2600hz/followers","following_url":"https://api.github.com/users/2600hz/following{/other_user}","gists_url":"https://api.github.com/users/2600hz/gists{/gist_id}","starred_url":"https://api.github.com/users/2600hz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/2600hz/subscriptions","organizations_url":"https://api.github.com/users/2600hz/orgs","repos_url":"https://api.github.com/users/2600hz/repos","events_url":"https://api.github.com/users/2600hz/events{/privacy}","received_events_url":"https://api.github.com/users/2600hz/received_events","type":"Organization","site_admin":false},"repo":{"id":2966241,"name":"kazoo","full_name":"2600hz/kazoo","owner":{"login":"2600hz","id":408801,"avatar_url":"https://avatars.githubusercontent.com/u/408801?v=3","gravatar_id":"","url":"https://api.github.com/users/2600hz","html_url":"https://github.com/2600hz","followers_url":"https://api.github.com/users/2600hz/followers","following_url":"https://api.github.com/users/2600hz/following{/other_user}","gists_url":"https://api.github.com/users/2600hz/gists{/gist_id}","starred_url":"https://api.github.com/users/2600hz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/2600hz/subscriptions","organizations_url":"https://api.github.com/users/2600hz/orgs","repos_url":"https://api.github.com/users/2600hz/repos","events_url":"https://api.github.com/users/2600hz/events{/privacy}","received_events_url":"https://api.github.com/users/2600hz/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/2600hz/kazoo","description":"","fork":false,"url":"https://api.github.com/repos/2600hz/kazoo","forks_url":"https://api.github.com/repos/2600hz/kazoo/forks","keys_url":"https://api.github.com/repos/2600hz/kazoo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/2600hz/kazoo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/2600hz/kazoo/teams","hooks_url":"https://api.github.com/repos/2600hz/kazoo/hooks","issue_events_url":"https://api.github.com/repos/2600hz/kazoo/issues/events{/number}","events_url":"https://api.github.com/repos/2600hz/kazoo/events","assignees_url":"https://api.github.com/repos/2600hz/kazoo/assignees{/user}","branches_url":"https://api.github.com/repos/2600hz/kazoo/branches{/branch}","tags_url":"https://api.github.com/repos/2600hz/kazoo/tags","blobs_url":"https://api.github.com/repos/2600hz/kazoo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/2600hz/kazoo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/2600hz/kazoo/git/refs{/sha}","trees_url":"https://api.github.com/repos/2600hz/kazoo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/2600hz/kazoo/statuses/{sha}","languages_url":"https://api.github.com/repos/2600hz/kazoo/languages","stargazers_url":"https://api.github.com/repos/2600hz/kazoo/stargazers","contributors_url":"https://api.github.com/repos/2600hz/kazoo/contributors","subscribers_url":"https://api.github.com/repos/2600hz/kazoo/subscribers","subscription_url":"https://api.github.com/repos/2600hz/kazoo/subscription","commits_url":"https://api.github.com/repos/2600hz/kazoo/commits{/sha}","git_commits_url":"https://api.github.com/repos/2600hz/kazoo/git/commits{/sha}","comments_url":"https://api.github.com/repos/2600hz/kazoo/comments{/number}","issue_comment_url":"https://api.github.com/repos/2600hz/kazoo/issues/comments{/number}","contents_url":"https://api.github.com/repos/2600hz/kazoo/contents/{+path}","compare_url":"https://api.github.com/repos/2600hz/kazoo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/2600hz/kazoo/merges","archive_url":"https://api.github.com/repos/2600hz/kazoo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/2600hz/kazoo/downloads","issues_url":"https://api.github.com/repos/2600hz/kazoo/issues{/number}","pulls_url":"https://api.github.com/repos/2600hz/kazoo/pulls{/number}","milestones_url":"https://api.github.com/repos/2600hz/kazoo/milestones{/number}","notifications_url":"https://api.github.com/repos/2600hz/kazoo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/2600hz/kazoo/labels{/name}","releases_url":"https://api.github.com/repos/2600hz/kazoo/releases{/id}","created_at":"2011-12-12T18:08:02Z","updated_at":"2015-05-21T18:29:04Z","pushed_at":"2015-05-26T20:37:17Z","git_url":"git://github.com/2600hz/kazoo.git","ssh_url":"git@github.com:2600hz/kazoo.git","clone_url":"https://github.com/2600hz/kazoo.git","svn_url":"https://github.com/2600hz/kazoo","homepage":"","size":522300,"stargazers_count":255,"watchers_count":255,"language":"Erlang","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":127,"mirror_url":null,"open_issues_count":12,"forks":127,"open_issues":12,"watchers":255,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/1057"},"html":{"href":"https://github.com/2600hz/kazoo/pull/1057"},"issue":{"href":"https://api.github.com/repos/2600hz/kazoo/issues/1057"},"comments":{"href":"https://api.github.com/repos/2600hz/kazoo/issues/1057/comments"},"review_comments":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/1057/comments"},"review_comment":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/2600hz/kazoo/pulls/1057/commits"},"statuses":{"href":"https://api.github.com/repos/2600hz/kazoo/statuses/6af2974b51118419be98dfa1c5b1c1b698cb9731"}}}}