{"action":"created","comment":{"url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/comments/222525417","pull_request_review_id":161432604,"id":222525417,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMjUyNTQxNw==","diff_hunk":"@@ -0,0 +1,390 @@\n+import {\n+    createHoverifier,\n+    findPositionsFromEvents,\n+    HoveredToken,\n+    HoveredTokenContext,\n+    HoverOverlay,\n+    HoverState,\n+} from '@sourcegraph/codeintellify'\n+import { getTokenAtPosition } from '@sourcegraph/codeintellify/lib/token_position'\n+import * as H from 'history'\n+import * as React from 'react'\n+import { Link, LinkProps } from 'react-router-dom'\n+import { Observable, Subject, Subscription } from 'rxjs'\n+import { catchError, filter, map, withLatestFrom } from 'rxjs/operators'\n+import { Position } from 'vscode-languageserver-types'\n+import { getHover, getJumpURL } from '../../backend/features'\n+import { gql, queryGraphQL } from '../../backend/graphql'\n+import * as GQL from '../../backend/graphqlschema'\n+import { LSPTextDocumentPositionParams } from '../../backend/lsp'\n+import { ExtensionsDocumentsProps } from '../../extensions/environment/ExtensionsEnvironment'\n+import { ExtensionsControllerProps } from '../../extensions/ExtensionsClientCommonContext'\n+import { makeRepoURI, ParsedRepoURI } from '../../repo'\n+import { getModeFromPath } from '../../util'\n+import { createAggregateError, ErrorLike, isErrorLike } from '../../util/errors'\n+import { memoizeObservable } from '../../util/memoize'\n+import { isDefined, propertyIsDefined } from '../../util/types'\n+\n+function fetchBlobCacheKey(parsed: ParsedRepoURI & { isLightTheme: boolean; disableTimeout: boolean }): string {\n+    return makeRepoURI(parsed) + parsed.isLightTheme + parsed.disableTimeout\n+}\n+\n+const fetchBlob = memoizeObservable(\n+    (args: {\n+        repoPath: string\n+        commitID: string\n+        filePath: string\n+        isLightTheme: boolean\n+        disableTimeout: boolean\n+    }): Observable<GQL.IGitBlob> =>\n+        queryGraphQL(\n+            gql`\n+                query Blob(\n+                    $repoPath: String!\n+                    $commitID: String!\n+                    $filePath: String!\n+                    $isLightTheme: Boolean!\n+                    $disableTimeout: Boolean!\n+                ) {\n+                    repository(name: $repoPath) {\n+                        commit(rev: $commitID) {\n+                            file(path: $filePath) {\n+                                content\n+                                richHTML\n+                                highlight(disableTimeout: $disableTimeout, isLightTheme: $isLightTheme) {\n+                                    aborted\n+                                    html\n+                                }\n+                            }\n+                        }\n+                    }\n+                }\n+            `,\n+            args\n+        ).pipe(\n+            map(({ data, errors }) => {\n+                if (\n+                    !data ||\n+                    !data.repository ||\n+                    !data.repository.commit ||\n+                    !data.repository.commit.file ||\n+                    !data.repository.commit.file.highlight\n+                ) {\n+                    throw createAggregateError(errors)\n+                }\n+                return data.repository.commit.file\n+            })\n+        ),\n+    fetchBlobCacheKey\n+)\n+\n+interface Props extends ExtensionsControllerProps, ExtensionsDocumentsProps {\n+    history: H.History\n+    containerClass: string\n+    startLine: number\n+    endLine: number\n+    parentElement: string\n+\n+    overlayPortal?: HTMLElement\n+    tooltipClass: string\n+    defaultHoverPosition: Position\n+}\n+\n+interface State extends HoverState {\n+    /**\n+     * The blob data or error that happened.\n+     * undefined while loading.\n+     */\n+    blobOrError?: GQL.IGitBlob | ErrorLike\n+    target?: EventTarget\n+}\n+\n+const LinkComponent = (props: LinkProps) => <Link {...props} />\n+\n+const domFunctions = {\n+    getCodeElementFromTarget: (target: HTMLElement): HTMLTableCellElement | null => {\n+        // If the target is part of the blame annotation (a.blame or span.blame__contents), return null.\n+        if (\n+            target.classList.contains('blame') ||\n+            target.classList.contains('blame__contents') ||\n+            target.classList.contains('line-decoration-attachment') ||\n+            target.classList.contains('line-decoration-attachment__contents')\n+        ) {\n+            return null\n+        }\n+\n+        const row = target.closest('tr')\n+        if (!row) {\n+            return null\n+        }\n+\n+        return row.cells[1]\n+    },\n+    getCodeElementFromLineNumber: (codeView: HTMLElement, line: number): HTMLElement | null => {\n+        const lineNumberElement = codeView.querySelector(`td[data-line=\"${line}\"]`)\n+\n+        if (!lineNumberElement) {\n+            return null\n+        }\n+        return lineNumberElement.nextElementSibling as HTMLElement | null\n+    },\n+    getLineNumberFromCodeElement: (codeCell: HTMLElement): number => {\n+        const row = codeCell.closest('tr')\n+        if (!row) {\n+            throw new Error('Could not find closest row for codeCell')\n+        }\n+        const numberCell = row.cells[0]\n+        if (!numberCell || !numberCell.dataset.line) {\n+            throw new Error('Could not find line number')\n+        }\n+        return parseInt(numberCell.dataset.line, 10)\n+    },\n+}\n+\n+const REPO_PATH = 'github.com/gorilla/mux'\n+const COMMIT_ID = '9e1f5955c0d22b55d9e20d6faa28589f83b2faca'\n+const REV = ''\n+const FILE_PATH = 'mux.go'\n+\n+export class CodeIntellifyBlob extends React.Component<Props, State> {\n+    /** Emits whenever the ref callback for the code element is called */\n+    private codeViewElements = new Subject<HTMLElement | null>()\n+    private nextCodeViewElement = (element: HTMLElement | null) => this.codeViewElements.next(element)\n+\n+    /** Emits whenever the ref callback for the hover element is called */\n+    private hoverOverlayElements = new Subject<HTMLElement | null>()\n+    private nextOverlayElement = (element: HTMLElement | null) => this.hoverOverlayElements.next(element)\n+\n+    /** Emits whenever the ref callback for the hover element is called */\n+    private demoFileElements = new Subject<HTMLElement | null>()","path":"src/search/input/CodeIntellifyBlob.tsx","position":104,"original_position":159,"commit_id":"77e992f734c46383c06ab55a38d9916bd28df3b3","original_commit_id":"b46fda3de7b2d181f601f55e029a22fd3b923966","user":{"login":"francisschmaltz","id":11583013,"node_id":"MDQ6VXNlcjExNTgzMDEz","avatar_url":"https://avatars1.githubusercontent.com/u/11583013?v=4","gravatar_id":"","url":"https://api.github.com/users/francisschmaltz","html_url":"https://github.com/francisschmaltz","followers_url":"https://api.github.com/users/francisschmaltz/followers","following_url":"https://api.github.com/users/francisschmaltz/following{/other_user}","gists_url":"https://api.github.com/users/francisschmaltz/gists{/gist_id}","starred_url":"https://api.github.com/users/francisschmaltz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/francisschmaltz/subscriptions","organizations_url":"https://api.github.com/users/francisschmaltz/orgs","repos_url":"https://api.github.com/users/francisschmaltz/repos","events_url":"https://api.github.com/users/francisschmaltz/events{/privacy}","received_events_url":"https://api.github.com/users/francisschmaltz/received_events","type":"User","site_admin":false},"body":"@attfarhan can you take a look at this","created_at":"2018-10-04T03:02:55Z","updated_at":"2018-10-04T03:02:55Z","html_url":"https://github.com/sourcegraph/sourcegraph/pull/156#discussion_r222525417","pull_request_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/comments/222525417"},"html":{"href":"https://github.com/sourcegraph/sourcegraph/pull/156#discussion_r222525417"},"pull_request":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156"}},"in_reply_to_id":222362828},"pull_request":{"url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156","id":219272328,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE5MjcyMzI4","html_url":"https://github.com/sourcegraph/sourcegraph/pull/156","diff_url":"https://github.com/sourcegraph/sourcegraph/pull/156.diff","patch_url":"https://github.com/sourcegraph/sourcegraph/pull/156.patch","issue_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/156","number":156,"state":"open","locked":false,"title":"Combine marketing and product homepage","user":{"login":"slimsag","id":3173176,"node_id":"MDQ6VXNlcjMxNzMxNzY=","avatar_url":"https://avatars2.githubusercontent.com/u/3173176?v=4","gravatar_id":"","url":"https://api.github.com/users/slimsag","html_url":"https://github.com/slimsag","followers_url":"https://api.github.com/users/slimsag/followers","following_url":"https://api.github.com/users/slimsag/following{/other_user}","gists_url":"https://api.github.com/users/slimsag/gists{/gist_id}","starred_url":"https://api.github.com/users/slimsag/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slimsag/subscriptions","organizations_url":"https://api.github.com/users/slimsag/orgs","repos_url":"https://api.github.com/users/slimsag/repos","events_url":"https://api.github.com/users/slimsag/events{/privacy}","received_events_url":"https://api.github.com/users/slimsag/received_events","type":"User","site_admin":false},"body":" from sourcegraph/sourcegraph-intermediate-2018@0df1ccd\r\n\r\nfixes https://github.com/sourcegraph/enterprise/issues/13480\r\n\r\ncc @francisschmaltz this is your new branch :)\r\n\r\n<!-- delete the irrelevant line below -->\r\n\r\n> This PR updates the CHANGELOG.md file to describe any user-facing changes.\r\n> This PR does not need to update the CHANGELOG because ...\r\n","created_at":"2018-10-01T06:35:06Z","updated_at":"2018-10-04T03:02:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"34d3d762adde108a3c80bfad54aa0562eae9f231","assignee":{"login":"francisschmaltz","id":11583013,"node_id":"MDQ6VXNlcjExNTgzMDEz","avatar_url":"https://avatars1.githubusercontent.com/u/11583013?v=4","gravatar_id":"","url":"https://api.github.com/users/francisschmaltz","html_url":"https://github.com/francisschmaltz","followers_url":"https://api.github.com/users/francisschmaltz/followers","following_url":"https://api.github.com/users/francisschmaltz/following{/other_user}","gists_url":"https://api.github.com/users/francisschmaltz/gists{/gist_id}","starred_url":"https://api.github.com/users/francisschmaltz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/francisschmaltz/subscriptions","organizations_url":"https://api.github.com/users/francisschmaltz/orgs","repos_url":"https://api.github.com/users/francisschmaltz/repos","events_url":"https://api.github.com/users/francisschmaltz/events{/privacy}","received_events_url":"https://api.github.com/users/francisschmaltz/received_events","type":"User","site_admin":false},"assignees":[{"login":"francisschmaltz","id":11583013,"node_id":"MDQ6VXNlcjExNTgzMDEz","avatar_url":"https://avatars1.githubusercontent.com/u/11583013?v=4","gravatar_id":"","url":"https://api.github.com/users/francisschmaltz","html_url":"https://github.com/francisschmaltz","followers_url":"https://api.github.com/users/francisschmaltz/followers","following_url":"https://api.github.com/users/francisschmaltz/following{/other_user}","gists_url":"https://api.github.com/users/francisschmaltz/gists{/gist_id}","starred_url":"https://api.github.com/users/francisschmaltz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/francisschmaltz/subscriptions","organizations_url":"https://api.github.com/users/francisschmaltz/orgs","repos_url":"https://api.github.com/users/francisschmaltz/repos","events_url":"https://api.github.com/users/francisschmaltz/events{/privacy}","received_events_url":"https://api.github.com/users/francisschmaltz/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"sqs","id":1976,"node_id":"MDQ6VXNlcjE5NzY=","avatar_url":"https://avatars0.githubusercontent.com/u/1976?v=4","gravatar_id":"","url":"https://api.github.com/users/sqs","html_url":"https://github.com/sqs","followers_url":"https://api.github.com/users/sqs/followers","following_url":"https://api.github.com/users/sqs/following{/other_user}","gists_url":"https://api.github.com/users/sqs/gists{/gist_id}","starred_url":"https://api.github.com/users/sqs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sqs/subscriptions","organizations_url":"https://api.github.com/users/sqs/orgs","repos_url":"https://api.github.com/users/sqs/repos","events_url":"https://api.github.com/users/sqs/events{/privacy}","received_events_url":"https://api.github.com/users/sqs/received_events","type":"User","site_admin":false},{"login":"keegancsmith","id":187831,"node_id":"MDQ6VXNlcjE4NzgzMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/187831?v=4","gravatar_id":"","url":"https://api.github.com/users/keegancsmith","html_url":"https://github.com/keegancsmith","followers_url":"https://api.github.com/users/keegancsmith/followers","following_url":"https://api.github.com/users/keegancsmith/following{/other_user}","gists_url":"https://api.github.com/users/keegancsmith/gists{/gist_id}","starred_url":"https://api.github.com/users/keegancsmith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/keegancsmith/subscriptions","organizations_url":"https://api.github.com/users/keegancsmith/orgs","repos_url":"https://api.github.com/users/keegancsmith/repos","events_url":"https://api.github.com/users/keegancsmith/events{/privacy}","received_events_url":"https://api.github.com/users/keegancsmith/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156/commits","review_comments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156/comments","review_comment_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/comments{/number}","comments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/156/comments","statuses_url":"https://api.github.com/repos/sourcegraph/sourcegraph/statuses/77e992f734c46383c06ab55a38d9916bd28df3b3","head":{"label":"sourcegraph:fs/marketing-homepage","ref":"fs/marketing-homepage","sha":"77e992f734c46383c06ab55a38d9916bd28df3b3","user":{"login":"sourcegraph","id":3979584,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5Nzk1ODQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3979584?v=4","gravatar_id":"","url":"https://api.github.com/users/sourcegraph","html_url":"https://github.com/sourcegraph","followers_url":"https://api.github.com/users/sourcegraph/followers","following_url":"https://api.github.com/users/sourcegraph/following{/other_user}","gists_url":"https://api.github.com/users/sourcegraph/gists{/gist_id}","starred_url":"https://api.github.com/users/sourcegraph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sourcegraph/subscriptions","organizations_url":"https://api.github.com/users/sourcegraph/orgs","repos_url":"https://api.github.com/users/sourcegraph/repos","events_url":"https://api.github.com/users/sourcegraph/events{/privacy}","received_events_url":"https://api.github.com/users/sourcegraph/received_events","type":"Organization","site_admin":false},"repo":{"id":41288708,"node_id":"MDEwOlJlcG9zaXRvcnk0MTI4ODcwOA==","name":"sourcegraph","full_name":"sourcegraph/sourcegraph","private":false,"owner":{"login":"sourcegraph","id":3979584,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5Nzk1ODQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3979584?v=4","gravatar_id":"","url":"https://api.github.com/users/sourcegraph","html_url":"https://github.com/sourcegraph","followers_url":"https://api.github.com/users/sourcegraph/followers","following_url":"https://api.github.com/users/sourcegraph/following{/other_user}","gists_url":"https://api.github.com/users/sourcegraph/gists{/gist_id}","starred_url":"https://api.github.com/users/sourcegraph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sourcegraph/subscriptions","organizations_url":"https://api.github.com/users/sourcegraph/orgs","repos_url":"https://api.github.com/users/sourcegraph/repos","events_url":"https://api.github.com/users/sourcegraph/events{/privacy}","received_events_url":"https://api.github.com/users/sourcegraph/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/sourcegraph/sourcegraph","description":"Code search and intelligence, self-hosted and scalable","fork":false,"url":"https://api.github.com/repos/sourcegraph/sourcegraph","forks_url":"https://api.github.com/repos/sourcegraph/sourcegraph/forks","keys_url":"https://api.github.com/repos/sourcegraph/sourcegraph/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sourcegraph/sourcegraph/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sourcegraph/sourcegraph/teams","hooks_url":"https://api.github.com/repos/sourcegraph/sourcegraph/hooks","issue_events_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/events{/number}","events_url":"https://api.github.com/repos/sourcegraph/sourcegraph/events","assignees_url":"https://api.github.com/repos/sourcegraph/sourcegraph/assignees{/user}","branches_url":"https://api.github.com/repos/sourcegraph/sourcegraph/branches{/branch}","tags_url":"https://api.github.com/repos/sourcegraph/sourcegraph/tags","blobs_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/refs{/sha}","trees_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sourcegraph/sourcegraph/statuses/{sha}","languages_url":"https://api.github.com/repos/sourcegraph/sourcegraph/languages","stargazers_url":"https://api.github.com/repos/sourcegraph/sourcegraph/stargazers","contributors_url":"https://api.github.com/repos/sourcegraph/sourcegraph/contributors","subscribers_url":"https://api.github.com/repos/sourcegraph/sourcegraph/subscribers","subscription_url":"https://api.github.com/repos/sourcegraph/sourcegraph/subscription","commits_url":"https://api.github.com/repos/sourcegraph/sourcegraph/commits{/sha}","git_commits_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/commits{/sha}","comments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/comments{/number}","issue_comment_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/comments{/number}","contents_url":"https://api.github.com/repos/sourcegraph/sourcegraph/contents/{+path}","compare_url":"https://api.github.com/repos/sourcegraph/sourcegraph/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sourcegraph/sourcegraph/merges","archive_url":"https://api.github.com/repos/sourcegraph/sourcegraph/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sourcegraph/sourcegraph/downloads","issues_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues{/number}","pulls_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls{/number}","milestones_url":"https://api.github.com/repos/sourcegraph/sourcegraph/milestones{/number}","notifications_url":"https://api.github.com/repos/sourcegraph/sourcegraph/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sourcegraph/sourcegraph/labels{/name}","releases_url":"https://api.github.com/repos/sourcegraph/sourcegraph/releases{/id}","deployments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/deployments","created_at":"2015-08-24T07:27:28Z","updated_at":"2018-10-04T03:01:22Z","pushed_at":"2018-10-04T00:56:38Z","git_url":"git://github.com/sourcegraph/sourcegraph.git","ssh_url":"git@github.com:sourcegraph/sourcegraph.git","clone_url":"https://github.com/sourcegraph/sourcegraph.git","svn_url":"https://github.com/sourcegraph/sourcegraph","homepage":"https://sourcegraph.com","size":9624,"stargazers_count":2070,"watchers_count":2070,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":75,"mirror_url":null,"archived":false,"open_issues_count":144,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":75,"open_issues":144,"watchers":2070,"default_branch":"master"}},"base":{"label":"sourcegraph:master","ref":"master","sha":"b34cd75778949f2ecff76955575cd87430d349a6","user":{"login":"sourcegraph","id":3979584,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5Nzk1ODQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3979584?v=4","gravatar_id":"","url":"https://api.github.com/users/sourcegraph","html_url":"https://github.com/sourcegraph","followers_url":"https://api.github.com/users/sourcegraph/followers","following_url":"https://api.github.com/users/sourcegraph/following{/other_user}","gists_url":"https://api.github.com/users/sourcegraph/gists{/gist_id}","starred_url":"https://api.github.com/users/sourcegraph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sourcegraph/subscriptions","organizations_url":"https://api.github.com/users/sourcegraph/orgs","repos_url":"https://api.github.com/users/sourcegraph/repos","events_url":"https://api.github.com/users/sourcegraph/events{/privacy}","received_events_url":"https://api.github.com/users/sourcegraph/received_events","type":"Organization","site_admin":false},"repo":{"id":41288708,"node_id":"MDEwOlJlcG9zaXRvcnk0MTI4ODcwOA==","name":"sourcegraph","full_name":"sourcegraph/sourcegraph","private":false,"owner":{"login":"sourcegraph","id":3979584,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5Nzk1ODQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3979584?v=4","gravatar_id":"","url":"https://api.github.com/users/sourcegraph","html_url":"https://github.com/sourcegraph","followers_url":"https://api.github.com/users/sourcegraph/followers","following_url":"https://api.github.com/users/sourcegraph/following{/other_user}","gists_url":"https://api.github.com/users/sourcegraph/gists{/gist_id}","starred_url":"https://api.github.com/users/sourcegraph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sourcegraph/subscriptions","organizations_url":"https://api.github.com/users/sourcegraph/orgs","repos_url":"https://api.github.com/users/sourcegraph/repos","events_url":"https://api.github.com/users/sourcegraph/events{/privacy}","received_events_url":"https://api.github.com/users/sourcegraph/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/sourcegraph/sourcegraph","description":"Code search and intelligence, self-hosted and scalable","fork":false,"url":"https://api.github.com/repos/sourcegraph/sourcegraph","forks_url":"https://api.github.com/repos/sourcegraph/sourcegraph/forks","keys_url":"https://api.github.com/repos/sourcegraph/sourcegraph/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sourcegraph/sourcegraph/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sourcegraph/sourcegraph/teams","hooks_url":"https://api.github.com/repos/sourcegraph/sourcegraph/hooks","issue_events_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/events{/number}","events_url":"https://api.github.com/repos/sourcegraph/sourcegraph/events","assignees_url":"https://api.github.com/repos/sourcegraph/sourcegraph/assignees{/user}","branches_url":"https://api.github.com/repos/sourcegraph/sourcegraph/branches{/branch}","tags_url":"https://api.github.com/repos/sourcegraph/sourcegraph/tags","blobs_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/refs{/sha}","trees_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sourcegraph/sourcegraph/statuses/{sha}","languages_url":"https://api.github.com/repos/sourcegraph/sourcegraph/languages","stargazers_url":"https://api.github.com/repos/sourcegraph/sourcegraph/stargazers","contributors_url":"https://api.github.com/repos/sourcegraph/sourcegraph/contributors","subscribers_url":"https://api.github.com/repos/sourcegraph/sourcegraph/subscribers","subscription_url":"https://api.github.com/repos/sourcegraph/sourcegraph/subscription","commits_url":"https://api.github.com/repos/sourcegraph/sourcegraph/commits{/sha}","git_commits_url":"https://api.github.com/repos/sourcegraph/sourcegraph/git/commits{/sha}","comments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/comments{/number}","issue_comment_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/comments{/number}","contents_url":"https://api.github.com/repos/sourcegraph/sourcegraph/contents/{+path}","compare_url":"https://api.github.com/repos/sourcegraph/sourcegraph/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sourcegraph/sourcegraph/merges","archive_url":"https://api.github.com/repos/sourcegraph/sourcegraph/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sourcegraph/sourcegraph/downloads","issues_url":"https://api.github.com/repos/sourcegraph/sourcegraph/issues{/number}","pulls_url":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls{/number}","milestones_url":"https://api.github.com/repos/sourcegraph/sourcegraph/milestones{/number}","notifications_url":"https://api.github.com/repos/sourcegraph/sourcegraph/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sourcegraph/sourcegraph/labels{/name}","releases_url":"https://api.github.com/repos/sourcegraph/sourcegraph/releases{/id}","deployments_url":"https://api.github.com/repos/sourcegraph/sourcegraph/deployments","created_at":"2015-08-24T07:27:28Z","updated_at":"2018-10-04T03:01:22Z","pushed_at":"2018-10-04T00:56:38Z","git_url":"git://github.com/sourcegraph/sourcegraph.git","ssh_url":"git@github.com:sourcegraph/sourcegraph.git","clone_url":"https://github.com/sourcegraph/sourcegraph.git","svn_url":"https://github.com/sourcegraph/sourcegraph","homepage":"https://sourcegraph.com","size":9624,"stargazers_count":2070,"watchers_count":2070,"language":"Go","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":75,"mirror_url":null,"archived":false,"open_issues_count":144,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":75,"open_issues":144,"watchers":2070,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156"},"html":{"href":"https://github.com/sourcegraph/sourcegraph/pull/156"},"issue":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/156"},"comments":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/issues/156/comments"},"review_comments":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156/comments"},"review_comment":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/pulls/156/commits"},"statuses":{"href":"https://api.github.com/repos/sourcegraph/sourcegraph/statuses/77e992f734c46383c06ab55a38d9916bd28df3b3"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"francisschmaltz"}}