{"action":"created","comment":{"url":"https://api.github.com/repos/nteract/nteract/pulls/comments/178446365","pull_request_review_id":108507374,"id":178446365,"diff_hunk":"@@ -0,0 +1,71 @@\n+// @flow\n+\n+import * as Immutable from \"immutable\";\n+\n+// The kernel info object is determined by making a kernel_info_request to the\n+// kernel after it has been started\n+export type KernelInfo = {\n+  // Version of the messaging protocol.\n+  // The first integer indicates major version.  It is incremented when\n+  // there is any backward incompatible change.\n+  // The second integer indicates minor version.  It is incremented when\n+  // there is any backward compatible change.\n+  protocolVersion: string, // E.g. 1.2.3\n+\n+  // The kernel implementation name\n+  // (e.g. 'ipython' for the IPython kernel)\n+  implementation: string,\n+\n+  // Implementation version number.\n+  // The version number of the kernel's implementation\n+  // (e.g. IPython.__version__ for the IPython kernel)\n+  implementationVersion: string,\n+\n+  // A banner of information about the kernel,\n+  // which may be displayed in console environments.\n+  banner: string,\n+\n+  // Optional: A list of dictionaries, each with keys 'text' and 'url'.\n+  // These can be displayed in the help menu for the UI.\n+  help_links?: Array<{ text: string, url: string }>,","path":"packages/core/src/state/entities/kernel-info.js","position":null,"original_position":30,"commit_id":"8160f0bc0abd357b10e1a573848612bb32e2b232","original_commit_id":"7134788c95cb27bb2b4ec1194ac9d53552c12788","user":{"login":"rgbkrk","id":836375,"avatar_url":"https://avatars0.githubusercontent.com/u/836375?v=4","gravatar_id":"","url":"https://api.github.com/users/rgbkrk","html_url":"https://github.com/rgbkrk","followers_url":"https://api.github.com/users/rgbkrk/followers","following_url":"https://api.github.com/users/rgbkrk/following{/other_user}","gists_url":"https://api.github.com/users/rgbkrk/gists{/gist_id}","starred_url":"https://api.github.com/users/rgbkrk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rgbkrk/subscriptions","organizations_url":"https://api.github.com/users/rgbkrk/orgs","repos_url":"https://api.github.com/users/rgbkrk/repos","events_url":"https://api.github.com/users/rgbkrk/events{/privacy}","received_events_url":"https://api.github.com/users/rgbkrk/received_events","type":"User","site_admin":false},"body":"Tackled this one by the way.","created_at":"2018-04-01T02:19:35Z","updated_at":"2018-04-01T02:19:35Z","html_url":"https://github.com/nteract/nteract/pull/2719#discussion_r178446365","pull_request_url":"https://api.github.com/repos/nteract/nteract/pulls/2719","author_association":"OWNER","_links":{"self":{"href":"https://api.github.com/repos/nteract/nteract/pulls/comments/178446365"},"html":{"href":"https://github.com/nteract/nteract/pull/2719#discussion_r178446365"},"pull_request":{"href":"https://api.github.com/repos/nteract/nteract/pulls/2719"}},"in_reply_to_id":178420150},"pull_request":{"url":"https://api.github.com/repos/nteract/nteract/pulls/2719","id":178658348,"html_url":"https://github.com/nteract/nteract/pull/2719","diff_url":"https://github.com/nteract/nteract/pull/2719.diff","patch_url":"https://github.com/nteract/nteract/pull/2719.patch","issue_url":"https://api.github.com/repos/nteract/nteract/issues/2719","number":2719,"state":"open","locked":false,"title":"Kernel info","user":{"login":"rgbkrk","id":836375,"avatar_url":"https://avatars0.githubusercontent.com/u/836375?v=4","gravatar_id":"","url":"https://api.github.com/users/rgbkrk","html_url":"https://github.com/rgbkrk","followers_url":"https://api.github.com/users/rgbkrk/followers","following_url":"https://api.github.com/users/rgbkrk/following{/other_user}","gists_url":"https://api.github.com/users/rgbkrk/gists{/gist_id}","starred_url":"https://api.github.com/users/rgbkrk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rgbkrk/subscriptions","organizations_url":"https://api.github.com/users/rgbkrk/orgs","repos_url":"https://api.github.com/users/rgbkrk/repos","events_url":"https://api.github.com/users/rgbkrk/events{/privacy}","received_events_url":"https://api.github.com/users/rgbkrk/received_events","type":"User","site_admin":false},"body":"In an effort to surface the right information in the status bar in the kernel, I went after cleaning up our kernel info and making the notebook app take a `contentRef`.\r\n\r\n## `setKernelInfo` action and `KernelInfo` record\r\n\r\nWe had an action called `setKernelInfo` that was only used on Desktop (as far as I can tell) that I've renamed to `setKernelspecInfo`. I've done this so we can have a `setKernelInfo` that actually matches the `kernel_info_request` and `kernel_info_reply` pairs.\r\n\r\nThere are now proper types for `KernelInfo`, and I've created a flattened version of the `kernel_info_reply` content for us to use.\r\n\r\n## `<NotebookApp />`\r\n\r\nIn the process here, I've made the `<NotebookApp />` component require a `contentRef`. On Desktop it uses the `contentRef` set at the start (since we never swap it out on the same window).\r\n\r\n## `<StatusBar />`\r\n\r\n`<StatusBar />` is now a connected component that accepts props for `contentRef` and `kernelRef` so that it can look up exactly the information it needs.\r\n\r\n## Generic import cleanups\r\n\r\nIn the process of doing this PR I ended up doing some cleanup of imports from core to simplify how I was working on this.","created_at":"2018-03-31T00:56:08Z","updated_at":"2018-04-01T02:19:35Z","closed_at":null,"merged_at":null,"merge_commit_sha":"82590ed2c8d2ae1292e2e54b7f33ee0a72fbdabb","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/nteract/nteract/pulls/2719/commits","review_comments_url":"https://api.github.com/repos/nteract/nteract/pulls/2719/comments","review_comment_url":"https://api.github.com/repos/nteract/nteract/pulls/comments{/number}","comments_url":"https://api.github.com/repos/nteract/nteract/issues/2719/comments","statuses_url":"https://api.github.com/repos/nteract/nteract/statuses/8160f0bc0abd357b10e1a573848612bb32e2b232","head":{"label":"rgbkrk:kernel-info","ref":"kernel-info","sha":"8160f0bc0abd357b10e1a573848612bb32e2b232","user":{"login":"rgbkrk","id":836375,"avatar_url":"https://avatars0.githubusercontent.com/u/836375?v=4","gravatar_id":"","url":"https://api.github.com/users/rgbkrk","html_url":"https://github.com/rgbkrk","followers_url":"https://api.github.com/users/rgbkrk/followers","following_url":"https://api.github.com/users/rgbkrk/following{/other_user}","gists_url":"https://api.github.com/users/rgbkrk/gists{/gist_id}","starred_url":"https://api.github.com/users/rgbkrk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rgbkrk/subscriptions","organizations_url":"https://api.github.com/users/rgbkrk/orgs","repos_url":"https://api.github.com/users/rgbkrk/repos","events_url":"https://api.github.com/users/rgbkrk/events{/privacy}","received_events_url":"https://api.github.com/users/rgbkrk/received_events","type":"User","site_admin":false},"repo":{"id":48899794,"name":"nteract","full_name":"rgbkrk/nteract","owner":{"login":"rgbkrk","id":836375,"avatar_url":"https://avatars0.githubusercontent.com/u/836375?v=4","gravatar_id":"","url":"https://api.github.com/users/rgbkrk","html_url":"https://github.com/rgbkrk","followers_url":"https://api.github.com/users/rgbkrk/followers","following_url":"https://api.github.com/users/rgbkrk/following{/other_user}","gists_url":"https://api.github.com/users/rgbkrk/gists{/gist_id}","starred_url":"https://api.github.com/users/rgbkrk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rgbkrk/subscriptions","organizations_url":"https://api.github.com/users/rgbkrk/orgs","repos_url":"https://api.github.com/users/rgbkrk/repos","events_url":"https://api.github.com/users/rgbkrk/events{/privacy}","received_events_url":"https://api.github.com/users/rgbkrk/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/rgbkrk/nteract","description":":notebook: Electron app of the Jupyter Notebook","fork":true,"url":"https://api.github.com/repos/rgbkrk/nteract","forks_url":"https://api.github.com/repos/rgbkrk/nteract/forks","keys_url":"https://api.github.com/repos/rgbkrk/nteract/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rgbkrk/nteract/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rgbkrk/nteract/teams","hooks_url":"https://api.github.com/repos/rgbkrk/nteract/hooks","issue_events_url":"https://api.github.com/repos/rgbkrk/nteract/issues/events{/number}","events_url":"https://api.github.com/repos/rgbkrk/nteract/events","assignees_url":"https://api.github.com/repos/rgbkrk/nteract/assignees{/user}","branches_url":"https://api.github.com/repos/rgbkrk/nteract/branches{/branch}","tags_url":"https://api.github.com/repos/rgbkrk/nteract/tags","blobs_url":"https://api.github.com/repos/rgbkrk/nteract/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rgbkrk/nteract/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rgbkrk/nteract/git/refs{/sha}","trees_url":"https://api.github.com/repos/rgbkrk/nteract/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rgbkrk/nteract/statuses/{sha}","languages_url":"https://api.github.com/repos/rgbkrk/nteract/languages","stargazers_url":"https://api.github.com/repos/rgbkrk/nteract/stargazers","contributors_url":"https://api.github.com/repos/rgbkrk/nteract/contributors","subscribers_url":"https://api.github.com/repos/rgbkrk/nteract/subscribers","subscription_url":"https://api.github.com/repos/rgbkrk/nteract/subscription","commits_url":"https://api.github.com/repos/rgbkrk/nteract/commits{/sha}","git_commits_url":"https://api.github.com/repos/rgbkrk/nteract/git/commits{/sha}","comments_url":"https://api.github.com/repos/rgbkrk/nteract/comments{/number}","issue_comment_url":"https://api.github.com/repos/rgbkrk/nteract/issues/comments{/number}","contents_url":"https://api.github.com/repos/rgbkrk/nteract/contents/{+path}","compare_url":"https://api.github.com/repos/rgbkrk/nteract/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rgbkrk/nteract/merges","archive_url":"https://api.github.com/repos/rgbkrk/nteract/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rgbkrk/nteract/downloads","issues_url":"https://api.github.com/repos/rgbkrk/nteract/issues{/number}","pulls_url":"https://api.github.com/repos/rgbkrk/nteract/pulls{/number}","milestones_url":"https://api.github.com/repos/rgbkrk/nteract/milestones{/number}","notifications_url":"https://api.github.com/repos/rgbkrk/nteract/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rgbkrk/nteract/labels{/name}","releases_url":"https://api.github.com/repos/rgbkrk/nteract/releases{/id}","deployments_url":"https://api.github.com/repos/rgbkrk/nteract/deployments","created_at":"2016-01-02T05:29:56Z","updated_at":"2018-02-01T19:13:20Z","pushed_at":"2018-04-01T02:06:56Z","git_url":"git://github.com/rgbkrk/nteract.git","ssh_url":"git@github.com:rgbkrk/nteract.git","clone_url":"https://github.com/rgbkrk/nteract.git","svn_url":"https://github.com/rgbkrk/nteract","homepage":null,"size":13642,"stargazers_count":4,"watchers_count":4,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause"},"forks":1,"open_issues":0,"watchers":4,"default_branch":"master"}},"base":{"label":"nteract:master","ref":"master","sha":"12b1cf6d8fa10625dea227974ba599180a190b99","user":{"login":"nteract","id":12401040,"avatar_url":"https://avatars0.githubusercontent.com/u/12401040?v=4","gravatar_id":"","url":"https://api.github.com/users/nteract","html_url":"https://github.com/nteract","followers_url":"https://api.github.com/users/nteract/followers","following_url":"https://api.github.com/users/nteract/following{/other_user}","gists_url":"https://api.github.com/users/nteract/gists{/gist_id}","starred_url":"https://api.github.com/users/nteract/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nteract/subscriptions","organizations_url":"https://api.github.com/users/nteract/orgs","repos_url":"https://api.github.com/users/nteract/repos","events_url":"https://api.github.com/users/nteract/events{/privacy}","received_events_url":"https://api.github.com/users/nteract/received_events","type":"Organization","site_admin":false},"repo":{"id":37496521,"name":"nteract","full_name":"nteract/nteract","owner":{"login":"nteract","id":12401040,"avatar_url":"https://avatars0.githubusercontent.com/u/12401040?v=4","gravatar_id":"","url":"https://api.github.com/users/nteract","html_url":"https://github.com/nteract","followers_url":"https://api.github.com/users/nteract/followers","following_url":"https://api.github.com/users/nteract/following{/other_user}","gists_url":"https://api.github.com/users/nteract/gists{/gist_id}","starred_url":"https://api.github.com/users/nteract/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nteract/subscriptions","organizations_url":"https://api.github.com/users/nteract/orgs","repos_url":"https://api.github.com/users/nteract/repos","events_url":"https://api.github.com/users/nteract/events{/privacy}","received_events_url":"https://api.github.com/users/nteract/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/nteract/nteract","description":"📘 Desktop, Jupyter Extension, libraries, and more","fork":false,"url":"https://api.github.com/repos/nteract/nteract","forks_url":"https://api.github.com/repos/nteract/nteract/forks","keys_url":"https://api.github.com/repos/nteract/nteract/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nteract/nteract/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nteract/nteract/teams","hooks_url":"https://api.github.com/repos/nteract/nteract/hooks","issue_events_url":"https://api.github.com/repos/nteract/nteract/issues/events{/number}","events_url":"https://api.github.com/repos/nteract/nteract/events","assignees_url":"https://api.github.com/repos/nteract/nteract/assignees{/user}","branches_url":"https://api.github.com/repos/nteract/nteract/branches{/branch}","tags_url":"https://api.github.com/repos/nteract/nteract/tags","blobs_url":"https://api.github.com/repos/nteract/nteract/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nteract/nteract/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nteract/nteract/git/refs{/sha}","trees_url":"https://api.github.com/repos/nteract/nteract/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nteract/nteract/statuses/{sha}","languages_url":"https://api.github.com/repos/nteract/nteract/languages","stargazers_url":"https://api.github.com/repos/nteract/nteract/stargazers","contributors_url":"https://api.github.com/repos/nteract/nteract/contributors","subscribers_url":"https://api.github.com/repos/nteract/nteract/subscribers","subscription_url":"https://api.github.com/repos/nteract/nteract/subscription","commits_url":"https://api.github.com/repos/nteract/nteract/commits{/sha}","git_commits_url":"https://api.github.com/repos/nteract/nteract/git/commits{/sha}","comments_url":"https://api.github.com/repos/nteract/nteract/comments{/number}","issue_comment_url":"https://api.github.com/repos/nteract/nteract/issues/comments{/number}","contents_url":"https://api.github.com/repos/nteract/nteract/contents/{+path}","compare_url":"https://api.github.com/repos/nteract/nteract/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nteract/nteract/merges","archive_url":"https://api.github.com/repos/nteract/nteract/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nteract/nteract/downloads","issues_url":"https://api.github.com/repos/nteract/nteract/issues{/number}","pulls_url":"https://api.github.com/repos/nteract/nteract/pulls{/number}","milestones_url":"https://api.github.com/repos/nteract/nteract/milestones{/number}","notifications_url":"https://api.github.com/repos/nteract/nteract/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nteract/nteract/labels{/name}","releases_url":"https://api.github.com/repos/nteract/nteract/releases{/id}","deployments_url":"https://api.github.com/repos/nteract/nteract/deployments","created_at":"2015-06-15T23:21:49Z","updated_at":"2018-04-01T02:06:51Z","pushed_at":"2018-04-01T02:09:23Z","git_url":"git://github.com/nteract/nteract.git","ssh_url":"git@github.com:nteract/nteract.git","clone_url":"https://github.com/nteract/nteract.git","svn_url":"https://github.com/nteract/nteract","homepage":"https://nteract.io","size":13731,"stargazers_count":2389,"watchers_count":2389,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":248,"mirror_url":null,"archived":false,"open_issues_count":279,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause"},"forks":248,"open_issues":279,"watchers":2389,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/nteract/nteract/pulls/2719"},"html":{"href":"https://github.com/nteract/nteract/pull/2719"},"issue":{"href":"https://api.github.com/repos/nteract/nteract/issues/2719"},"comments":{"href":"https://api.github.com/repos/nteract/nteract/issues/2719/comments"},"review_comments":{"href":"https://api.github.com/repos/nteract/nteract/pulls/2719/comments"},"review_comment":{"href":"https://api.github.com/repos/nteract/nteract/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/nteract/nteract/pulls/2719/commits"},"statuses":{"href":"https://api.github.com/repos/nteract/nteract/statuses/8160f0bc0abd357b10e1a573848612bb32e2b232"}},"author_association":"OWNER"}}
{"actor":{"display_login":"rgbkrk"}}