{"action":"created","comment":{"url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/comments/94885823","pull_request_review_id":15427697,"id":94885823,"diff_hunk":"@@ -132,6 +132,9 @@ def _register_commands(self):\n \n             self._project_comm.call(\"trigger_register_command\", name, gui_properties, groups)\n \n+        # Let the proxy know command registration is complete\n+        self._project_comm.call_no_response(\"project_commands_finished\")","path":"python/tk_desktop/desktop_engine_project_implementation.py","position":5,"original_position":5,"commit_id":"53c165a56aa94b9e71cee5677c6e414007784432","original_commit_id":"53c165a56aa94b9e71cee5677c6e414007784432","user":{"login":"akhronek","id":15038709,"avatar_url":"https://avatars.githubusercontent.com/u/15038709?v=3","gravatar_id":"","url":"https://api.github.com/users/akhronek","html_url":"https://github.com/akhronek","followers_url":"https://api.github.com/users/akhronek/followers","following_url":"https://api.github.com/users/akhronek/following{/other_user}","gists_url":"https://api.github.com/users/akhronek/gists{/gist_id}","starred_url":"https://api.github.com/users/akhronek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akhronek/subscriptions","organizations_url":"https://api.github.com/users/akhronek/orgs","repos_url":"https://api.github.com/users/akhronek/repos","events_url":"https://api.github.com/users/akhronek/events{/privacy}","received_events_url":"https://api.github.com/users/akhronek/received_events","type":"User","site_admin":false},"body":"Playing around with this, I found that the 'call_no_response' method actually swallows the ValueError raised when an unknown function is detected [here](https://github.com/shotgunsoftware/tk-desktop/blob/39630_no_item_overlay/python/tk_desktop/rpc.py#L166), so there is no need to have a try/except clause at this point in the code.  It would need to be handled here if I was using the 'call()' method, but I don't think that's necessary at this point.  Also, I tried implementing a custom error [here](https://github.com/shotgunsoftware/tk-desktop/blob/39630_no_item_overlay/python/tk_desktop/rpc.py#L149), but keep in mind that if the unknown function error is being raised in the first place, then it's probably because the site configuration needs to be updated, and the custom exception wouldn't be there anyway ;)  Does this all sound reasonable?","created_at":"2017-01-06T01:14:41Z","updated_at":"2017-01-06T01:14:42Z","html_url":"https://github.com/shotgunsoftware/tk-desktop/pull/47#discussion_r94885823","pull_request_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47","_links":{"self":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/comments/94885823"},"html":{"href":"https://github.com/shotgunsoftware/tk-desktop/pull/47#discussion_r94885823"},"pull_request":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47"}}},"pull_request":{"url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47","id":98456852,"html_url":"https://github.com/shotgunsoftware/tk-desktop/pull/47","diff_url":"https://github.com/shotgunsoftware/tk-desktop/pull/47.diff","patch_url":"https://github.com/shotgunsoftware/tk-desktop/pull/47.patch","issue_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/47","number":47,"state":"open","locked":false,"title":"For #39630, UI to display when no commands are found for a project.","user":{"login":"akhronek","id":15038709,"avatar_url":"https://avatars.githubusercontent.com/u/15038709?v=3","gravatar_id":"","url":"https://api.github.com/users/akhronek","html_url":"https://github.com/akhronek","followers_url":"https://api.github.com/users/akhronek/followers","following_url":"https://api.github.com/users/akhronek/following{/other_user}","gists_url":"https://api.github.com/users/akhronek/gists{/gist_id}","starred_url":"https://api.github.com/users/akhronek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akhronek/subscriptions","organizations_url":"https://api.github.com/users/akhronek/orgs","repos_url":"https://api.github.com/users/akhronek/repos","events_url":"https://api.github.com/users/akhronek/events{/privacy}","received_events_url":"https://api.github.com/users/akhronek/received_events","type":"User","site_admin":false},"body":"Includes a link to a Shotgun Support article describing how to configure Software entities on a site.\r\n\r\nReady for initial review, some specific implementation comments have been added.","created_at":"2016-12-17T21:46:22Z","updated_at":"2017-01-06T01:14:42Z","closed_at":null,"merged_at":null,"merge_commit_sha":"68332df02d3cc96bb0d445562c7986a745078842","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47/commits","review_comments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47/comments","review_comment_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/comments{/number}","comments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/47/comments","statuses_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/statuses/53c165a56aa94b9e71cee5677c6e414007784432","head":{"label":"shotgunsoftware:39630_no_item_overlay","ref":"39630_no_item_overlay","sha":"53c165a56aa94b9e71cee5677c6e414007784432","user":{"login":"shotgunsoftware","id":317894,"avatar_url":"https://avatars.githubusercontent.com/u/317894?v=3","gravatar_id":"","url":"https://api.github.com/users/shotgunsoftware","html_url":"https://github.com/shotgunsoftware","followers_url":"https://api.github.com/users/shotgunsoftware/followers","following_url":"https://api.github.com/users/shotgunsoftware/following{/other_user}","gists_url":"https://api.github.com/users/shotgunsoftware/gists{/gist_id}","starred_url":"https://api.github.com/users/shotgunsoftware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shotgunsoftware/subscriptions","organizations_url":"https://api.github.com/users/shotgunsoftware/orgs","repos_url":"https://api.github.com/users/shotgunsoftware/repos","events_url":"https://api.github.com/users/shotgunsoftware/events{/privacy}","received_events_url":"https://api.github.com/users/shotgunsoftware/received_events","type":"Organization","site_admin":false},"repo":{"id":14870751,"name":"tk-desktop","full_name":"shotgunsoftware/tk-desktop","owner":{"login":"shotgunsoftware","id":317894,"avatar_url":"https://avatars.githubusercontent.com/u/317894?v=3","gravatar_id":"","url":"https://api.github.com/users/shotgunsoftware","html_url":"https://github.com/shotgunsoftware","followers_url":"https://api.github.com/users/shotgunsoftware/followers","following_url":"https://api.github.com/users/shotgunsoftware/following{/other_user}","gists_url":"https://api.github.com/users/shotgunsoftware/gists{/gist_id}","starred_url":"https://api.github.com/users/shotgunsoftware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shotgunsoftware/subscriptions","organizations_url":"https://api.github.com/users/shotgunsoftware/orgs","repos_url":"https://api.github.com/users/shotgunsoftware/repos","events_url":"https://api.github.com/users/shotgunsoftware/events{/privacy}","received_events_url":"https://api.github.com/users/shotgunsoftware/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/shotgunsoftware/tk-desktop","description":"A Shotgun Pipeline Toolkit engine for desktop applications and operating system integration.","fork":false,"url":"https://api.github.com/repos/shotgunsoftware/tk-desktop","forks_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/forks","keys_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/teams","hooks_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/hooks","issue_events_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/events{/number}","events_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/events","assignees_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/assignees{/user}","branches_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/branches{/branch}","tags_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/tags","blobs_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/refs{/sha}","trees_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/statuses/{sha}","languages_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/languages","stargazers_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/stargazers","contributors_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/contributors","subscribers_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/subscribers","subscription_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/subscription","commits_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/commits{/sha}","git_commits_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/commits{/sha}","comments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/comments{/number}","issue_comment_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/comments{/number}","contents_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/contents/{+path}","compare_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/merges","archive_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/downloads","issues_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues{/number}","pulls_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls{/number}","milestones_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/milestones{/number}","notifications_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/labels{/name}","releases_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/releases{/id}","deployments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/deployments","created_at":"2013-12-02T18:22:12Z","updated_at":"2016-12-06T14:55:45Z","pushed_at":"2017-01-06T00:53:53Z","git_url":"git://github.com/shotgunsoftware/tk-desktop.git","ssh_url":"git@github.com:shotgunsoftware/tk-desktop.git","clone_url":"https://github.com/shotgunsoftware/tk-desktop.git","svn_url":"https://github.com/shotgunsoftware/tk-desktop","homepage":null,"size":4212,"stargazers_count":7,"watchers_count":7,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7,"mirror_url":null,"open_issues_count":6,"forks":7,"open_issues":6,"watchers":7,"default_branch":"master"}},"base":{"label":"shotgunsoftware:develop/software_entity","ref":"develop/software_entity","sha":"bfc55355e8b1b9c26a1c3f434026b9918989b5b5","user":{"login":"shotgunsoftware","id":317894,"avatar_url":"https://avatars.githubusercontent.com/u/317894?v=3","gravatar_id":"","url":"https://api.github.com/users/shotgunsoftware","html_url":"https://github.com/shotgunsoftware","followers_url":"https://api.github.com/users/shotgunsoftware/followers","following_url":"https://api.github.com/users/shotgunsoftware/following{/other_user}","gists_url":"https://api.github.com/users/shotgunsoftware/gists{/gist_id}","starred_url":"https://api.github.com/users/shotgunsoftware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shotgunsoftware/subscriptions","organizations_url":"https://api.github.com/users/shotgunsoftware/orgs","repos_url":"https://api.github.com/users/shotgunsoftware/repos","events_url":"https://api.github.com/users/shotgunsoftware/events{/privacy}","received_events_url":"https://api.github.com/users/shotgunsoftware/received_events","type":"Organization","site_admin":false},"repo":{"id":14870751,"name":"tk-desktop","full_name":"shotgunsoftware/tk-desktop","owner":{"login":"shotgunsoftware","id":317894,"avatar_url":"https://avatars.githubusercontent.com/u/317894?v=3","gravatar_id":"","url":"https://api.github.com/users/shotgunsoftware","html_url":"https://github.com/shotgunsoftware","followers_url":"https://api.github.com/users/shotgunsoftware/followers","following_url":"https://api.github.com/users/shotgunsoftware/following{/other_user}","gists_url":"https://api.github.com/users/shotgunsoftware/gists{/gist_id}","starred_url":"https://api.github.com/users/shotgunsoftware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shotgunsoftware/subscriptions","organizations_url":"https://api.github.com/users/shotgunsoftware/orgs","repos_url":"https://api.github.com/users/shotgunsoftware/repos","events_url":"https://api.github.com/users/shotgunsoftware/events{/privacy}","received_events_url":"https://api.github.com/users/shotgunsoftware/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/shotgunsoftware/tk-desktop","description":"A Shotgun Pipeline Toolkit engine for desktop applications and operating system integration.","fork":false,"url":"https://api.github.com/repos/shotgunsoftware/tk-desktop","forks_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/forks","keys_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/keys{/key_id}","collaborators_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/teams","hooks_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/hooks","issue_events_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/events{/number}","events_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/events","assignees_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/assignees{/user}","branches_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/branches{/branch}","tags_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/tags","blobs_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/refs{/sha}","trees_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/trees{/sha}","statuses_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/statuses/{sha}","languages_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/languages","stargazers_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/stargazers","contributors_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/contributors","subscribers_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/subscribers","subscription_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/subscription","commits_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/commits{/sha}","git_commits_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/git/commits{/sha}","comments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/comments{/number}","issue_comment_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/comments{/number}","contents_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/contents/{+path}","compare_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/compare/{base}...{head}","merges_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/merges","archive_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/downloads","issues_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues{/number}","pulls_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls{/number}","milestones_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/milestones{/number}","notifications_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/labels{/name}","releases_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/releases{/id}","deployments_url":"https://api.github.com/repos/shotgunsoftware/tk-desktop/deployments","created_at":"2013-12-02T18:22:12Z","updated_at":"2016-12-06T14:55:45Z","pushed_at":"2017-01-06T00:53:53Z","git_url":"git://github.com/shotgunsoftware/tk-desktop.git","ssh_url":"git@github.com:shotgunsoftware/tk-desktop.git","clone_url":"https://github.com/shotgunsoftware/tk-desktop.git","svn_url":"https://github.com/shotgunsoftware/tk-desktop","homepage":null,"size":4212,"stargazers_count":7,"watchers_count":7,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7,"mirror_url":null,"open_issues_count":6,"forks":7,"open_issues":6,"watchers":7,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47"},"html":{"href":"https://github.com/shotgunsoftware/tk-desktop/pull/47"},"issue":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/47"},"comments":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/issues/47/comments"},"review_comments":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47/comments"},"review_comment":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/pulls/47/commits"},"statuses":{"href":"https://api.github.com/repos/shotgunsoftware/tk-desktop/statuses/53c165a56aa94b9e71cee5677c6e414007784432"}}}}
{"actor":{"display_login":"akhronek"}}