{"action":"created","comment":{"url":"https://api.github.com/repos/gitcoinco/web/pulls/comments/219846452","pull_request_review_id":158116874,"id":219846452,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxOTg0NjQ1Mg==","diff_hunk":"@@ -88,57 +76,190 @@ def setUp(self):\n             idx_status='submitted',\n             current_bounty=True,\n             network='mainnet',\n+            metadata={ \"issueKeywords\": \"Python, Shell\" },\n+        )\n+        self.fulfiller_profile = Profile.objects.create(\n+            data={},\n+            handle=self.bounty_earner_handle,\n+            hide_profile=False,\n         )\n         BountyFulfillment.objects.create(\n             fulfiller_address='0x0000000000000000000000000000000000000000',\n-            fulfiller_email='',\n-            fulfiller_github_username='fred',\n-            fulfiller_name='Fred',\n-            bounty=bounty,\n-            profile=fulfiller_profile,\n+            fulfiller_github_username=self.bounty_earner_handle,\n+            bounty=self.bounty,\n+            accepted=True,\n+            profile=self.fulfiller_profile,\n+        )\n+\n+        self.tip_value=7\n+        self.tip_payer_handle='johnny'\n+        self.tip_earner_handle='john'\n+\n+        self.tip_username_profile = Profile.objects.create(\n+            data={},\n+            handle=self.tip_earner_handle,\n+            hide_profile=False,\n+        )\n+        self.tip_from_username_profile = Profile.objects.create(\n+            data={},\n+            handle=self.tip_payer_handle,\n+            hide_profile=False,\n+        )\n+        UserAction.objects.create(\n+            profile=self.tip_from_username_profile,\n+            action='Login',\n+            ip_address='24.210.224.38',\n+        )\n+        UserAction.objects.create(\n+            profile=self.tip_from_username_profile,\n+            action='Login',\n+            ip_address='185.86.151.11',\n+        )\n+        self.tip = Tip.objects.create(\n+            emails=['john@bar.com'],\n+            tokenName='USDT',\n+            amount=self.tip_value,\n+            username=self.tip_earner_handle,\n+            from_username=self.tip_payer_handle,\n+            github_url='https://github.com/gitcoinco/web',\n+            network='mainnet',\n+            expires_date=datetime.now(UTC) + timedelta(days=1),\n+            tokenAddress='0x0000000000000000000000000000000000000000',\n+            txid='123',\n         )\n \n-        self.bounty = bounty\n-        self.tip = tip\n-\n-    def test_sum_tips(self):\n-        \"\"\"Test sum tips of assemble leaderboards.\"\"\"\n-        total = 7\n-        user = 'john'\n-        rank_types = [\n-            'all_fulfilled', 'all_earners', 'weekly_fulfilled',\n-            'weekly_earners', 'weekly_all', 'monthly_fulfilled',\n-            'monthly_earners', 'monthly_all', 'yearly_fulfilled',\n-            'yearly_earners', 'yearly_all',\n+\n+    def test_default_ranks(self):\n+        \"\"\"Test default ranks dictionary.\"\"\"\n+        ranks = default_ranks()\n+\n+        assert len(ranks) == len(TIMES) * len(BREAKDOWNS)\n+\n+\n+    def test_bounty_index_terms(self):\n+        \"\"\"Test bounty index terms list.\"\"\"\n+\n+        index_terms = bounty_index_terms(self.bounty)\n+\n+        assert len(index_terms) == 12\n+        assert 'USDT' in index_terms\n+        assert set([self.bounty_payer_handle, self.bounty_earner_handle, 'gitcoinco']).issubset(set(index_terms))\n+        assert set(['London', 'Cuyahoga Falls', 'Europe', 'North America', 'United Kingdom', 'United States']).issubset(set(index_terms))\n+        assert set(['python', 'shell']).issubset(set(index_terms))\n+\n+\n+    def test_tip_index_terms(self):\n+        \"\"\"Test tip index terms list.\"\"\"\n+\n+        index_terms = tip_index_terms(self.tip)\n+\n+        assert len(index_terms) == 10\n+        assert 'USDT' in index_terms\n+        assert set([self.tip_payer_handle, self.tip_earner_handle, 'gitcoinco']).issubset(set(index_terms))\n+        assert set(['London', 'Cuyahoga Falls', 'Europe', 'North America', 'United Kingdom', 'United States']).issubset(set(index_terms))\n+\n+\n+    def test_sum_bounties_payer(self):","path":"app/marketing/tests/management/commands/test_assemble_leaderboards.py","position":195,"original_position":195,"commit_id":"18b83e5353b87f492837c602901d97366661f0ba","original_commit_id":"18b83e5353b87f492837c602901d97366661f0ba","user":{"login":"stickler-ci","id":16011037,"node_id":"MDQ6VXNlcjE2MDExMDM3","avatar_url":"https://avatars3.githubusercontent.com/u/16011037?v=4","gravatar_id":"","url":"https://api.github.com/users/stickler-ci","html_url":"https://github.com/stickler-ci","followers_url":"https://api.github.com/users/stickler-ci/followers","following_url":"https://api.github.com/users/stickler-ci/following{/other_user}","gists_url":"https://api.github.com/users/stickler-ci/gists{/gist_id}","starred_url":"https://api.github.com/users/stickler-ci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stickler-ci/subscriptions","organizations_url":"https://api.github.com/users/stickler-ci/orgs","repos_url":"https://api.github.com/users/stickler-ci/repos","events_url":"https://api.github.com/users/stickler-ci/events{/privacy}","received_events_url":"https://api.github.com/users/stickler-ci/received_events","type":"User","site_admin":false},"body":"E303 too many blank lines (2)","created_at":"2018-09-24T14:01:10Z","updated_at":"2018-09-24T14:01:14Z","html_url":"https://github.com/gitcoinco/web/pull/2268#discussion_r219846452","pull_request_url":"https://api.github.com/repos/gitcoinco/web/pulls/2268","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/comments/219846452"},"html":{"href":"https://github.com/gitcoinco/web/pull/2268#discussion_r219846452"},"pull_request":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/2268"}}},"pull_request":{"url":"https://api.github.com/repos/gitcoinco/web/pulls/2268","id":217666902,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE3NjY2OTAy","html_url":"https://github.com/gitcoinco/web/pull/2268","diff_url":"https://github.com/gitcoinco/web/pull/2268.diff","patch_url":"https://github.com/gitcoinco/web/pull/2268.patch","issue_url":"https://api.github.com/repos/gitcoinco/web/issues/2268","number":2268,"state":"open","locked":false,"title":"Timborden/location leaderboards","user":{"login":"timborden","id":422542,"node_id":"MDQ6VXNlcjQyMjU0Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/422542?v=4","gravatar_id":"","url":"https://api.github.com/users/timborden","html_url":"https://github.com/timborden","followers_url":"https://api.github.com/users/timborden/followers","following_url":"https://api.github.com/users/timborden/following{/other_user}","gists_url":"https://api.github.com/users/timborden/gists{/gist_id}","starred_url":"https://api.github.com/users/timborden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timborden/subscriptions","organizations_url":"https://api.github.com/users/timborden/orgs","repos_url":"https://api.github.com/users/timborden/repos","events_url":"https://api.github.com/users/timborden/events{/privacy}","received_events_url":"https://api.github.com/users/timborden/received_events","type":"User","site_admin":false},"body":"<!--\r\n  Thank you for your pull request. Please provide a description above and review\r\n  the requirements below.\r\n\r\n  Contributors guide: https://github.com/gitcoinco/web/blob/contributing/CONTRIBUTING.md\r\n-->\r\n\r\n##### Description\r\nThis PR picks up from where `github.com/gitcoinco/web:kevin/location_leaderboards` left off. It updates the unit tests for the `assemble_leaderboards` command and provides 91% coverage:\r\n\r\n<img width=\"758\" alt=\"screen shot 2018-09-24 at 14 32 40\" src=\"https://user-images.githubusercontent.com/422542/45955053-d2933680-c006-11e8-99a8-9795b83f4ffb.png\">\r\n\r\nIt also aims to update the geoIP lookup/store to reduce latency.\r\n\r\n##### Outstanding questions/comments for maintainers (cc: @owocki & @mbeacom)\r\n\r\n- Is there a way to populate the local database with _Tips_ data? ...`sync_geth` populated the _Bounties_ table and I was able to test the results in the browser, but wasn't able to test _Tips_ in the browser\r\n- Is there an environment variable for the network? ...the `assemble_leaderboards` command/script has `mainnet` hard coded ( [here](https://github.com/timborden/web/blob/18b83e5353b87f492837c602901d97366661f0ba/app/marketing/management/commands/assemble_leaderboards.py#L263) and [here](https://github.com/timborden/web/blob/18b83e5353b87f492837c602901d97366661f0ba/app/marketing/management/commands/assemble_leaderboards.py#L274) ). Wondering if we'd want to pass that into both the script and tests (if not, likely out of scope for this issue, but something worth considering)\r\n- There are a couple options for making the location lookup more performant. By treating the `UserAction.location_data` as the source of truth, if it's null we can query the geoIP and update the `location_data` in the database for either the one `UserAction` row ( [here](https://github.com/timborden/web/blob/18b83e5353b87f492837c602901d97366661f0ba/app/dashboard/models.py#L2239-L2240) ) or all `UserAction` rows with the same `ip_address` ( [here](https://github.com/timborden/web/blob/18b83e5353b87f492837c602901d97366661f0ba/app/dashboard/models.py#L2241-L2242) ). The later could overwrite data we don't want overwritten, so the former is probably better....but if the former is still not performant enough, then the later could be updated to be more restrictive.\r\n- There is a conditional that seemed off ( [here](https://github.com/timborden/web/blob/18b83e5353b87f492837c602901d97366661f0ba/app/marketing/management/commands/assemble_leaderboards.py#L215-L216) ) which makes the `all_earners` pretty greedy for Tips. Is this the desired behaviour?\r\n```\r\n    \"all_earners\": {\r\n        \"freddy\": 3.0,\r\n        \"john\": 7.0,\r\n        \"johnny\": 7.0,\r\n        \"gitcoinco\": 7.0,\r\n        \"USDT\": 7.0,\r\n        \"United Kingdom\": 7.0,\r\n        \"United States\": 7.0,\r\n        \"London\": 7.0,\r\n        \"Cuyahoga Falls\": 7.0,\r\n        \"North America\": 7.0,\r\n        \"Europe\": 7.0\r\n    },\r\n```\r\n\r\n\r\n##### Checklist\r\n\r\n<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->\r\n\r\n- [ ] linter status: 100% pass\r\n(Got this `ERROR: /Users/timborden/Code/oss/web/app/dashboard/apps.py File contains syntax errors.` in a file I didn't edit. Inspected the file and there doesn't seem to be an issue. Thoughts?)\r\n- [ ] changes don't break existing behavior\r\n- [ ] commit message follows [commit guidelines](https://github.com/gitcoinco/web/blob/master/docs/CONTRIBUTING.md#step-4-commit)\r\n(Open to feedback here, please let me know)\r\n\r\n##### Affected core subsystem(s)\r\n\r\nN/A\r\n\r\n##### Testing\r\n\r\nUnit tests passing\r\n\r\n##### Refers/Fixes\r\n\r\nFixes: https://github.com/gitcoinco/web/issues/2213\r\nForks: https://github.com/gitcoinco/web/pull/2091\r\n\r\n","created_at":"2018-09-24T14:00:54Z","updated_at":"2018-09-24T14:01:13Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a87a456b7f2c1ff4740581a9ed652609fb4b5bc9","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/gitcoinco/web/pulls/2268/commits","review_comments_url":"https://api.github.com/repos/gitcoinco/web/pulls/2268/comments","review_comment_url":"https://api.github.com/repos/gitcoinco/web/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gitcoinco/web/issues/2268/comments","statuses_url":"https://api.github.com/repos/gitcoinco/web/statuses/18b83e5353b87f492837c602901d97366661f0ba","head":{"label":"timborden:timborden/location_leaderboards","ref":"timborden/location_leaderboards","sha":"18b83e5353b87f492837c602901d97366661f0ba","user":{"login":"timborden","id":422542,"node_id":"MDQ6VXNlcjQyMjU0Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/422542?v=4","gravatar_id":"","url":"https://api.github.com/users/timborden","html_url":"https://github.com/timborden","followers_url":"https://api.github.com/users/timborden/followers","following_url":"https://api.github.com/users/timborden/following{/other_user}","gists_url":"https://api.github.com/users/timborden/gists{/gist_id}","starred_url":"https://api.github.com/users/timborden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timborden/subscriptions","organizations_url":"https://api.github.com/users/timborden/orgs","repos_url":"https://api.github.com/users/timborden/repos","events_url":"https://api.github.com/users/timborden/events{/privacy}","received_events_url":"https://api.github.com/users/timborden/received_events","type":"User","site_admin":false},"repo":{"id":149586547,"node_id":"MDEwOlJlcG9zaXRvcnkxNDk1ODY1NDc=","name":"web","full_name":"timborden/web","private":false,"owner":{"login":"timborden","id":422542,"node_id":"MDQ6VXNlcjQyMjU0Mg==","avatar_url":"https://avatars3.githubusercontent.com/u/422542?v=4","gravatar_id":"","url":"https://api.github.com/users/timborden","html_url":"https://github.com/timborden","followers_url":"https://api.github.com/users/timborden/followers","following_url":"https://api.github.com/users/timborden/following{/other_user}","gists_url":"https://api.github.com/users/timborden/gists{/gist_id}","starred_url":"https://api.github.com/users/timborden/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timborden/subscriptions","organizations_url":"https://api.github.com/users/timborden/orgs","repos_url":"https://api.github.com/users/timborden/repos","events_url":"https://api.github.com/users/timborden/events{/privacy}","received_events_url":"https://api.github.com/users/timborden/received_events","type":"User","site_admin":false},"html_url":"https://github.com/timborden/web","description":"Grow Open Source","fork":true,"url":"https://api.github.com/repos/timborden/web","forks_url":"https://api.github.com/repos/timborden/web/forks","keys_url":"https://api.github.com/repos/timborden/web/keys{/key_id}","collaborators_url":"https://api.github.com/repos/timborden/web/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/timborden/web/teams","hooks_url":"https://api.github.com/repos/timborden/web/hooks","issue_events_url":"https://api.github.com/repos/timborden/web/issues/events{/number}","events_url":"https://api.github.com/repos/timborden/web/events","assignees_url":"https://api.github.com/repos/timborden/web/assignees{/user}","branches_url":"https://api.github.com/repos/timborden/web/branches{/branch}","tags_url":"https://api.github.com/repos/timborden/web/tags","blobs_url":"https://api.github.com/repos/timborden/web/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/timborden/web/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/timborden/web/git/refs{/sha}","trees_url":"https://api.github.com/repos/timborden/web/git/trees{/sha}","statuses_url":"https://api.github.com/repos/timborden/web/statuses/{sha}","languages_url":"https://api.github.com/repos/timborden/web/languages","stargazers_url":"https://api.github.com/repos/timborden/web/stargazers","contributors_url":"https://api.github.com/repos/timborden/web/contributors","subscribers_url":"https://api.github.com/repos/timborden/web/subscribers","subscription_url":"https://api.github.com/repos/timborden/web/subscription","commits_url":"https://api.github.com/repos/timborden/web/commits{/sha}","git_commits_url":"https://api.github.com/repos/timborden/web/git/commits{/sha}","comments_url":"https://api.github.com/repos/timborden/web/comments{/number}","issue_comment_url":"https://api.github.com/repos/timborden/web/issues/comments{/number}","contents_url":"https://api.github.com/repos/timborden/web/contents/{+path}","compare_url":"https://api.github.com/repos/timborden/web/compare/{base}...{head}","merges_url":"https://api.github.com/repos/timborden/web/merges","archive_url":"https://api.github.com/repos/timborden/web/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/timborden/web/downloads","issues_url":"https://api.github.com/repos/timborden/web/issues{/number}","pulls_url":"https://api.github.com/repos/timborden/web/pulls{/number}","milestones_url":"https://api.github.com/repos/timborden/web/milestones{/number}","notifications_url":"https://api.github.com/repos/timborden/web/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/timborden/web/labels{/name}","releases_url":"https://api.github.com/repos/timborden/web/releases{/id}","deployments_url":"https://api.github.com/repos/timborden/web/deployments","created_at":"2018-09-20T09:40:17Z","updated_at":"2018-09-20T09:40:22Z","pushed_at":"2018-09-24T13:27:41Z","git_url":"git://github.com/timborden/web.git","ssh_url":"git@github.com:timborden/web.git","clone_url":"https://github.com/timborden/web.git","svn_url":"https://github.com/timborden/web","homepage":"https://gitcoin.co","size":275956,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"agpl-3.0","name":"GNU Affero General Public License v3.0","spdx_id":"AGPL-3.0","url":"https://api.github.com/licenses/agpl-3.0","node_id":"MDc6TGljZW5zZTE="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"gitcoinco:master","ref":"master","sha":"877d0c0c780f1d8dcbd560dab38ce54ea39b5056","user":{"login":"gitcoinco","id":30044474,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMDQ0NDc0","avatar_url":"https://avatars1.githubusercontent.com/u/30044474?v=4","gravatar_id":"","url":"https://api.github.com/users/gitcoinco","html_url":"https://github.com/gitcoinco","followers_url":"https://api.github.com/users/gitcoinco/followers","following_url":"https://api.github.com/users/gitcoinco/following{/other_user}","gists_url":"https://api.github.com/users/gitcoinco/gists{/gist_id}","starred_url":"https://api.github.com/users/gitcoinco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gitcoinco/subscriptions","organizations_url":"https://api.github.com/users/gitcoinco/orgs","repos_url":"https://api.github.com/users/gitcoinco/repos","events_url":"https://api.github.com/users/gitcoinco/events{/privacy}","received_events_url":"https://api.github.com/users/gitcoinco/received_events","type":"Organization","site_admin":false},"repo":{"id":96767206,"node_id":"MDEwOlJlcG9zaXRvcnk5Njc2NzIwNg==","name":"web","full_name":"gitcoinco/web","private":false,"owner":{"login":"gitcoinco","id":30044474,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMDQ0NDc0","avatar_url":"https://avatars1.githubusercontent.com/u/30044474?v=4","gravatar_id":"","url":"https://api.github.com/users/gitcoinco","html_url":"https://github.com/gitcoinco","followers_url":"https://api.github.com/users/gitcoinco/followers","following_url":"https://api.github.com/users/gitcoinco/following{/other_user}","gists_url":"https://api.github.com/users/gitcoinco/gists{/gist_id}","starred_url":"https://api.github.com/users/gitcoinco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gitcoinco/subscriptions","organizations_url":"https://api.github.com/users/gitcoinco/orgs","repos_url":"https://api.github.com/users/gitcoinco/repos","events_url":"https://api.github.com/users/gitcoinco/events{/privacy}","received_events_url":"https://api.github.com/users/gitcoinco/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/gitcoinco/web","description":"Grow Open Source","fork":false,"url":"https://api.github.com/repos/gitcoinco/web","forks_url":"https://api.github.com/repos/gitcoinco/web/forks","keys_url":"https://api.github.com/repos/gitcoinco/web/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gitcoinco/web/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gitcoinco/web/teams","hooks_url":"https://api.github.com/repos/gitcoinco/web/hooks","issue_events_url":"https://api.github.com/repos/gitcoinco/web/issues/events{/number}","events_url":"https://api.github.com/repos/gitcoinco/web/events","assignees_url":"https://api.github.com/repos/gitcoinco/web/assignees{/user}","branches_url":"https://api.github.com/repos/gitcoinco/web/branches{/branch}","tags_url":"https://api.github.com/repos/gitcoinco/web/tags","blobs_url":"https://api.github.com/repos/gitcoinco/web/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gitcoinco/web/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gitcoinco/web/git/refs{/sha}","trees_url":"https://api.github.com/repos/gitcoinco/web/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gitcoinco/web/statuses/{sha}","languages_url":"https://api.github.com/repos/gitcoinco/web/languages","stargazers_url":"https://api.github.com/repos/gitcoinco/web/stargazers","contributors_url":"https://api.github.com/repos/gitcoinco/web/contributors","subscribers_url":"https://api.github.com/repos/gitcoinco/web/subscribers","subscription_url":"https://api.github.com/repos/gitcoinco/web/subscription","commits_url":"https://api.github.com/repos/gitcoinco/web/commits{/sha}","git_commits_url":"https://api.github.com/repos/gitcoinco/web/git/commits{/sha}","comments_url":"https://api.github.com/repos/gitcoinco/web/comments{/number}","issue_comment_url":"https://api.github.com/repos/gitcoinco/web/issues/comments{/number}","contents_url":"https://api.github.com/repos/gitcoinco/web/contents/{+path}","compare_url":"https://api.github.com/repos/gitcoinco/web/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gitcoinco/web/merges","archive_url":"https://api.github.com/repos/gitcoinco/web/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gitcoinco/web/downloads","issues_url":"https://api.github.com/repos/gitcoinco/web/issues{/number}","pulls_url":"https://api.github.com/repos/gitcoinco/web/pulls{/number}","milestones_url":"https://api.github.com/repos/gitcoinco/web/milestones{/number}","notifications_url":"https://api.github.com/repos/gitcoinco/web/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gitcoinco/web/labels{/name}","releases_url":"https://api.github.com/repos/gitcoinco/web/releases{/id}","deployments_url":"https://api.github.com/repos/gitcoinco/web/deployments","created_at":"2017-07-10T10:53:45Z","updated_at":"2018-09-24T13:56:44Z","pushed_at":"2018-09-24T14:00:55Z","git_url":"git://github.com/gitcoinco/web.git","ssh_url":"git@github.com:gitcoinco/web.git","clone_url":"https://github.com/gitcoinco/web.git","svn_url":"https://github.com/gitcoinco/web","homepage":"https://gitcoin.co","size":276000,"stargazers_count":444,"watchers_count":444,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":254,"mirror_url":null,"archived":false,"open_issues_count":551,"license":{"key":"agpl-3.0","name":"GNU Affero General Public License v3.0","spdx_id":"AGPL-3.0","url":"https://api.github.com/licenses/agpl-3.0","node_id":"MDc6TGljZW5zZTE="},"forks":254,"open_issues":551,"watchers":444,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/2268"},"html":{"href":"https://github.com/gitcoinco/web/pull/2268"},"issue":{"href":"https://api.github.com/repos/gitcoinco/web/issues/2268"},"comments":{"href":"https://api.github.com/repos/gitcoinco/web/issues/2268/comments"},"review_comments":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/2268/comments"},"review_comment":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gitcoinco/web/pulls/2268/commits"},"statuses":{"href":"https://api.github.com/repos/gitcoinco/web/statuses/18b83e5353b87f492837c602901d97366661f0ba"}},"author_association":"NONE"}}
{"actor":{"display_login":"stickler-ci"}}